P00054=0054 D00374=0374 D00755=0755 D01354=1354 D01373=1373 D01374=1374 D01624=1624 D02244=2244 FIELD 0 *3200 P03200, JMS I P03351 / Output CRLF JMS I PICHAR / Get a character JMS I P03353 / Is it a space? SNA JMP L03263 / Yes, go do space command JMS I P03354 / Is it an asterisk? L03206, SZA JMP I .+2 / No, go check for others SKP / Yes, keep going L04027 JMS P03233 / Got asterisk... JMS P03233 JMS P03233 JMS P03233 D03375 L03217, JMS I P03355 JMS I PICHAR JMS I P03353 SNA JMP I P03367 JMS P03244 JMP I P03356 D04233 JMS P03233 JMS P03233 L03231, DCA D03376 JMP I P03370 P03233, L03231 CLL RAL RTL DCA D03373 JMS I PICHAR JMS P03244 JMP I P03367 P03242, D01373 JMP I P03233 P03244, P03242 DCA D03374 TAD D03372 D00374 TAD D03364 SNA CLA JMP L03256 CLL D01374 JMP I P03244 L03256, CLL TAD D03374 AND D03365 D02244 JMP I P03244 L03263, CLA CLL TAD D03375 RTL RTL JMS I P03361 JMS I P03361 JMS I P03361 JMS I P03361 L03273, JMP L03217 L03274, TAD D03357 DCA D03376 JMS I P03355 JMS I PICHAR JMS P03244 SKP JMP L03343 JMS I P03362 SNA JMP L03334 JMS I P03363 SNA JMP L03315 JMS I P03353 SZA JMP I P03367 JMP L03320 L03315, TAD D03376 TAD D03371 DCA D03376 L03320, JMS I P03355 JMS I PICHAR JMS P03244 SKP JMP L03343 JMS I P03362 SNA JMP L03334 4753 SZA JMP I P03367 JMP L03337 L03334, TAD D03376 AND D03366 DCA D03376 L03337, JMS I P03355 JMS I PICHAR JMS P03244 JMP I P03367 L03343, JMS P03233 JMS P03233 AND M177 TAD D03376 DCA D03376 JMP I P03370 P03351, OCRLF PICHAR, ICHAR P03353, P03647 P03354, P03642 P03355, OSPACE P03356, L04000 D03357, 0200 M177, 0177 P03361, ONEOCT P03362, P03654 P03363, P03661 D03364, 7520 D03365, 0007 D03366, 7577 P03367, P03607 P03370, L03600 D03371, 0400 D03372, 0370 D03373, 4200 D03374, 0261 D03375, 3571 D03376, 4201 DCA D03365 *3400 P03400, D04323 L03401, DCA D03562 JMS I PICHR JMS I P03551 SNA JMP L03545 JMS P03523 P03363 DCA I P03555 JMS P03513 L03412, TAD D03564 CIA DCA D03566 TAD D03565 JMS P03457 SKP L03420, JMP I P03552 JMS P03447 L03422, DCA I P03555 DCA D03567 L03424, JMS I P03553 JMS I PICHR D04751 SNA JMP I P03560 JMS P03523 DCA D03562 JMS I PICHR JMS P03523 DCA D03563 JMS P03513 JMS P03447 JMS P03535 L03441, ISZ D03567 SKP JMP I P03560 CLA CMA DCA D03567 JMP L03424 P03447, L03422 TAD D03570 CIA DCA D03566 TAD D03571 JMS P03457 JMP I P03561 JMP I P03447 P03457, L03420 DCA P03572 L03461, TAD I P03572 TAD D03562 SNA CLA JMP L03470 TAD P03572 D01354 JMP L03505 L03470, ISZ P03572 TAD I P03572 TAD D03563 SNA CLA JMP L03501 TAD P03572 IAC IAC JMP L03505 L03501, ISZ P03572 TAD I P03572 ISZ P03457 JMP I P03457 L03505, DCA P03572 TAD P03572 TAD D03566 SPA CLA JMP L03461 JMP I P03457 P03513, L03412 TAD D03562 CIA DCA D03562 D03517, 1363 CIA DCA D03563 JMP I P03513 P03523, L03401 AND D03556 CLL RTL RTL RTL DCA D03566 D04750 AND D03556 TAD D03566 JMP I P03523 P03535, L03441 DCA D03557 TAD D03557 CMA D00755 TAD D03557 DCA I P03555 JMP I P03535 L03545, TAD D03562 DCA I P03555 JMP I P03560 PICHR, ICHAR P03551, P03647 P03552, L03274 P03553, OSPACE 0003 P03555, D03376 D03556, 0077 D03557, 7200 P03560, L03600 P03561, P03607 D03562, 2340 D03563, 4540 D03564, 3776 D03565, 3731 D03566, 2300 D03567, 0000 D03570, 4201 D03571, 4041 P03572, 3741 AND D03517 AND I P00054 7711 0405 AND D03517 *3600 L03600, TAD I P03715 DCA P03730 TAD I P03716 DCA I P03730 2715 NOP 5714 P03607, D04226 JMS OSPACE / Output a space CLA CLL TAD QMARK / Output question mark JMS OCHAR JMS OCHAR / ...twice JMP I P03714 OCRLF, 3201 CLA CLL TAD CR / Output CR JMS OCHAR CLA CLL TAD LF / Output LF JMS OCHAR JMP I OCRLF OSPACE, 3220 CLA CLL TAD SPACE / Output a space JMS OCHAR JMP I OSPACE P03633, P03653 TAD P03730 / Add the character CLL SNA CLA / Is it a match? JMP I P03633 / Yes, return 0 TAD P03730 / No, return the character JMP I P03633 P03642, 3206 DCA P03730 / Save the character TAD NSPLAT / Is it asterisk? JMS P03633 JMP I P03642 / Return result P03647, 3222 DCA P03730 / Save the character TAD NSPACE / Is it space? JMS P03633 P03653, JMP I P03647 / Return result P03654, 3304 DCA P03730 TAD NZ JMS P03633 JMP I P03654 P03661, 3307 DCA P03730 TAD D03724 JMS P03633 JMP I P03661 ICHAR, 3202 / Input with echo KSF / Wait for input JMP .-1 KRB / Read the character JMS OCHAR / Echo it JMP I ICHAR / Return OCHAR, 3625 / Output a character TLS TSF / Wait for output JMP .-1 JMP I OCHAR / Return ONEOCT, L03273 DCA P03730 / Save argument TAD P03730 AND I P03777 / Mask with 0007 TAD C260 / Convert to digit JMS OCHAR / Print it CLA TAD P03730 / Get the value RAL / Roll up next digit RTL JMP I ONEOCT / Return P03714, P03200 P03715, D03375 P03716, D03376 QMARK, 0277 CR, 0215 LF, 0212 SPACE, 0240 NSPLAT, -"* D03724, -"I / Should be "A ? NSPACE, -240 NZ, -"Z C260, 0260 P03730, D03570 TEXT /AND /; *.-1 AND 0 TEXT /TAD /; *.-1 TAD 0 TEXT /ISZ /; *.-1 ISZ 0 TEXT /DCA /; *.-1 DCA 0 TEXT /JMS /; *.-1 JMS 0 TEXT /JMP /; *.-1 JMP 0 TEXT /FADD/; *.-1 TAD 0 TEXT /FSUB/; *.-1 ISZ 0 TEXT /FMPY/; *.-1 DCA 0 TEXT /FDIV/; *.-1 JMS 0 TEXT /FGET/; *.-1 JMP 0 TEXT /FPUT/; *.-1 IOT 1116 7764 P03777, D03365 *4000 L04000, DCA I P04017 1220 JMS I P04021 SZA JMP I P04022 TAD I P04023 DCA P04024 D01624 CLL RTL RTL JMS I P04025 JMS I P04025 JMS I P04025 JMS I P04025 JMP I P04026 P04017, P03730 7503 P04021, P03633 P04022, P03400 P04023, D03375 P04024, D03570 P04025, ONEOCT P04026, P03200 L04027, DCA I P04017 TAD D04036 JMS I P04021 SZA JMP I P04037 ISZ I P04023 JMP I P04040 D04036, 7521 P04037, P03607 P04040, L03263 TEXT /NOP /; *.-1 NOP TEXT /IAC /; *.-1 IAC TEXT /RAL /; *.-1 RAL TEXT /RTL /; *.-1 RTL TEXT /RAR /; *.-1 RAR TEXT /RTR /; *.-1 RTR TEXT /CML /; *.-1 CML TEXT /CMA /; *.-1 CMA TEXT /CIA /; *.-1 CIA TEXT /CLL /; *.-1 CLL TEXT /STL /; *.-1 STL TEXT /CLA /; *.-1 CLA TEXT /STA /; *.-1 STA TEXT /HLT /; *.-1 HLT TEXT /OSR /; *.-1 OSR TEXT /SKP /; *.-1 SKP TEXT /SNL /; *.-1 SNL TEXT /SZL /; *.-1 SZL TEXT /SZA /; *.-1 SZA TEXT /SNA /; *.-1 SNA TEXT /SMA /; *.-1 SMA TEXT /SPA /; *.-1 SPA TEXT /ION /; *.-1 ION TEXT /IOF /; *.-1 IOF TEXT /KSF /; *.-1 KSF TEXT /KCC /; *.-1 KCC TEXT /KRS /; *.-1 KRS TEXT /KRB /; *.-1 KRB TEXT /TSF /; *.-1 TSF TEXT /TCF /; *.-1 TCF TEXT /TPC /; *.-1 TPC TEXT /TLS /; *.-1 TLS D04226=4226 D04233=4233 D04323=4323 D04750=4750 D04751=4751 D07006=7006 $