" as jms init1 assm1: lac eofflg sza jmp assm2 lac passno sza jmp finis jms init2 assm2: jms gchar sad d4 jmp assm1 sad d5 jmp assm1 lac char dac savchr jms gpair lac rator jms betwen; d1; d6 jmp assm3 jms expr lac passno sza jms process isz dot+1 nop lac dot+1 and o17777 sad dot+1 jmp assm1 jms error; >> dzm dot+1 jmp assm1 assm3: lac rand sad d2 jmp assm4 sza jmp assm6 lac rator sza jmp assm6 lac rand+1 jms betwen; dm1; d10 jmp assm6 dac name tad fbxp dac lvrand lac i lvrand dac name+1 isz i lvrand lac o146 dac name+2 dzm name+3 jms tlookup -1 dac fbflg assm4: lac rand+1 tad d4 dac lvrand lac rator sza jmp assm5 lac dot dac r lac dot+1 dac r+1 jmp 1f assm5: jms gpair jms expr 1: lac r dac i lvrand isz lvrand lac r+1 dac i lvrand lac fbflg sna jmp assm1 dzm fbflg dzm name+1 lac o142 dac name+2 jms lookup jmp assm4 assm6: jms error; x> jmp assm1 init1: 0 lac d1 sys write; 1f; 2f-1f dzm passno lac o56040 dac dot-4 lac o56056 dac cmflx-4 lac o40040 dac dot-3 dac dot-2 dac dot-1 dac cmflx-3 dac cmflx-2 dac cmflx-1 dzm iof jms init jmp i init1 1: 0111012 2: init2: 0 lac d1 dac passno sys write; 1f; 2f-1f jms init lac o17 sys creat; 2f dac bfo sys open; 2f; 0 dac bfi dzm bufadd jms copyz; buf; 64 jmp i init2 1: 0111111;012000 2: 0141056;0157165;0164040;040040 init: 0 lac i 017777 dac narg lac 017777 tad d1 dac fname -1 dac eofflg jms nextfil jms ioinit dzm savchr dzm comflg lac d1 dac dot dzm dot+1 dzm cmflx lac d4096 dac cmflx+1 dzm fbflg jms copyz; fbxp: fbx; 10 jmp i init finis: lac iof sys close jms bufwr lac bfi sys close lac bfo sys close -1 tad namsiz cma rcl dac char rcl tad char dac 1f lac o17 sys creat; n.out dac bfi sys write; namlst; 1: 0 lac bfi sys close sys exit n.out: 0156056;0157165;0164040;040040 process: 0 lac dot+1 dac lvrand lac dot sad d3 jmp proc4 sza jmp proc1 -1 tad cmflx+1 cma tad lvrand dac lvrand proc1: lac lvrand spa jmp proc4 and o17700 sad bufadd jmp proc2 jms bufwr jms copyz; buf; 64 lac lvrand and o17700 dac bufadd dac 1f lac bfi sys seek; 1: 0; 0 spa jmp proc2 lac bfi sys read; buf; 64 proc2: lac lvrand and o77 jms betwen; dm1; maxsto dac maxsto tad bufp dac lvrand lac r sna jmp proc3 sad d3 jmp proc5 lac cmflx+1 tad r+1 dac r+1 proc3: lac r+1 dac i lvrand jmp i process proc4: jms error; .> lac d1 dac dot dzm dot+1 jmp skip proc5: jms error; u> jmp proc3 bufwr: 0 lac bfo sys seek; bufadd: 0; 0 isz maxsto lac bfo sys write; bufp: buf; maxsto: -1 -1 dac maxsto jmp i bufwr :number: 0 dac 3f lac d1000 dac 2f 1: lac 3f cll idiv; 2: 0 dac 3f lacq tad o60 dac i 8 lac 2b cll idiv; 10 lacq dac 2b sza jmp 1b jmp i number 3: 0 getsc: 0 lac i getsc dac sctalp isz getsc lac i sctalp dac sctal add o400000 dac i sctalp ral lac i sctal szl lrss 9 and o177 jmp i getsc putsc: 0 and o177 lmq lac i putsc dac sctalp isz putsc lac i sctalp dac sctal add o400000 dac i sctalp sma cla jmp 1f llss 27 dac i sctal lrss 9 jmp i putsc 1: lac i sctal omq dac i sctal lacq jmp i putsc sctalp: 0 sctal: 0 betwen: 0 dac 2f lac i betwen dac 3f isz betwen lac i 3f cma tad 2f spa jmp 1f lac i betwen dac 3f isz betwen lac i 3f cma tad d1 tad 2f spa 1: isz betwen lac 2f jmp i betwen 2: 0 3: 0 copyz: 0 -1 tad i copyz dac 8 isz copyz lac i copyz cma tad d1 dac 2f isz copyz 1: dzm i 8 isz 2f jmp 1b jmp i copyz 2: 0 error: 0 lac passno sza jmp 1f isz error jmp i error 1: -1 tad mesp dac 8 lac i error dac i 8 lac o40 dac i 8 lac rator sad d5 jmp 1f lac savchr sad o12 jmp 1f lac lineno jmp 2f 1: -1 tad lineno 2: jms number lac o12 dac i 8 -2 tad mesp cma tad 8 dac 1f lac d1 sys write; mesp: mes; 1: 0 isz error jmp i error skip: lac rator sad d5 jmp assm1 1: jms gchar sad d5 jmp assm1 jmp 1b ioinit: 0 jms copyz; iobuf; 64 lac iof sys read; iobufp: iobuf; 64 sna jms nextfil lac iobufp dac tal -129 dac talc jmp i ioinit nextfil: 0 lac d1 dac lineno lac iof sza sys close nf1: lac narg sad d4 skp jmp 1f dzm eofflg jmp i nextfil 1: tad dm4 dac narg lac fname tad d4 dac fname sys open; fname: 0; 0 dac iof sma lac passno sna jmp nextfil i lac fname dac 1f lac d1 sys write; 1; 0; 4 lac iof sma jmp 1f lac d1 sys write; emes; 2 sys exit 1: lac d1 sys write; emes+1; 1 jmp i nextfil emes: 040077;012000 gchar: 0 lac savchr dzm savchr sza jmp gch3 lac eofflg sza jmp 1f lac o12 jmp gch3 1: isz talc skp jms ioinit jms getsc; tal sna jmp gchar+1 sad o177 jmp gchar+1 sad o12 skp jmp 1f dzm comflg isz lineno 1: sad o42 dac comflg dac char lac comflg sza jmp gchar+1 lac char gch3: dac char jms betwen; d0; o200 cla tad lactab dac .+1 lac 0 jmp i gchar gsymb: 0 jms gchar dac rator tad jmpsw1 dac 1f lac char sad o74 jmp lqot dac namc jms gchar lac char sad o76 jmp rqot dac savchr lac namc dac char 1: jmp 0 jmpsw1: jmp .+1 jmp i gsymb jmp i gsymb jmp i gsymb jmp i gsymb jmp gs1 jmp i gsymb jmp gs2 jmp gs3 badchr: jms error; g> 1: jms gchar lac char sad o12 skp jmp 1b dac savchr jmp gsymb+1 lqot: jms gchar lac o40 dac savchr lac char alss 9 jmp 1f rqot: lac namc 1: dac rand+1 lac d7 dac rator jmp i gsymb gs1: jms gchar sad d4 jmp gs1 lac char dac savchr jmp i gsymb gs2: lac namep dac tal1 -7 dac tal1c lac char jms putsc; tal1 gnam1: jms gchar jms betwen; d5; d8 jmp gnam3 lac char jms putsc; tal1 isz tal1c jmp gnam1 gnam2: jms gchar jms betwen; d5; d8 skp jmp gnam2 lac char dac savchr jms lookup jmp i gsymb gnam3: lac char dac savchr 1: lac o40 jms putsc; tal1 isz tal1c jmp 1b jms lookup jmp i gsymb gs3: dzm rand+1 lac char sad o60 jmp 1f lac d10 jmp 2f 1: lac d8 2: dac num2 num1: lac rand+1 cll mul num2: 0 lacq tad char tad dm48 dac rand+1 jms gchar sad d7 jmp num1 lac char dac savchr lac rand+1 jms betwen; dm1; d10 jmp i gsymb dac name tad fbxp dac name+1 lac i name+1 dac name+1 lac savchr sad o146 jmp 1f sad o142 skp jmp i gsymb dzm name+1 1: dac name+2 dzm name+3 lac d6 dac rator jms lookup dzm savchr jmp i gsymb tlookup: 0 jmp 1f lookup: 0 dzm tlookup 1: -1 tad namlstp dac 8 lac namsiz dac namc lu1: lac i 8 sad name jmp 1f lac d5 lu2: tad 8 dac 8 isz namc jmp lu1 lac tlookup sna jmp 2f lac fnamep dac rand+1 jmp i tlookup 2: lac name dac i 8 lac 8 dac rand+1 lac name+1 dac i 8 lac name+2 dac i 8 lac name+3 dac i 8 lac d3 dac i 8 dzm i 8 -1 tad namsiz dac namsiz jmp i lookup 1: lac i 8 sad name+1 jmp 1f lac d4 jmp lu2 1: lac i 8 sad name+2 jmp 1f lac d3 jmp lu2 1: lac i 8 sad name+3 jmp 1f lac d2 jmp lu2 1: -3 tad 8 dac rand+1 lac tlookup sza jmp i tlookup jmp i lookup namep: name gpair: 0 jms gsymb lac rator sad d4 jmp gpair+1 jms betwen; dm1; d6 jmp gp1 dzm rand dzm rand+1 jmp i gpair gp1: sad d7 lac d4 tad dm4 dac rand jms gsymb lac rator sad d4 jmp gp2 jms betwen; dm1; d6 skp jmp i gpair jms error; x> jmp skip gp2: jms gchar jms betwen; d5; d8 jmp gp3 lac char dac savchr jmp i gpair gp3: lac char dac savchr jms gsymb jmp i gpair expr: 0 jms grand -1 dac srand exp5: lac rand dac r lac rand+1 dac r+1 exp1: lac rator jms betwen; d1; d5 jmp exp3 dac orator jms gpair jms grand lac orator sad d4 jmp exp2 jms oper; rand jmp exp1 exp2: jms pickup lac r dac srand lac r+1 dac srand+1 jmp exp5 exp3: sad d5 jmp exp4 jms error; x> jmp skip exp4: jms pickup jmp i expr pickup: 0 lac srand spa jmp i pickup lac d4 jms oper; srand jmp i pickup grand: 0 lac rand sad d2 skp jmp i grand lac rand+1 tad d4 dac rand+1 lac i rand+1 dac rand isz rand+1 lac i rand+1 dac rand+1 jmp i grand oper: 0 tad opsw dac oper1 -1 tad i oper dac 8 isz oper lac r sad d3 jmp oper2 lac i 8 sad d3 jmp oper2 oper1: jmp 0 opsw: jmp .-1 jmp oplus jmp ominus tad r dac r lac r+1 lmq lac i 8 omq jmp oret oplus: tad r dac r lac r+1 tad i 8 jmp oret ominus: cma tad d1 tad r dac r -1 tad i 8 cma tad r+1 oret: dac r+1 lac r jms betwen; dm1; d2 skp jmp i oper jms error; r> lac d1 dac r jmp i oper oper2: dac r dzm r+1 jmp i oper d0: 0 d1: 1 d4096: 4096 d2: 2 d3: 3 d4: 4 d5: 5 d6: 6 d7: 7 d8: 8 o12: d10: 10 dm1: -1 o40: 040 o60: 060 dm48: -48 o400000: 0400000 o177: 0177 dm4: -4 o200: 0200 o42: 042 o142: 0142 o40040: 040040 o56056: 056056 o56040: 056040 o146: 0146 o17777: 017777 d1000: 1000 o17: 017 o17700: 017700 o77: 077 o74: 074 o76: 076 namsiz: -2 namlstp: namlst fnamep: fakename lactab: lac .+1 8;8;8;8;8;8;8;8 8;4;5;8;8;8;8;8 8;8;8;8;8;8;8;8 8;8;8;8;8;8;8;8 4;8;8;8;8;8;8;8 8;8;6;2;4;3;6;8 7;7;7;7;7;7;7;7 7;7;0;5;8;1;8;8 8;6;6;6;6;6;6;6 6;6;6;6;6;6;6;6 6;6;6;6;6;6;6;6 6;6;6;8;8;8;8;8 8;6;6;6;6;6;6;6 6;6;6;6;6;6;6;6 6;6;6;6;6;6;6;6 6;6;6;8;8;8;8;8 fbflg: .=.+1 tal: .=.+1 talc: .=.+1 tal1: .=.+1 tal1c: .=.+1 narg: .=.+1 lvrand: .=.+1 eofflg: .=.+1 namc: .=.+1 passno: .=.+1 char: .=.+1 savchr: .=.+1 comflg: .=.+1 rator: .=.+1 orator: .=.+1 rand: .=.+2 srand: .=.+2 r: .=.+2 name: .=.+4 buf: .=.+64 iobuf: .=.+64 fbx: .=.+10 mes: .=.+20 iof: .=.+1 bfi: .=.+1 bfo: .=.+1 lineno: .=.+1 fakename: .=.+6 namlst: .=.+4 dot: .=.+6 cmflx: