.:=.data base.: &0140 level.: 0171 addint.: 0163 single.: 0171 icw4.: 0156 fulnst.: 0156 buffed.: 0156 ms.: 0155 aeoi.: 0156 jtable.: 0 .:=.[0177] addr.: &0 .:=.text main.: call c.ent call intint. jmp c.ret intint.: call c.ent hl=0177764+sp->sp call jumploc. hl=&0177770+de sp<=hl hl=addr. a=l&0340->l=h&0->h bc<=sp a=l->*bc=h->*(bc+1) a=icw4.::0171 jnz .1 hl=&0177770+de a=*hl|0401->*hl=*(hl+1)|0->*hl .1: /41 a=single.::0171 jnz .3 hl=&0177770+de a=*hl|02->*hl=*(hl+1)|0->*hl .3: /44 a=addint.::0163 jnz .5 hl=&0177770+de a=*hl|04->*hl=*(hl+1)|0->*hl .5: /47 a=level.::0171 jnz .7 hl=&0177770+de a=*hl|010->*hl=*(hl+1)|0->*hl .7: /50 hl=&0177770+de a=*hl|020->*hl=*(hl+1)|0->*hl hl=&0177766+de sp<=hl hl=addr. sp<=hl hl=&010=>sp call c.ursh hl<=sp bc<=sp a=l->*bc=h->*(bc+1) hl=&0177770+de bc=^hl=>sp hl=base. hl+1+1+1+1 sp<=hl call out. af<=sp<=sp hl=&0177766+de bc=^hl=>sp hl=base. hl+(bc=&05) sp<=hl call out. af<=sp<=sp hl=&0177764+de a=0377->*hl=0->*(hl+1) hl=&0177764+de bc=^hl=>sp hl=base. hl+(bc=&05) sp<=hl call out. af<=sp<=sp jmp c.ret int1.: call c.ent jmp c.ret int2.: call c.ent jmp c.ret int3.: call c.ent jmp c.ret int4.: call c.ent jmp c.ret int5.: call c.ent jmp c.ret int6.: call c.ent jmp c.ret int7.: call c.ent jmp c.ret int8.: call c.ent jmp c.ret .14: 0150,0151,0147,0150,040,0141,0144,0144 0162,075,045,0150,012,0 .73: 0154,0157,0167,040,0141,0144,0144,0162 075,045,0150,040,0 .53: 0152,0165,0155,0160,075,045,0150,040 0 public putfmt. public int8. public int7. public int6. public int5. public int4. public int3. public int2. public int1. public out. public jumploc. public intint. public main. public addr. public jtable. public aeoi. public ms. public buffed. public fulnst. public icw4. public single. public addint. public level. public base. public stdout. jumploc.: call c.ent hl=0177746+sp->sp hl=&0177750+de bc=&int1. a=c->*hl=b->*(hl+1) hl=&0177752+de bc=&int2. a=c->*hl=b->*(hl+1) hl=&0177754+de bc=&int3. a=c->*hl=b->*(hl+1) hl=&0177756+de bc=&int4. a=c->*hl=b->*(hl+1) hl=&0177760+de bc=&int5. a=c->*hl=b->*(hl+1) hl=&0177762+de bc=&int6. a=c->*hl=b->*(hl+1) hl=&0177764+de bc=&int7. a=c->*hl=b->*(hl+1) hl=&0177766+de bc=&int8. a=c->*hl=b->*(hl+1) hl=&jtable. a=l&077->l=h&0->h hl->addr. a=addr.::040 jnz .2=addr.[01]::0 .2: jnz .11 hl=&jtable. hl->addr. jmp .31 .11: /135 hl=&jtable. a=l&0340->l=h&0377->h hl+(bc=&040) hl->addr. .31: / 136 hl=&0177770+de a=0->*hl+a-^a->*(hl+1) .51: / 138 hl=&0177770+de a=*hl-010=*(hl+1)-^0 jp .71 hl=&0177746+de sp<=hl hl=&0177770+de hl=a^hl hl+hl+hl sp<=hl hl=addr. hl<>*sp;bc<=sp hl+bc bc<=sp a=l->*bc=h->*(bc+1) hl=&0177746+de hl=a^hl *hl=0303 hl=&0177746+de hl=a^hl hl+1 sp<=hl hl=&0177770+de hl=a^hl hl+hl sp<=hl hl=&0177750+de hl<>*sp;bc<=sp hl+bc hl=a^hl a=l&0377->l=h&0->h bc<=sp a=l->*bc hl=&0177746+de hl=a^hl hl+1+1 sp<=hl hl=&0177770+de hl=a^hl hl+hl sp<=hl hl=&0177750+de hl<>*sp;bc<=sp hl+bc bc=^hl=>sp hl=&010=>sp call c.irsh hl<=sp bc<=sp a=l->*bc hl=&0177770+de a=*hl+0401->*hl=*(hl+1)+^0->*hl jmp .51 .71: /144 hl=&0177770+de a=0->*hl+a-^a->*(hl+1) .52: / 145 hl=&0177770+de a=*hl-010=*(hl+1)-^0 jp .72 hl=&0177770+de hl=a^hl hl+hl+hl sp<=hl hl=addr. hl<>*sp;bc<=sp hl+bc a=*hl->c-a->b sp<=bc hl=&.53 sp<=hl call putfmt. af<=sp<=sp hl=&0177770+de hl=a^hl hl+hl+hl hl+1 sp<=hl hl=addr. hl<>*sp;bc<=sp hl+bc a=*hl->c-a->b sp<=bc hl=&.73 sp<=hl call putfmt. af<=sp<=sp hl=&0177770+de hl=a^hl hl+hl+hl hl+1+1 sp<=hl hl=addr. hl<>*sp;bc<=sp hl+bc a=*hl->c-a->b sp<=bc hl=&.14 sp<=hl call putfmt. af<=sp<=sp hl=&0177770+de a=*hl+0401->*hl=*(hl+1)+^0->*hl jmp .52 .72: /150 jmp c.ret