Reset: equ $0000 org $0800 CartridgeStart: LR $5,A ; 0800 55 NOP ; 0801 2b CartridgeEntry: LISU 7 ; 0802 67 LISL 2 ; 0803 6a LI $2a ; 0804 20 2a LR (IS)-,A ; 0806 5e LISU 4 ; 0807 64 INS 4 ; 0808 a4 LR (IS),A ; 0809 5c LISU 6 ; 080a 66 LISL 4 ; 080b 6c LI $d0 ; 080c 20 d0 LR (IS),A ; 080e 5c LR $3,A ; 080f 53 PI $00d0 ; 0810 28 00 d0 *** ROM call to clear screen PI A0eb3 ; 0813 28 0e b3 DCI A13de ; 0816 2a 13 de when BP here Scaffold has been drawn, after this GAME? is written PI A0d38 ; 0819 28 0d 38 LIS $1 ; 081c 71 LR $1,A ; 081d 51 A081e: LI $d0 ; 081e 20 d0 A0820: INC ; 0820 1f BF $4,A0820 ; 0821 94 fe LISU 6 ; 0823 66 LISL 5 ; 0824 6d DS (IS)- ; 0825 3e BF $4,A082b ; 0826 94 04 DS (IS) ; 0828 3c BT 4,A088b ; 0829 84 61 A082b: INS 0 ; 082b a0 COM ; 082c 18 NI $0f ; 082d 21 0f BT 4,A081e ; 082f 84 ee LR $1,A ; 0831 51 LISL 5 ; 0832 6d LR A,(IS)+ ; 0833 4d LISU 4 ; 0834 64 LR (IS),A ; 0835 5c A0836: INS 0 ; 0836 a0 CI $0f ; 0837 25 0f BF $4,A0836 ; 0839 94 fc A083b: INC ; 083b 1f BF $4,A083b ; 083c 94 fe LISU 6 ; 083e 66 LISL 1 ; 083f 69 LIS $1 ; 0840 71 LR (IS),A ; 0841 5c DCI A13e4 ; 0842 2a 13 e4 PI A0d30 ; 0845 28 0d 30 LIS $d ; 0848 7d XS $b ; 0849 eb BF $4,A084f ; 084a 94 04 JMP A0b08 ; 084c 29 0b 08 A084f: LISU 6 ; 084f 66 LISL 0 ; 0850 68 LR A,$b ; 0851 4b LR (IS),A ; 0852 5c DCI A13ec ; 0853 2a 13 ec PI A0d30 ; 0856 28 0d 30 LR A,$8 ; 0859 48 NI $9e ; 085a 21 9e LR $8,A ; 085c 58 LIS $1 ; 085d 71 NS $b ; 085e fb BF $4,A0865 ; 085f 94 05 LR A,$8 ; 0861 48 OI $20 ; 0862 22 20 LR $8,A ; 0864 58 A0865: LR A,$b ; 0865 4b CI $0f ; 0866 25 0f BF $1,A086e ; 0868 91 05 LR A,$8 ; 086a 48 OI $01 ; 086b 22 01 LR $8,A ; 086d 58 A086e: DCI A13f4 ; 086e 2a 13 f4 PI A0d30 ; 0871 28 0d 30 LR A,$8 ; 0874 48 R8 -> A NI $7f ; 0875 21 7f LR $8,A ; 0877 58 DCI A13d6 ; 0878 2a 13 d6 Refers to byte with "end of word" and "end of list" marker LIS $0 ; 087b 70 A = 0 AS $b ; 087c cb Add Reg11 to A ADC ; 087d 8e Add A to DC ADC ; 087e 8e Add A to DC LM ; 087f 16 A = %11010110 LISU 2 ; 0880 62 ISAR 'O'2x LISL 5 ; 0881 6d ISAR 'O'25 = R21 LR (IS)-,A ; 0882 5e Load what's read in memory to R21 and dec ISAR LM ; 0883 16 Read memory LR (IS),A ; 0884 5c Load what's read in memory to R20 : %11000000 BT 4,A088b ; 0885 84 05 Branch if Zero to $088b LI $80 ; 0887 20 80 A = $80 (128) AS $8 ; 0889 c8 Add R8 to A LR $8,A ; 088a 58 Load R8 with what's in A (%10000000+R8->R8) A088b: LISU 7 ; 088b 67 ISAR'O'7x LISL 3 ; 088c 6b ISAR'O'73 = R59 LI $28 ; 088d 20 28 A = $28 (40 dec) LR (IS)-,A ; 088f 5e Load $28 in R59, ISAR='O'72 = R58 PI A0ed6 ; 0890 28 0e d6 LISL 1 ; 0893 69 LIS $2 ; 0894 72 AS (IS) ; 0895 cc LR (IS),A ; 0896 5c A0897: PI A0eb3 ; 0897 28 0e b3 LIS $c ; 089a 7c NS $1 ; 089b f1 BT 4,A08a1 ; 089c 84 04 PI A0e72 ; 089e 28 0e 72 A08a1: LISU 4 ; 08a1 64 LISL 5 ; 08a2 6d LR A,(IS) ; 08a3 4c LISL 1 ; 08a4 69 AS (IS) ; 08a5 cc LR (IS)-,A ; 08a6 5e LIS $3 ; 08a7 73 NS (IS) ; 08a8 fc LISU 6 ; 08a9 66 LISL 4 ; 08aa 6c INC ; 08ab 1f LR (IS)+,A ; 08ac 5d LIS $0 ; 08ad 70 LR (IS),A ; 08ae 5c A08af: LI $20 ; 08af 20 20 NS $8 ; 08b1 f8 BF $4,A08e4 ; 08b2 94 31 LR $5,A ; 08b4 55 A08b5: LISU 4 ; 08b5 64 LISL 1 ; 08b6 69 LIS $f ; 08b7 7f AS (IS) ; 08b8 cc LR (IS),A ; 08b9 5c A08ba: LR $2,A ; 08ba 52 LIS $0 ; 08bb 70 AS $5 ; 08bc c5 BT 4,A08c4 ; 08bd 84 06 COM ; 08bf 18 INC ; 08c0 1f AS $2 ; 08c1 c2 BT 2,A08ba ; 08c2 82 f7 A08c4: PI A0ed6 ; 08c4 28 0e d6 PI A0b6c ; 08c7 28 0b 6c LIS $0 ; 08ca 70 LR $5,A ; 08cb 55 A08cc: LR A,$2 ; 08cc 42 COM ; 08cd 18 INC ; 08ce 1f AS $5 ; 08cf c5 BT 4,A08ef ; 08d0 84 1e A08d2: PI A0b6c ; 08d2 28 0b 6c LR A,$6 ; 08d5 46 CI $19 ; 08d6 25 19 BT 1,A08d2 ; 08d8 81 f9 LR A,$5 ; 08da 45 INC ; 08db 1f LR $5,A ; 08dc 55 LR A,$6 ; 08dd 46 CI $1a ; 08de 25 1a BF $1,A08b5 ; 08e0 91 d4 BF $0,A08cc ; 08e2 90 e9 A08e4: PI A0b6c ; 08e4 28 0b 6c LR A,$6 ; 08e7 46 CI $1b ; 08e8 25 1b BF $4,A08ef ; 08ea 94 04 JMP Reset ; 08ec 29 00 00 A08ef: LIS $0 ; 08ef 70 LR $a,A ; 08f0 5a A08f1: LR A,$a ; 08f1 4a INC ; 08f2 1f LR $a,A ; 08f3 5a PI A0b6c ; 08f4 28 0b 6c LR A,$6 ; 08f7 46 CI $19 ; 08f8 25 19 BT 1,A08f1 ; 08fa 81 f6 PI A0bce ; 08fc 28 0b ce DS $a ; 08ff 3a BT 4,A08af ; 0900 84 ae LISU 3 ; 0902 63 LISL 0 ; 0903 68 LIS $0 ; 0904 70 LR (IS)+,A ; 0905 5d LR (IS),A ; 0906 5c PI A0bfe ; 0907 28 0b fe LR A,(IS)- ; 090a 4e LR $4,A ; 090b 54 LISU 6 ; 090c 66 LIS $c ; 090d 7c XS (IS) ; 090e ec BF $4,A096c ; 090f 94 5c LISU 7 ; 0911 67 LISL 1 ; 0912 69 LR A,$a ; 0913 4a LR (IS),A ; 0914 5c A0915: LISU 7 ; 0915 67 LISL 2 ; 0916 6a LR A,(IS) ; 0917 4c INC ; 0918 1f CI $2f ; 0919 25 2f BT 1,A091f ; 091b 81 03 LI $2a ; 091d 20 2a A091f: LR (IS),A ; 091f 5c LR IS,A ; 0920 0b LR A,(IS) ; 0921 4c SL 4 ; 0922 15 AS (IS) ; 0923 cc INC ; 0924 1f LR (IS),A ; 0925 5c SR 1 ; 0926 12 SR 1 ; 0927 12 BT 4,A0915 ; 0928 84 ec LR $b,A ; 092a 5b COM ; 092b 18 INC ; 092c 1f AS $a ; 092d ca BF $2,A0915 ; 092e 92 e6 PI A0cf9 ; 0930 28 0c f9 A0933: PI A0b6c ; 0933 28 0b 6c DS $b ; 0936 3b BF $4,A0951 ; 0937 94 19 LR A,$6 ; 0939 46 LR $0,A ; 093a 50 BF $4,A0951 ; 093b 94 15 LISU 3 ; 093d 63 LISL 2 ; 093e 6a LR A,(IS) ; 093f 4c NS $9 ; 0940 f9 BF $4,A0951 ; 0941 94 0f LR A,$9 ; 0943 49 AS (IS) ; 0944 cc LR (IS),A ; 0945 5c LI $30 ; 0946 20 30 LR $3,A ; 0948 53 LIS $2 ; 0949 72 LR $2,A ; 094a 52 PI A0def ; 094b 28 0d ef LISU 7 ; 094e 67 LISL 1 ; 094f 69 DS (IS) ; 0950 3c A0951: PI A0d12 ; 0951 28 0d 12 BF $4,A0933 ; 0954 94 de PI A0d03 ; 0956 28 0d 03 LISU 7 ; 0959 67 LISL 1 ; 095a 69 LIS $0 ; 095b 70 AS (IS) ; 095c cc BF $4,A0915 ; 095d 94 b7 LISU 6 ; 095f 66 LISL 3 ; 0960 6b LI $29 ; 0961 20 29 LR (IS)-,A ; 0963 5e LR (IS),A ; 0964 5c LR $b,A ; 0965 5b PI A0d53 ; 0966 28 0d 53 JMP A0ae1 ; 0969 29 0a e1 A096c: LISU 7 ; 096c 67 LISL 4 ; 096d 6c LI $2f ; 096e 20 2f LR (IS)+,A ; 0970 5d LI $12 ; 0971 20 12 LR (IS),A ; 0973 5c LISL 0 ; 0974 68 LIS $6 ; 0975 76 LR (IS),A ; 0976 5c LISU 6 ; 0977 66 LIS $1 ; 0978 71 NS (IS) ; 0979 fc LR $b,A ; 097a 5b BT 4,A0997 ; 097b 84 1b LR A,$a ; 097d 4a COM ; 097e 18 INC ; 097f 1f LR $2,A ; 0980 52 LISU 4 ; 0981 64 LR A,(IS) ; 0982 4c SR 1 ; 0983 12 A0984: AS $2 ; 0984 c2 BT 1,A0984 ; 0985 81 fe AS $a ; 0987 ca INC ; 0988 1f LR $2,A ; 0989 52 LR $0,A ; 098a 50 PI A0b6e ; 098b 28 0b 6e LR A,$6 ; 098e 46 LR $b,A ; 098f 5b LR A,$2 ; 0990 42 LR $0,A ; 0991 50 PI A0bd0 ; 0992 28 0b d0 BF $0,A09a1 ; 0995 90 0b A0997: LISU 6 ; 0997 66 LISL 2 ; 0998 6a LIS $0 ; 0999 70 LR (IS)+,A ; 099a 5d LI $19 ; 099b 20 19 LR (IS),A ; 099d 5c PI A0d53 ; 099e 28 0d 53 A09a1: LR A,$8 ; 09a1 48 OI $0c ; 09a2 22 0c LR $8,A ; 09a4 58 PI A0cf9 ; 09a5 28 0c f9 A09a8: PI A0b6c ; 09a8 28 0b 6c LR A,$6 ; 09ab 46 COM ; 09ac 18 INC ; 09ad 1f AS $b ; 09ae cb BF $4,A09fe ; 09af 94 4e LR A,$8 ; 09b1 48 NI $fb ; 09b2 21 fb LR $8,A ; 09b4 58 LISU 3 ; 09b5 63 LISL 2 ; 09b6 6a LR A,(IS) ; 09b7 4c NS $9 ; 09b8 f9 BT 4,A09c5 ; 09b9 84 0b LIS $0 ; 09bb 70 AS $8 ; 09bc c8 BT 1,A09f9 ; 09bd 81 3b LR A,$8 ; 09bf 48 OI $04 ; 09c0 22 04 LR $8,A ; 09c2 58 BF $0,A09f9 ; 09c3 90 35 A09c5: LR A,$9 ; 09c5 49 XS (IS) ; 09c6 ec LR (IS),A ; 09c7 5c PI A0e51 ; 09c8 28 0e 51 LIS $2 ; 09cb 72 LR $2,A ; 09cc 52 LR A,$b ; 09cd 4b LR $0,A ; 09ce 50 LI $30 ; 09cf 20 30 LR $3,A ; 09d1 53 LISU 3 ; 09d2 63 LISL 3 ; 09d3 6b LR A,(IS) ; 09d4 4c COM ; 09d5 18 INC ; 09d6 1f AS $a ; 09d7 ca SL 4 ; 09d8 15 SR 1 ; 09d9 12 LISU 2 ; 09da 62 LISL 1 ; 09db 69 AS (IS)- ; 09dc ce LR $4,A ; 09dd 54 LISU 6 ; 09de 66 LIS $4 ; 09df 74 NS (IS) ; 09e0 fc BF $4,A09f9 ; 09e1 94 17 LIS $8 ; 09e3 78 NS (IS) ; 09e4 fc BT 4,A09f6 ; 09e5 84 10 LISL 5 ; 09e7 6d LR A,(IS) ; 09e8 4c INC ; 09e9 1f LR (IS)-,A ; 09ea 5e COM ; 09eb 18 INC ; 09ec 1f AS (IS) ; 09ed cc BF $4,A09f6 ; 09ee 94 07 LI $3b ; 09f0 20 3b LR $4,A ; 09f2 54 LI $26 ; 09f3 20 26 LR $3,A ; 09f5 53 A09f6: PI A0def ; 09f6 28 0d ef A09f9: LIS $2 ; 09f9 72 LR $5,A ; 09fa 55 PI A0fcd ; 09fb 28 0f cd A09fe: PI A0d12 ; 09fe 28 0d 12 BF $4,A09a8 ; 0a01 94 a6 PI A0d03 ; 0a03 28 0d 03 LISU 2 ; 0a06 62 LISL 1 ; 0a07 69 LR A,(IS) ; 0a08 4c LR $4,A ; 0a09 54 LI $30 ; 0a0a 20 30 LR $3,A ; 0a0c 53 LIS $2 ; 0a0d 72 LR $2,A ; 0a0e 52 PI A0cf9 ; 0a0f 28 0c f9 A0a12: PI A0b6c ; 0a12 28 0b 6c LISU 3 ; 0a15 63 LISL 2 ; 0a16 6a LR A,(IS) ; 0a17 4c NS $9 ; 0a18 f9 BF $4,A0a21 ; 0a19 94 07 LR A,$8 ; 0a1b 48 NI $f7 ; 0a1c 21 f7 LR $8,A ; 0a1e 58 BF $0,A0a2c ; 0a1f 90 0c A0a21: LISU 6 ; 0a21 66 LISL 0 ; 0a22 68 LIS $4 ; 0a23 74 NS (IS) ; 0a24 fc BT 4,A0a2c ; 0a25 84 06 LR A,$6 ; 0a27 46 LR $0,A ; 0a28 50 PI A0def ; 0a29 28 0d ef A0a2c: PI A0d12 ; 0a2c 28 0d 12 BF $4,A0a12 ; 0a2f 94 e2 PI A0bce ; 0a31 28 0b ce LIS $4 ; 0a34 74 NS $8 ; 0a35 f8 BF $4,A0a6d ; 0a36 94 36 LIS $8 ; 0a38 78 NS $8 ; 0a39 f8 BF $4,A0a3f ; 0a3a 94 04 JMP A0997 ; 0a3c 29 09 97 A0a3f: LIS $0 ; 0a3f 70 LR $5,A ; 0a40 55 PI A0fcd ; 0a41 28 0f cd LIS $7 ; 0a44 77 LR $b,A ; 0a45 5b A0a46: PI A0d9f ; 0a46 28 0d 9f LR A,$b ; 0a49 4b DCI A0f33 ; 0a4a 2a 0f 33 ADC ; 0a4d 8e ADC ; 0a4e 8e LM ; 0a4f 16 AS (IS) ; 0a50 cc LR (IS)+,A ; 0a51 5d LM ; 0a52 16 AS (IS) ; 0a53 cc LR (IS)-,A ; 0a54 5e DS $b ; 0a55 3b BT 1,A0a46 ; 0a56 81 ef LIS $6 ; 0a58 76 LR $5,A ; 0a59 55 PI A0fcd ; 0a5a 28 0f cd PI A0e51 ; 0a5d 28 0e 51 PI A0e51 ; 0a60 28 0e 51 LIS $4 ; 0a63 74 XS $1 ; 0a64 e1 BF $4,A0a6a ; 0a65 94 04 PI A0e5b ; 0a67 28 0e 5b A0a6a: JMP A0aeb ; 0a6a 29 0a eb A0a6d: LIS $4 ; 0a6d 74 LR $5,A ; 0a6e 55 PI A0fcd ; 0a6f 28 0f cd LISU 7 ; 0a72 67 LISL 0 ; 0a73 68 LIS $1 ; 0a74 71 XS (IS) ; 0a75 ec BF $4,A0a7f ; 0a76 94 08 LISU 6 ; 0a78 66 LIS $6 ; 0a79 76 NS (IS) ; 0a7a fc LISU 7 ; 0a7b 67 BF $4,A0a7f ; 0a7c 94 02 DS (IS) ; 0a7e 3c A0a7f: LR A,(IS) ; 0a7f 4c LR $9,A ; 0a80 59 DCI A0f43 ; 0a81 2a 0f 43 ADC ; 0a84 8e ADC ; 0a85 8e ADC ; 0a86 8e LISU 7 ; 0a87 67 LISL 6 ; 0a88 6e LM ; 0a89 16 LR (IS)+,A ; 0a8a 5d LM ; 0a8b 16 LR (IS)+,A ; 0a8c 5d LISU 7 ; 0a8d 67 LISL 4 ; 0a8e 6c LM ; 0a8f 16 ADC ; 0a90 8e LIS $6 ; 0a91 76 XS $9 ; 0a92 e9 BF $4,A0a9a ; 0a93 94 06 PI A0e9b ; 0a95 28 0e 9b BF $0,A0a9d ; 0a98 90 04 A0a9a: PI A0dd1 ; 0a9a 28 0d d1 A0a9d: LISU 7 ; 0a9d 67 LISL 6 ; 0a9e 6e LR A,(IS)+ ; 0a9f 4d LR $4,A ; 0aa0 54 LR A,(IS)- ; 0aa1 4e LR $3,A ; 0aa2 53 LI $80 ; 0aa3 20 80 LR $2,A ; 0aa5 52 LR A,$b ; 0aa6 4b LR $0,A ; 0aa7 50 PI A0def ; 0aa8 28 0d ef LISU 4 ; 0aab 64 LIS $1 ; 0aac 71 XS (IS) ; 0aad ec LR (IS),A ; 0aae 5c LISU 7 ; 0aaf 67 LISL 0 ; 0ab0 68 DS (IS) ; 0ab1 3c BF $1,A0ab7 ; 0ab2 91 04 JMP A0997 ; 0ab4 29 09 97 A0ab7: PI A0d9f ; 0ab7 28 0d 9f LI $80 ; 0aba 20 80 LR $5,A ; 0abc 55 PI $008f ; 0abd 28 00 8f LI $15 ; 0ac0 20 15 LR $3,A ; 0ac2 53 PI A0ec3 ; 0ac3 28 0e c3 LISU 7 ; 0ac6 67 LISL 5 ; 0ac7 6d LIS $3 ; 0ac8 73 AS (IS) ; 0ac9 cc LR (IS),A ; 0aca 5c PI A0d9f ; 0acb 28 0d 9f LI $14 ; 0ace 20 14 LR $7,A ; 0ad0 57 A0ad1: LIS $2 ; 0ad1 72 NS $8 ; 0ad2 f8 BF $4,A0ae1 ; 0ad3 94 0d OUTS 5 ; 0ad5 b5 LI $c0 ; 0ad6 20 c0 OUTS 5 ; 0ad8 b5 LIS $d ; 0ad9 7d LR $5,A ; 0ada 55 PI $008f ; 0adb 28 00 8f DS $7 ; 0ade 37 BF $4,A0ad1 ; 0adf 94 f1 A0ae1: PI A0e51 ; 0ae1 28 0e 51 LIS $4 ; 0ae4 74 XS $1 ; 0ae5 e1 BF $4,A0aeb ; 0ae6 94 04 PI A0e5e ; 0ae8 28 0e 5e A0aeb: LISU 2 ; 0aeb 62 LISL 1 ; 0aec 69 LR A,(IS) ; 0aed 4c LR $4,A ; 0aee 54 LI $30 ; 0aef 20 30 LR $3,A ; 0af1 53 A0af2: PI A0b6c ; 0af2 28 0b 6c LR A,$6 ; 0af5 46 LR $0,A ; 0af6 50 LIS $2 ; 0af7 72 LR $2,A ; 0af8 52 PI A0def ; 0af9 28 0d ef DS $a ; 0afc 3a BF $4,A0af2 ; 0afd 94 f4 LISU 4 ; 0aff 64 LISL 5 ; 0b00 6d DS (IS) ; 0b01 3c PI A0cce ; 0b02 28 0c ce JMP A0897 ; 0b05 29 08 97 A0b08: LI $d6 ; 0b08 20 d6 LR $3,A ; 0b0a 53 PI $00d0 ; 0b0b 28 00 d0 LI $41 ; 0b0e 20 41 LR $8,A ; 0b10 58 PI A0c0f ; 0b11 28 0c 0f PI A0ed6 ; 0b14 28 0e d6 LISL 3 ; 0b17 6b LI $1a ; 0b18 20 1a LR (IS)-,A ; 0b1a 5e LIS $0 ; 0b1b 70 LR (IS),A ; 0b1c 5c LR $1,A ; 0b1d 51 LR $a,A ; 0b1e 5a PI A0bb1 ; 0b1f 28 0b b1 A0b22: PI A0d53 ; 0b22 28 0d 53 LI $1b ; 0b25 20 1b A = $1b LR $0,A ; 0b27 50 Reg 0 = $1b LI $80 ; 0b28 20 80 A = $80 LR $2,A ; 0b2a 52 R2 = $80 LI $30 ; 0b2b 20 30 A = $30 LR $3,A ; 0b2d 53 R3 = $30 LR A,$a ; 0b2e 4a Load A with R10 SL 4 ; 0b2f 15 xxxx0000 SR 1 ; 0b30 12 0xxxx000 AI $0f ; 0b31 24 0f A = A + $f (0xxxx000 + 00001111 = xxxxx111) LR $4,A ; 0b33 54 Load result in R4 IN $21 ; 0b34 26 21 ***** get data from port 21 *** PATCH DCI port21, LM CI $f7 ; 0b36 25 f7 compare data from port 20 - $f7 (11110111) set flags BT 4,A0b5c ; 0b38 84 23 Branch if zero to $0b5c LR A,$b ; 0b3a 4b Reg 11 to A LR $6,A ; 0b3b 56 A to Reg 6 DS $0 ; 0b3c 30 decrease Reg 0 LR A,$0 ; 0b3d 40 Reg 0 to A XS $b ; 0b3e eb EXOR Reg 11 and A BF $4,A0b4e ; 0b3f 94 0e Branch if not zero to $0b4e PI A0bb1 ; 0b41 28 0b b1 Subroutine $0bb1 A0b44: LIS $0 ; 0b44 70 LR $a,A ; 0b45 5a DCI A0f5c ; 0b46 2a 0f 5c PI A0ddf ; 0b49 28 0d df BF $0,A0b5f ; 0b4c 90 12 A0b4e: LIS $a ; 0b4e 7a XS $a ; 0b4f ea BT 4,A0b5c ; 0b50 84 0b LR A,$b ; 0b52 4b LR $0,A ; 0b53 50 LIS $0 ; 0b54 70 LR $2,A ; 0b55 52 LR A,$a ; 0b56 4a INC ; 0b57 1f LR $a,A ; 0b58 5a PI A0bb1 ; 0b59 28 0b b1 A0b5c: PI A0def ; 0b5c 28 0d ef A0b5f: LI $1b ; 0b5f 20 1b LR $6,A ; 0b61 56 PI A0bb1 ; 0b62 28 0b b1 LIS $1 ; 0b65 71 LR $0,A ; 0b66 50 PI A0bd0 ; 0b67 28 0b d0 BF $0,A0b22 ; 0b6a 90 b7 ;******** start of subroutine ***************************** ; calls from 08c7, 08d2, 08e4, 08f4, 0933, 09a8, 0a12, 0af2 A0b6c: LIS $1 ; 0b6c 71 A = 1 LR $0,A ; 0b6d 50 Register 0 = 1 A0b6e: LR K,P ; 0b6e 08 Load K with contents of P LISU 6 ; 0b6f 66 ISAR 'O'6x LISL 7 ; 0b70 6f ISAR 'O'67 (reg 55, reg$37) A0b71: LIS $0 ; 0b71 70 A=0 LR $6,A ; 0b72 56 Register 6 = 0 LIS $4 ; 0b73 74 A = 4 LR $7,A ; 0b74 57 Register 7 = 4 A0b75: LIS $1 ; 0b75 71 A= 1 NS $8 ; 0b76 f8 (A) 00000001 AND Register 8 (get LSB of R8 to A) BT 4,A0b8c ; 0b77 84 14 Branch if not zero to 0b8c IN $20 ; 0b79 26 20 ***** get data from port 20 NI $80 ; 0b7b 21 80 A AND 10000000, keep only MSB SR 1 ; 0b7d 12 shift right: 0x000000 SR 1 ; 0b7e 12 shift right: 00x00000 AS $6 ; 0b7f c6 Add R6 to A SR 1 ; 0b80 12 shift right 0xxxxxxx LR $6,A ; 0b81 56 Save it in R6 PI A0ba1 ; 0b82 28 0b a1 off to Subroutine A0b85: DS $7 ; 0b85 37 decrease R7 BT 1,A0b75 ; 0b86 81 ee Branch if positive to 0b75 DS $0 ; 0b88 30 decrease R0 BF $4,A0b71 ; 0b89 94 e7 Branch if not zero to 0b71 PK ; 0b8b 0c Reg K back to Reg P ;*********** end of subroutine ******************************* A0b8c: LR A,$6 ; 0b8c 46 SL 1 ; 0b8d 13 INC ; 0b8e 1f LR $6,A ; 0b8f 56 LR DC,Q ; 0b90 0f LM ; 0b91 16 NS (IS) ; 0b92 fc BF $4,A0b96 ; 0b93 94 02 DS $6 ; 0b95 36 A0b96: LR A,(IS) ; 0b96 4c SR 1 ; 0b97 12 LR (IS),A ; 0b98 5c BF $4,A0b85 ; 0b99 94 eb LI $80 ; 0b9b 20 80 LR (IS),A ; 0b9d 5c LR Q,DC ; 0b9e 0e BF $0,A0b85 ; 0b9f 90 e5 ;*********** Start of subroutine called also on checking data when playing **************** A0ba1: IN $21 ; 0ba1 26 21 get data from port 21 *** PATCH DCI port21, LM INC ; 0ba3 1f increase OUT $21 ; 0ba4 27 21 put data to port 21: *** PATCH DCI port21,ST BF $4,A0bb0 ; 0ba6 94 09 branch (END SUB) if not zero (Flags: O:0 Z:1 C:0 S:0) IN $20 ; 0ba8 26 20 get data from port 20 AI $02 ; 0baa 24 02 Add 2 to A (A + 00000010) NI $07 ; 0bac 21 07 A AND 00000111 (only keeps last three bits) OUT $20 ; 0bae 27 20 put data on port 20 A0bb0: POP ; 0bb0 1c end subroutine ;*********** end of subroutine **************** ;*********** subroutine called on all writes to RAM, not on reads ***************************** A0bb1: LR K,P ; 0bb1 08 PI from $0b1f, $0b41, $0b59 and $0b62; Load K from P LIS $5 ; 0bb2 75 load A with 5 LR $5,A ; 0bb3 55 load register 5 with A. This is the counter for number of bits A0bb4: LR A,$6 ; 0bb4 46 load register 6 into A SL 4 ; 0bb5 15 shift left 4 steps result: xxxx0000 SR 1 ; 0bb6 12 shift right 1 step result: 0xxxx000 LR $7,A ; 0bb7 57 load this into register 7 IN $20 ; 0bb8 26 20 ***** Get data from port 20 NI $06 ; 0bba 21 06 A AND 00000110 : 00000xx0 AS $7 ; 0bbc c7 Binary add of scratchpad 7 to A : 0xxxxpp0 INC ; 0bbd 1f increase A : 0xxxxpp1 OUT $20 ; 0bbe 27 20 ***** put data to port 20 **** writes data to RAM **** AI $ff ; 0bc0 24 ff add $FF to A - **decrease by 1** OUT $20 ; 0bc2 27 20 ***** put data to port 20 LR A,$6 ; 0bc4 46 Load from SP6 to A SR 1 ; 0bc5 12 Shift A right: 0xxxxxxx LR $6,A ; 0bc6 56 Back to register 6. PI A0ba1 ; 0bc7 28 0b a1 Jump to subroutine DS $5 ; 0bca 35 decrease register 5 (decrease number of bit counter) BF $4,A0bb4 ; 0bcb 94 e8 Branch to 0bb4 if not zero (one more round) PK ; 0bcd 0c returns from subroutine ;********* end of subroutine *************************** ;********* start subroutine *************************** ; calls from 08fc, 0a31, 0cf0 and 0d0e A0bce: LR A,$a ; 0bce 4a Load register 10 into A LR $0,A ; 0bcf 50 Load register 0 with A A0bd0: LISU 6 ; 0bd0 66 ISAR '110xxx' LISL 7 ; 0bd1 6f ISAR '110111' - set to register 55 = 'O'67 A0bd2: DS $0 ; 0bd2 30 decrease register 0 BF $1,A0bb0 ; 0bd3 91 dc Branch on negative LIS $4 ; 0bd5 74 A = 4 LR $7,A ; 0bd6 57 Load register 7 with A (4) A0bd7: LIS $1 ; 0bd7 71 A = 1 NS $8 ; 0bd8 f8 00000001 AND contents of scratchpad 8 -> A (last bit of SP8) BT 4,A0bf2 ; 0bd9 84 18 Branch if 0 to 0bf2 IN $21 ; 0bdb 26 21 ***** get data from port 21 *** PATCH DCI port21, LM AI $ff ; 0bdd 24 ff decrease A with 1 OUT $21 ; 0bdf 27 21 ***** put data on port 21 : ** PATCH DCI port21, ST CI $ff ; 0be1 25 ff compare immediate (FF - value of A, set flags) BF $4,A0bed ; 0be3 94 09 branch if not zero IN $20 ; 0be5 26 20 ***** get data from port 20 AI $fe ; 0be7 24 fe add fe to A (decrease with 2) NI $06 ; 0be9 21 06 A AND 00000110 OUT $20 ; 0beb 27 20 ***** put data to port 20 A0bed: DS $7 ; 0bed 37 decrease scratchpad 7 BT 1,A0bd7 ; 0bee 81 e8 branch if positive BF $0,A0bd2 ; 0bf0 90 e1 branch to 0bd2 A0bf2: LR A,(IS) ; 0bf2 4c load contents of register set by ISAR to A (ISAR is reg 55) AS (IS) ; 0bf3 cc add contents of register set by ISAR to A (now doubled) BF $2,A0bfb ; 0bf4 92 06 Branch if no carry LR DC,Q ; 0bf6 0f move Q to DC COM ; 0bf7 18 complement ADC ; 0bf8 8e add A to DC0 LR Q,DC ; 0bf9 0e load DC into Q LIS $1 ; 0bfa 71 A = 1 A0bfb: LR (IS),A ; 0bfb 5c set register adressed by ISAR to A (1) BF $0,A0bed ; 0bfc 90 f0 branch to 0bed A0bfe: LIS $3 ; 0bfe 73 LR $2,A ; 0bff 52 LIS $5 ; 0c00 75 LR $5,A ; 0c01 55 LR A,$a ; 0c02 4a LR $9,A ; 0c03 59 SL 1 ; 0c04 13 SL 1 ; 0c05 13 COM ; 0c06 18 AI $2f ; 0c07 24 2f LISU 2 ; 0c09 62 LISL 1 ; 0c0a 69 LR (IS)-,A ; 0c0b 5e LISU 6 ; 0c0c 66 LIS $2 ; 0c0d 72 NS (IS) ; 0c0e fc A0c0f: LISU 2 ; 0c0f 62 LISL 1 ; 0c10 69 BT 4,A0c1d ; 0c11 84 0b LIS $7 ; 0c13 77 LR (IS),A ; 0c14 5c LI $83 ; 0c15 20 83 LR $2,A ; 0c17 52 LIS $a ; 0c18 7a LR $9,A ; 0c19 59 LIS $1 ; 0c1a 71 LR $5,A ; 0c1b 55 LIS $2 ; 0c1c 72 A0c1d: AS (IS) ; 0c1d cc LR $4,A ; 0c1e 54 LI $36 ; 0c1f 20 36 LR $3,A ; 0c21 53 LR K,P ; 0c22 08 A0c23: LIS $2 ; 0c23 72 LR $6,A ; 0c24 56 PI A0e08 ; 0c25 28 0e 08 DS $9 ; 0c28 39 BF $4,A0c23 ; 0c29 94 f9 PK ; 0c2b 0c ;******************* end of subroutine ************************** A0c2c: LISU 7 ; 0c2c 67 LISL 2 ; 0c2d 6a LR A,(IS) ; 0c2e 4c LR IS,A ; 0c2f 0b DS (IS) ; 0c30 3c LISU 4 ; 0c31 64 LISL 0 ; 0c32 68 DS (IS)+ ; 0c33 3d DS (IS) ; 0c34 3c LISU 6 ; 0c35 66 LIS $2 ; 0c36 72 NS (IS)- ; 0c37 fe BF $4,A0c42 ; 0c38 94 09 INS 0 ; 0c3a a0 CI $0e ; 0c3b 25 0e BF $1,A0c98 ; 0c3d 91 5a JMP A088b ; 0c3f 29 08 8b A0c42: LIS $0 ; 0c42 70 AS $8 ; 0c43 c8 A0c44: BT 1,A0c65 ; 0c44 81 20 LISU 2 ; 0c46 62 LI $10 ; 0c47 20 10 NS $8 ; 0c49 f8 BF $4,A0c58 ; 0c4a 94 0d LIS $1 ; 0c4c 71 NS (IS) ; 0c4d fc BT 4,A0c52 ; 0c4e 84 03 LI $80 ; 0c50 20 80 A0c52: DS (IS) ; 0c52 3c LISU 4 ; 0c53 64 LISL 2 ; 0c54 6a LR (IS)+,A ; 0c55 5d BF $0,A0ca3 ; 0c56 90 4c A0c58: DS (IS)- ; 0c58 3e BF $4,A0c65 ; 0c59 94 0b DS (IS)- ; 0c5b 3e BF $4,A0c65 ; 0c5c 94 08 DS (IS)- ; 0c5e 3e BF $4,A0c65 ; 0c5f 94 05 LR A,$8 ; 0c61 48 NI $ef ; 0c62 21 ef LR $8,A ; 0c64 58 A0c65: LISU 6 ; 0c65 66 LISL 1 ; 0c66 69 INS 0 ; 0c67 a0 CI $0e ; 0c68 25 0e BF $4,A0c76 ; 0c6a 94 0b LR A,(IS) ; 0c6c 4c NI $fd ; 0c6d 21 fd LR (IS),A ; 0c6f 5c PI $011e ; 0c70 28 01 1e JMP A0836 ; 0c73 29 08 36 A0c76: CI $0d ; 0c76 25 0d BF $4,A0c7f ; 0c78 94 06 LR A,$8 ; 0c7a 48 OI $02 ; 0c7b 22 02 BF $0,A0c94 ; 0c7d 90 16 A0c7f: CI $0b ; 0c7f 25 0b BF $4,A0c89 ; 0c81 94 07 LR A,(IS) ; 0c83 4c OI $04 ; 0c84 22 04 LR (IS),A ; 0c86 5c BF $0,A0c91 ; 0c87 90 09 A0c89: CI $07 ; 0c89 25 07 BF $4,A0c98 ; 0c8b 94 0c LR A,(IS) ; 0c8d 4c NI $fb ; 0c8e 21 fb LR (IS),A ; 0c90 5c A0c91: LR A,$8 ; 0c91 48 NI $fd ; 0c92 21 fd A0c94: LR $8,A ; 0c94 58 LI $40 ; 0c95 20 40 OUTS 5 ; 0c97 b5 A0c98: LIS $0 ; 0c98 70 OUTS 5 ; 0c99 b5 OUTS 1 ; 0c9a b1 OUTS 4 ; 0c9b b4 LISU 4 ; 0c9c 64 LISL 2 ; 0c9d 6a INS 1 ; 0c9e a1 COM ; 0c9f 18 LR (IS)+,A ; 0ca0 5d INS 4 ; 0ca1 a4 COM ; 0ca2 18 A0ca3: LR (IS)-,A ; 0ca3 5e NS (IS) ; 0ca4 fc XS (IS)+ ; 0ca5 ed XS (IS)+ ; 0ca6 ed LR (IS),A ; 0ca7 5c LISU 6 ; 0ca8 66 LISL 1 ; 0ca9 69 BT 4,A0cb0 ; 0caa 84 05 LR A,(IS) ; 0cac 4c OI $01 ; 0cad 22 01 LR (IS),A ; 0caf 5c A0cb0: LIS $1 ; 0cb0 71 NS (IS) ; 0cb1 fc BF $4,A0cbc ; 0cb2 94 09 LISU 4 ; 0cb4 64 LI $fe ; 0cb5 20 fe AS (IS) ; 0cb7 cc LR (IS),A ; 0cb8 5c LISL 4 ; 0cb9 6c LR (IS),A ; 0cba 5c POP ; 0cbb 1c A0cbc: LIS $2 ; 0cbc 72 NS (IS) ; 0cbd fc LISU 4 ; 0cbe 64 LISL 4 ; 0cbf 6c BT 4,A0ccd ; 0cc0 84 0c LIS $a ; 0cc2 7a NS $1 ; 0cc3 f1 BT 4,A0ccd ; 0cc4 84 08 LISL 6 ; 0cc6 6e LIS $1 ; 0cc7 71 NS (IS) ; 0cc8 fc LISL 2 ; 0cc9 6a BF $4,A0ccd ; 0cca 94 02 LISL 3 ; 0ccc 6b A0ccd: POP ; 0ccd 1c A0cce: LR K,P ; 0cce 08 A0ccf: PI A0c2c ; 0ccf 28 0c 2c LI $c0 ; 0cd2 20 c0 NS (IS) ; 0cd4 fc BF $4,A0ccf ; 0cd5 94 f9 LI $20 ; 0cd7 20 20 LR $5,A ; 0cd9 55 PI $008f ; 0cda 28 00 8f A0cdd: LISU 4 ; 0cdd 64 LISL 1 ; 0cde 69 DS (IS) ; 0cdf 3c PI A0c2c ; 0ce0 28 0c 2c LI $f0 ; 0ce3 20 f0 NS (IS) ; 0ce5 fc BT 4,A0cdd ; 0ce6 84 f6 LI $40 ; 0ce8 20 40 NS (IS) ; 0cea fc BT 4,A0d11 ; 0ceb 84 25 NS $8 ; 0ced f8 BT 4,A0d11 ; 0cee 84 22 PI A0bce ; 0cf0 28 0b ce PI $011e ; 0cf3 28 01 1e JMP A0b44 ; 0cf6 29 0b 44 A0cf9: LISU 3 ; 0cf9 63 LISL 0 ; 0cfa 68 LR A,(IS) ; 0cfb 4c LISL 2 ; 0cfc 6a LR (IS)+,A ; 0cfd 5d LR A,$a ; 0cfe 4a LR (IS)+,A ; 0cff 5d LIS $1 ; 0d00 71 LR $9,A ; 0d01 59 POP ; 0d02 1c A0d03: LR K,P ; 0d03 08 LR A,$a ; 0d04 4a CI $07 ; 0d05 25 07 LISU 3 ; 0d07 63 LISL 2 ; 0d08 6a LR A,(IS)- ; 0d09 4e BF $1,A0d0d ; 0d0a 91 02 LISL 0 ; 0d0c 68 A0d0d: LR (IS),A ; 0d0d 5c PI A0bce ; 0d0e 28 0b ce A0d11: PK ; 0d11 0c A0d12: LR A,$9 ; 0d12 49 AS $9 ; 0d13 c9 LR $9,A ; 0d14 59 LISU 3 ; 0d15 63 BF $2,A0d20 ; 0d16 92 09 LISL 2 ; 0d18 6a LR A,(IS) ; 0d19 4c LISL 0 ; 0d1a 68 LR (IS)+,A ; 0d1b 5d LR A,(IS)+ ; 0d1c 4d LR (IS),A ; 0d1d 5c LIS $1 ; 0d1e 71 LR $9,A ; 0d1f 59 A0d20: LISL 3 ; 0d20 6b DS (IS) ; 0d21 3c POP ; 0d22 1c ;************* subroutine called only from $0d57 *************** ;* ;* copies R21 to R22 and R20 to R23 ;* ;* sets R8 bit4 to 1 ;* returns from subroutine with A loaded with contents of R8 with bit4 set to 1 xxx1xxxx ;* ;********* A0d23: LISU 2 ; 0d23 62 Set R21 in ISAR LISL 5 ; 0d24 6d LR A,(IS)+ ; 0d25 4d Load R21 into A, increase ISAR (R22) LR (IS)+,A ; 0d26 5d copy A to R22 increase ISAR (no need to) LISL 4 ; 0d27 6c ISAR = R20 LR A,(IS) ; 0d28 4c copy R20 to A LISL 7 ; 0d29 6f ISAR = R23 LR (IS),A ; 0d2a 5c A to R23 (R20 -> R23) LR A,$8 ; 0d2b 48 A = R08 OI $10 ; 0d2c 22 10 OR immediate xxx1xxxx LR $8,A ; 0d2e 58 POP ; 0d2f 1c A0d30: LM ; 0d30 16 LR $b,A ; 0d31 5b LISU 6 ; 0d32 66 LISL 3 ; 0d33 6b LM ; 0d34 16 LR (IS)-,A ; 0d35 5e LM ; 0d36 16 LR (IS)-,A ; 0d37 5e A0d38: LIS $6 ; 0d38 76 LR $4,A ; 0d39 54 LR K,P ; 0d3a 08 LR Q,DC ; 0d3b 0e A0d3c: DS $4 ; 0d3c 34 DS $4 ; 0d3d 34 LR DC,Q ; 0d3e 0f LM ; 0d3f 16 LR Q,DC ; 0d40 0e LR $0,A ; 0d41 50 LR $9,A ; 0d42 59 DCI A0f8f ; 0d43 2a 0f 8f PI A0de1 ; 0d46 28 0d e1 LR A,$9 ; 0d49 49 CI $1b ; 0d4a 25 1b BF $4,A0d3c ; 0d4c 94 ef LR DC,Q ; 0d4e 0f AM ; 0d4f 88 BT 4,A0d11 ; 0d50 84 c0 LR P,K ; 0d52 09 A0d53: LR K,P ; 0d53 08 PI $0107 ; 0d54 28 01 07 PI A0d23 ; 0d57 28 0d 23 A0d5a: LIS $2 ; 0d5a 72 LR $0,A ; 0d5b 50 A0d5c: LISU 2 ; 0d5c 62 LISL 7 ; 0d5d 6f DS (IS)- ; 0d5e 3e BF $4,A0d68 ; 0d5f 94 08 DS (IS)- ; 0d61 3e BF $4,A0d68 ; 0d62 94 05 LR A,$8 ; 0d64 48 NI $ef ; 0d65 21 ef LR $8,A ; 0d67 58 A0d68: DS $0 ; 0d68 30 BF $4,A0d5c ; 0d69 94 f2 LR A,$b ; 0d6b 4b LR $0,A ; 0d6c 50 DCI A0f8c ; 0d6d 2a 0f 8c PI A0ddf ; 0d70 28 0d df LI $20 ; 0d73 20 20 LR $5,A ; 0d75 55 PI $008f ; 0d76 28 00 8f A0d79: PI A0cce ; 0d79 28 0c ce LI $b0 ; 0d7c 20 b0 NS (IS) ; 0d7e fc BT 4,A0d79 ; 0d7f 84 f9 BF $1,A0dcd ; 0d81 91 4b NI $20 ; 0d83 21 20 LISU 6 ; 0d85 66 LISL 3 ; 0d86 6b BT 4,A0d95 ; 0d87 84 0d LR A,$b ; 0d89 4b INC ; 0d8a 1f LR $b,A ; 0d8b 5b LR A,(IS)- ; 0d8c 4e COM ; 0d8d 18 AS $b ; 0d8e cb BF $1,A0d5a ; 0d8f 91 ca A0d91: LR A,(IS) ; 0d91 4c LR $b,A ; 0d92 5b BF $0,A0d5a ; 0d93 90 c6 A0d95: DS $b ; 0d95 3b LISL 2 ; 0d96 6a LR A,(IS)+ ; 0d97 4d COM ; 0d98 18 INC ; 0d99 1f AS $b ; 0d9a cb BT 1,A0d5a ; 0d9b 81 be BF $0,A0d91 ; 0d9d 90 f3 A0d9f: LR K,P ; 0d9f 08 PI $0107 ; 0da0 28 01 07 LISU 7 ; 0da3 67 LISL 4 ; 0da4 6c DCI A0f91 ; 0da5 2a 0f 91 PI A0ddf ; 0da8 28 0d df LIS $4 ; 0dab 74 NS $8 ; 0dac f8 LI $12 ; 0dad 20 12 BT 4,A0db6 ; 0daf 84 06 PI A0ddf ; 0db1 28 0d df LI $15 ; 0db4 20 15 A0db6: LR $3,A ; 0db6 53 PI A0ec3 ; 0db7 28 0e c3 LIS $5 ; 0dba 75 LR $9,A ; 0dbb 59 DCI A0f61 ; 0dbc 2a 0f 61 A0dbf: PI A0dd1 ; 0dbf 28 0d d1 DS $9 ; 0dc2 39 BF $4,A0dbf ; 0dc3 94 fb PI A0e9b ; 0dc5 28 0e 9b LIS $9 ; 0dc8 79 LR $5,A ; 0dc9 55 PI $008f ; 0dca 28 00 8f A0dcd: PI $011e ; 0dcd 28 01 1e PK ; 0dd0 0c A0dd1: LM ; 0dd1 16 AS (IS)+ ; 0dd2 cd LR $4,A ; 0dd3 54 LM ; 0dd4 16 AS (IS)- ; 0dd5 ce LR $3,A ; 0dd6 53 BF $0,A0de3 ; 0dd7 90 0b A0dd9: LM ; 0dd9 16 LR $0,A ; 0dda 50 BF $0,A0de3 ; 0ddb 90 07 LM ; 0ddd 16 LR $0,A ; 0dde 50 A0ddf: LM ; 0ddf 16 LR $4,A ; 0de0 54 A0de1: LM ; 0de1 16 LR $3,A ; 0de2 53 A0de3: LM ; 0de3 16 LR $2,A ; 0de4 52 LM ; 0de5 16 LR $5,A ; 0de6 55 LM ; 0de7 16 LR $6,A ; 0de8 56 LIS $0 ; 0de9 70 LR $7,A ; 0dea 57 LIS $5 ; 0deb 75 NS $2 ; 0dec f2 BF $4,A0e08 ; 0ded 94 1a A0def: DCI A1038 ; 0def 2a 10 38 LR A,$0 ; 0df2 40 ADC ; 0df3 8e ADC ; 0df4 8e ADC ; 0df5 8e LIS $0 ; 0df6 70 A0df7: LR $7,A ; 0df7 57 A0df8: DS $0 ; 0df8 30 BF $1,A0e05 ; 0df9 91 0b LR A,$7 ; 0dfb 47 SR 1 ; 0dfc 12 LR $7,A ; 0dfd 57 BF $4,A0df8 ; 0dfe 94 f9 LM ; 0e00 16 LI $80 ; 0e01 20 80 BF $0,A0df7 ; 0e03 90 f3 A0e05: LIS $5 ; 0e05 75 LR $5,A ; 0e06 55 LR $6,A ; 0e07 56 A0e08: LIS $2 ; 0e08 72 NS $2 ; 0e09 f2 BT 4,A0e0f ; 0e0a 84 04 LIS $8 ; 0e0c 78 AS $4 ; 0e0d c4 LR $4,A ; 0e0e 54 A0e0f: LI $40 ; 0e0f 20 40 OUTS 0 ; 0e11 b0 LR A,$3 ; 0e12 43 OI $c0 ; 0e13 22 c0 COM ; 0e15 18 OUTS 5 ; 0e16 b5 A0e17: LR A,$4 ; 0e17 44 COM ; 0e18 18 OUTS 4 ; 0e19 b4 LR A,$5 ; 0e1a 45 LR $0,A ; 0e1b 50 A0e1c: LR A,$2 ; 0e1c 42 OUTS 1 ; 0e1d b1 NI $01 ; 0e1e 21 01 BF $4,A0e36 ; 0e20 94 15 COM ; 0e22 18 ADC ; 0e23 8e LR A,$7 ; 0e24 47 SR 1 ; 0e25 12 LR $7,A ; 0e26 57 BF $4,A0e2d ; 0e27 94 05 LM ; 0e29 16 LI $80 ; 0e2a 20 80 LR $7,A ; 0e2c 57 A0e2d: NM ; 0e2d 8a BF $4,A0e36 ; 0e2e 94 07 COM ; 0e30 18 OUTS 1 ; 0e31 b1 LIS $8 ; 0e32 78 NS $2 ; 0e33 f2 BF $4,A0e40 ; 0e34 94 0b A0e36: LI $60 ; 0e36 20 60 OUTS 0 ; 0e38 b0 LI $40 ; 0e39 20 40 OUTS 0 ; 0e3b b0 A0e3c: AI $f5 ; 0e3c 24 f5 BT 1,A0e3c ; 0e3e 81 fd A0e40: INS 4 ; 0e40 a4 AI $ff ; 0e41 24 ff OUTS 4 ; 0e43 b4 DS $0 ; 0e44 30 BF $4,A0e1c ; 0e45 94 d6 INS 5 ; 0e47 a5 AI $ff ; 0e48 24 ff OUTS 5 ; 0e4a b5 DS $6 ; 0e4b 36 BF $4,A0e17 ; 0e4c 94 ca LIS $0 ; 0e4e 70 OUTS 0 ; 0e4f b0 A0e50: POP ; 0e50 1c A0e51: LIS $8 ; 0e51 78 XS $1 ; 0e52 e1 BF $4,A0e50 ; 0e53 94 fc LISU 4 ; 0e55 64 LISL 6 ; 0e56 6e LIS $1 ; 0e57 71 NS (IS) ; 0e58 fc BT 4,A0e5e ; 0e59 84 04 A0e5b: LISL 2 ; 0e5b 6a BF $0,A0e5f ; 0e5c 90 02 A0e5e: LISL 3 ; 0e5e 6b A0e5f: LISU 2 ; 0e5f 62 LI $67 ; 0e60 20 67 ASD (IS) ; 0e62 dc LR (IS),A ; 0e63 5c CI $99 ; 0e64 25 99 BF $4,A0e72 ; 0e66 94 0b PI A0e72 ; 0e68 28 0e 72 DCI A0f57 ; 0e6b 2a 0f 57 PI A0ddf ; 0e6e 28 0d df POP ; 0e71 1c A0e72: LR K,P ; 0e72 08 LISU 2 ; 0e73 62 LISL 2 ; 0e74 6a LIS $c ; 0e75 7c LR $3,A ; 0e76 53 LIS $2 ; 0e77 72 LR $2,A ; 0e78 52 A0e79: LI $48 ; 0e79 20 48 LR $4,A ; 0e7b 54 LR A,(IS) ; 0e7c 4c SR 4 ; 0e7d 14 AI $1c ; 0e7e 24 1c LR $0,A ; 0e80 50 PI A0def ; 0e81 28 0d ef LR A,(IS)+ ; 0e84 4d SL 4 ; 0e85 15 SR 4 ; 0e86 14 AI $1c ; 0e87 24 1c LR $0,A ; 0e89 50 DS $4 ; 0e8a 34 DS $4 ; 0e8b 34 PI A0def ; 0e8c 28 0d ef LI $27 ; 0e8f 20 27 LR $3,A ; 0e91 53 LI $82 ; 0e92 20 82 LR $2,A ; 0e94 52 LR A,IS ; 0e95 0a CI $13 ; 0e96 25 13 BT 4,A0e79 ; 0e98 84 e0 PK ; 0e9a 0c A0e9b: LR K,P ; 0e9b 08 LI $fe ; 0e9c 20 fe AS (IS)+ ; 0e9e cd LR $4,A ; 0e9f 54 LR A,(IS)- ; 0ea0 4e LR $3,A ; 0ea1 53 DCI A0fcb ; 0ea2 2a 0f cb PI A0dd9 ; 0ea5 28 0d d9 LI $48 ; 0ea8 20 48 LR $2,A ; 0eaa 52 LIS $4 ; 0eab 74 NS $8 ; 0eac f8 BT 4,A0eb2 ; 0ead 84 04 PI A0e05 ; 0eaf 28 0e 05 A0eb2: PK ; 0eb2 0c A0eb3: LR K,P ; 0eb3 08 DCI A0f9b ; 0eb4 2a 0f 9b LIS $8 ; 0eb7 78 LR $9,A ; 0eb8 59 A0eb9: PI A0ddf ; 0eb9 28 0d df DS $9 ; 0ebc 39 BF $4,A0eb9 ; 0ebd 94 fb LI $12 ; 0ebf 20 12 LR $3,A ; 0ec1 53 LR P,K ; 0ec2 09 A0ec3: LR K,P ; 0ec3 08 LI $2d ; 0ec4 20 2d LR $4,A ; 0ec6 54 LI $27 ; 0ec7 20 27 A0ec9: LR $0,A ; 0ec9 50 LI $48 ; 0eca 20 48 LR $2,A ; 0ecc 52 PI A0def ; 0ecd 28 0d ef DS $3 ; 0ed0 33 DS $3 ; 0ed1 33 PI A0e05 ; 0ed2 28 0e 05 PK ; 0ed5 0c ;**** subroutine start **************************************** ; calls from 0890, 08c4 and 0b14 A0ed6: DCI A10bb ; 0ed6 2a 10 bb set dc to adress LR Q,DC ; 0ed9 0e save dc in Q LIS $0 ; 0eda 70 A = 0 OUT $21 ; 0edb 27 21 ***** send 0 to port 21 *** PATCH DCI port21, ST OUT $20 ; 0edd 27 20 ***** send 0 to port 20 LISU 6 ; 0edf 66 ISAR '110xxx' LISL 7 ; 0ee0 6f ISAR '110111' 'O'67 = 55 = $37 LI $80 ; 0ee1 20 80 A = 80 LR (IS),A ; 0ee3 5c Load register 55 with $80 (128) POP ; 0ee4 1c return from subroutine ;**** subroutine end ******************************************** A0ee5: LR QL,A ; 0ee5 07 NOP ; 0ee6 2b INC ; 0ee7 1f DS $2 ; 0ee8 32 DCI $4414 ; 0ee9 2a 44 14 DS $b ; 0eec 3b LR A,KL ; 0eed 01 NS $0 ; 0eee f0 LR A,$9 ; 0eef 49 LR A,$0 ; 0ef0 40 LI $a0 ; 0ef1 20 a0 BT 0,A0f04 ; 0ef3 80 10 DS $0 ; 0ef5 30 BT 0,A0f07 ; 0ef6 80 10 LR $0,A ; 0ef8 50 LR A,$0 ; 0ef9 40 LR A,$0 ; 0efa 40 LISU 0 ; 0efb 60 BT 0,A0f3d ; 0efc 80 40 XS $9 ; 0efe e9 A0eff: LR A,KU ; 0eff 00 LR A,$0 ; 0f00 40 LISU 0 ; 0f01 60 LR $0,A ; 0f02 50 LR A,$0 ; 0f03 40 A0f04: LISU 0 ; 0f04 60 LR $0,A ; 0f05 50 LR A,KU ; 0f06 00 A0f07: BT 0,A0f38 ; 0f07 80 30 LR DC,H ; 0f09 10 LR A,$0 ; 0f0a 40 DS $0 ; 0f0b 30 LR DC,H ; 0f0c 10 LR A,$0 ; 0f0d 40 DS $0 ; 0f0e 30 LR DC,H ; 0f0f 10 BT 0,A0f41 ; 0f10 80 30 LR DC,H ; 0f12 10 LR A,KU ; 0f13 00 LR A,$0 ; 0f14 40 DS $0 ; 0f15 30 LR DC,H ; 0f16 10 ;BT 0,48 ; 0f17 80 30 branch that dasm doesn't like BT 0 is: DO NOT BRANCH .byte $80,$30 LR DC,H ; 0f19 10 LR A,KU ; 0f1a 00 PI $b090 ; 0f1b 28 b0 90 DS $a ; 0f1e 3a INS 15 ; 0f1f af INS 15 ; 0f20 af DS $a ; 0f21 3a db $cf INS 15 ; 0f23 af LR A,$2 ; 0f24 42 INS 15 ; 0f25 af INS 15 ; 0f26 af LR A,KU ; 0f27 00 LR $0,A ; 0f28 50 BF $f,A0ec9 ; 0f29 9f 9f ;BF $0,-80 ; 0f2b 90 b0 branch that dasm doesn't like BF 0 is: branch relative .byte $90,$b0 OUTS 0 ; 0f2d b0 LR A,KU ; 0f2e 00 LR A,$4 ; 0f2f 44 LR A,$0 ; 0f30 40 LIS $0 ; 0f31 70 LISU 0 ; 0f32 60 A0f33: LR A,KL ; 0f33 01 LR A,KL ; 0f34 01 LR A,KU ; 0f35 00 LR A,KL ; 0f36 01 LR A,KU ; 0f37 00 A0f38: db $ff LR A,KU ; 0f39 00 LR QU,A ; 0f3a 06 db $ff LR A,QL ; 0f3c 03 A0f3d: NS (IS)- ; 0f3d fe LR A,KL ; 0f3e 01 db $ff LR A,KU ; 0f40 00 A0f41: NS (IS)- ; 0f41 fe NS (IS)- ; 0f42 fe A0f43: LNK ; 0f43 19 POP ; 0f44 1c EI ; 0f45 1b EI ; 0f46 1b XI $18 ; 0f47 23 18 COM ; 0f49 18 SR 1 ; 0f4a 12 LR J,W ; 0f4b 1e SR 1 ; 0f4c 12 IN $29 ; 0f4d 26 29 SR 4 ; 0f4f 14 PK ; 0f50 0c DS $0 ; 0f51 30 LR DC,Q ; 0f52 0f LM ; 0f53 16 LR J,W ; 0f54 1e LR DC,Q ; 0f55 0f INC ; 0f56 1f A0f57: LIS $d ; 0f57 7d LR A,KU ; 0f58 00 BT 1,A0f5c ; 0f59 81 02 db $3f A0f5c: LR A,KU ; 0f5c 00 DS $0 ; 0f5d 30 AS $1 ; 0f5e c1 LIS $d ; 0f5f 7d LR KL,A ; 0f60 05 A0f61: NS (IS) ; 0f61 fc LR A,IS ; 0f62 0a XM ; 0f63 8c LR KU,A ; 0f64 04 LR K,P ; 0f65 08 SR 1 ; 0f66 12 LR A,$4 ; 0f67 44 LR A,$4 ; 0f68 44 LR A,(IS) ; 0f69 4c LR A,KL ; 0f6a 01 LR A,IS ; 0f6b 0a XM ; 0f6c 8c LR KU,A ; 0f6d 04 LR K,P ; 0f6e 08 ;BT 4,34 ; 0f6f 84 22 branch that dasm doesn't like .byte $84,$22 OI $23 ; 0f71 22 23 db $ff LR KL,A ; 0f74 05 BT 1,A0f79 ; 0f75 81 03 LR KL,A ; 0f77 05 NS $8 ; 0f78 f8 A0f79: LR A,KL ; 0f79 01 XM ; 0f7a 8c LR QL,A ; 0f7b 07 LR KL,A ; 0f7c 05 LR A,$0 ; 0f7d 40 BT 0,A0eff ; 0f7e 80 80 BT 0,A0f61 ; 0f80 80 e0 LR A,KL ; 0f82 01 LR A,KL ; 0f83 01 XM ; 0f84 8c LR QL,A ; 0f85 07 LR KL,A ; 0f86 05 LR KU,A ; 0f87 04 LR K,P ; 0f88 08 LI $8e ; 0f89 20 8e LR A,KU ; 0f8b 00 A0f8c: db $2d IN $00 ; 0f8d 26 00 A0f8f: IN $82 ; 0f8f 26 82 A0f91: NI $10 ; 0f91 21 10 AS $1 ; 0f93 c1 INC ; 0f94 1f POP ; 0f95 1c db $2f LR DC,H ; 0f97 10 LR A,$1 ; 0f98 41 LR A,KL ; 0f99 01 LR KL,A ; 0f9a 05 A0f9b: PK ; 0f9b 0c LR A,IS ; 0f9c 0a AS $1 ; 0f9d c1 LR $6,A ; 0f9e 56 db $2f EI ; 0fa0 1b XDC ; 0fa1 2c LR A,$1 ; 0fa2 41 DS $2 ; 0fa3 32 LR A,QU ; 0fa4 02 LR A,$b ; 0fa5 4b LR A,IS ; 0fa6 0a LR A,$1 ; 0fa7 41 LR A,QU ; 0fa8 02 XI $2a ; 0fa9 23 2a LR A,IS ; 0fab 0a LR A,$1 ; 0fac 41 XI $02 ; 0fad 23 02 DCI $2401 ; 0faf 2a 24 01 LR IS,A ; 0fb2 0b LR K,P ; 0fb3 08 XDC ; 0fb4 2c CI $c1 ; 0fb5 25 c1 LR QL,A ; 0fb7 07 LR QL,A ; 0fb8 07 DCI A0c44 ; 0fb9 2a 0c 44 LR A,IS ; 0fbc 0a LR KU,A ; 0fbd 04 XS $1 ; 0fbe e1 ASD (IS) ; 0fbf dc XS $3 ; 0fc0 e3 NS $0 ; 0fc1 f0 LIS $8 ; 0fc2 78 LR A,$6 ; 0fc3 46 PK ; 0fc4 0c LR A,$4 ; 0fc5 44 LR KL,A ; 0fc6 05 LR KU,A ; 0fc7 04 XS $3 ; 0fc8 e3 ADC ; 0fc9 8e DS $0 ; 0fca 30 A0fcb: IN $88 ; 0fcb 26 88 A0fcd: LISU 6 ; 0fcd 66 LISL 1 ; 0fce 69 LIS $2 ; 0fcf 72 NS $8 ; 0fd0 f8 BF $4,A1022 ; 0fd1 94 50 DCI A0ee5 ; 0fd3 2a 0e e5 LR A,$5 ; 0fd6 45 ADC ; 0fd7 8e LIS $4 ; 0fd8 74 NS (IS) ; 0fd9 fc BF $4,A0fe0 ; 0fda 94 05 AS $5 ; 0fdc c5 BT 4,A1004 ; 0fdd 84 26 LM ; 0fdf 16 A0fe0: LM ; 0fe0 16 ADC ; 0fe1 8e LIS $4 ; 0fe2 74 NS (IS) ; 0fe3 fc BF $4,A1023 ; 0fe4 94 3e A0fe6: AM ; 0fe6 88 LR $6,A ; 0fe7 56 BT 4,A1022 ; 0fe8 84 39 LM ; 0fea 16 LR $5,A ; 0feb 55 LM ; 0fec 16 LR $4,A ; 0fed 54 LI $a6 ; 0fee 20 a6 A0ff0: INC ; 0ff0 1f BF $4,A0ff0 ; 0ff1 94 fe A0ff3: LI $80 ; 0ff3 20 80 OUTS 5 ; 0ff5 b5 LR A,$4 ; 0ff6 44 A0ff7: INC ; 0ff7 1f BF $4,A0ff7 ; 0ff8 94 fe OUTS 5 ; 0ffa b5 LR A,$5 ; 0ffb 45 A0ffc: INC ; 0ffc 1f BF $4,A0ffc ; 0ffd 94 fe DS $6 ; 0fff 36 BF $4,A0ff3 ; 1000 94 f2 BF $0,A0fe6 ; 1002 90 e3 A1004: LI $80 ; 1004 20 80 LR $5,A ; 1006 55 A1007: LI $66 ; 1007 20 66 LR $3,A ; 1009 53 A100a: LR A,$3 ; 100a 43 LR $4,A ; 100b 54 LR A,$5 ; 100c 45 LR $6,A ; 100d 56 LI $80 ; 100e 20 80 OUTS 5 ; 1010 b5 A1011: DS $6 ; 1011 36 BF $4,A1011 ; 1012 94 fe A1014: DS $4 ; 1014 34 BF $4,A1014 ; 1015 94 fe LIS $0 ; 1017 70 OUTS 5 ; 1018 b5 DS $3 ; 1019 33 BF $4,A100a ; 101a 94 ef LI $f9 ; 101c 20 f9 AS $5 ; 101e c5 LR $5,A ; 101f 55 BT 1,A1007 ; 1020 81 e6 A1022: POP ; 1022 1c A1023: LR K,P ; 1023 08 A1024: LIS $0 ; 1024 70 AM ; 1025 88 BT 4,A1037 ; 1026 84 10 OUTS 5 ; 1028 b5 LM ; 1029 16 LR $5,A ; 102a 55 PI $008f ; 102b 28 00 8f LIS $0 ; 102e 70 OUTS 5 ; 102f b5 LM ; 1030 16 LR $5,A ; 1031 55 PI $008f ; 1032 28 00 8f BF $0,A1024 ; 1035 90 ee A1037: PK ; 1037 0c ;*********************** DCI to 1038, 208 5 x 5 pixels Data A, B, C ... ***************** A1038: .byte %00100010 ; $1038 8*25 bits of data for eight characters (8*25) .byte %10100011 ; $1039 .byte %11111000 ; $103a .byte %11111101 ; $103b .byte %00101111 ; $103c .byte %01001111 ; $103d .byte %11011111 ; $103e .byte %00001000 ; $103f .byte %01000001 ; $1040 .byte %11111110 ; $1041 .byte %01001010 ; $1042 .byte %01010011 ; $1043 .byte %11101111 ; $1044 .byte %11000011 ; $1045 .byte %11010000 ; $1046 .byte %11111111 ; $1047 .byte %11100001 ; $1048 .byte %11101000 ; $1049 .byte %01000011 ; $104a .byte %11110000 ; $104b .byte %10111100 ; $104c .byte %01111111 ; $104d .byte %00011000 ; $104e .byte %11111110 ; $104f .byte %00110001 ; $1050 ; # The data above ; # # ;# # ;##### ;# # ;-------- ;##### ; # # ; #### ; # # ;##### ;-------- ; #### ;# ;# ;# ; #### ;-------- ;#### ; # # ; # # ; # # ;#### ;-------- ;##### ;# ;#### ;# ;##### ;-------- ;##### ;# ;#### ;# ;# ;-------- ;##### ;# ;# ### ;# # ;##### ;-------- ;# # ;# # ;##### ;# # ;# # .byte %11111001 ; $1051 .byte %00001000 ; $1052 .byte %01001111 ; $1053 .byte %10011100 ; $1054 .byte %01000010 ; $1055 .byte %10010111 ; $1056 .byte %10010010 ; $1057 .byte %10100110 ; $1058 .byte %00101001 ; $1059 .byte %00110000 ; $105a .byte %10000100 ; $105b .byte %00100001 ; $105c .byte %11111000 ; $105d .byte %11101110 ; $105e .byte %10110001 ; $105f .byte %10001100 ; $1060 .byte %01110011 ; $1061 .byte %01011001 ; $1062 .byte %11000101 ; $1063 .byte %11010001 ; $1064 .byte %10001100 ; $1065 .byte %01011101 ; $1066 .byte %11111000 ; $1067 .byte %11111110 ; $1068 .byte %00010000 ; $1069 ;##### ; # ; # ; # ;##### ;-------- ; ### ; # ; # ;# # ;#### ;-------- ; # # ; # # ; ## ; # # ; # # ;-------- ;# ;# ;# ;# ;##### ;-------- ;# # ;## ## ;# # # ;# # ;# # ;-------- ;# # ;## # ;# # # ;# ## ;# # ;-------- ; ### ;# # ;# # ;# # ; ### ;-------- ;##### ;# # ;##### ;# ;# .byte %11110100 ; $106a .byte %10101101 ; $106b .byte %11100011 ; $106c .byte %11111110 ; $106d .byte %00111111 ; $106e .byte %10100100 ; $106f .byte %11111111 ; $1070 .byte %00001111 ; $1071 .byte %10000111 ; $1072 .byte %11111111 ; $1073 .byte %00100001 ; $1074 .byte %00001000 ; $1075 .byte %01001000 ; $1076 .byte %11000110 ; $1077 .byte %00110001 ; $1078 .byte %11111100 ; $1079 .byte %01100010 ; $107a .byte %10100101 ; $107b .byte %00010010 ; $107c .byte %00110001 ; $107d .byte %10101110 ; $107e .byte %11100011 ; $107f .byte %00010101 ; $1080 .byte %00010001 ; $1081 .byte %01010001 ; $1082 ;#### ;# # ;# ## ;#### ; ### ;-------- ;##### ;# # ;##### ;# # ;# ## ;-------- ;##### ;# ;##### ; # ;##### ;-------- ;##### ; # ; # ; # ; # ;-------- ;# # ;# # ;# # ;# # ;##### ;-------- ;# # ;# # ; # # ; # # ; # ;-------- ;# # ;# # ;# # # ;## ## ;# # ;-------- ;# # ; # # ; # ; # # ;# # .byte %10001010 ; $1083 .byte %10001000 ; $1084 .byte %01000010 ; $1085 .byte %01111100 ; $1086 .byte %01000100 ; $1087 .byte %01000111 ; $1088 .byte %11111111 ; $1089 .byte %11111111 ; $108a .byte %11111111 ; $108b .byte %11101110 ; $108c .byte %10001000 ; $108d .byte %10001000 ; $108e .byte %01001111 ; $108f .byte %11000110 ; $1090 .byte %00110001 ; $1091 .byte %11111001 ; $1092 .byte %00001000 ; $1093 .byte %01000010 ; $1094 .byte %00010011 ; $1095 .byte %11100001 ; $1096 .byte %11111100 ; $1097 .byte %00111111 ; $1098 .byte %11110000 ; $1099 .byte %11111100 ; $109a .byte %00111111 ; $109b ;# # ; # # ; # ; # ; # ;-------- ;##### ; # ; # ; # ;##### ;-------- ;##### ;##### ;##### ;##### ;##### ;-------- ; ### ;# # ; # ; # ; # ;-------- ;##### ;# # ;# # ;# # ;##### ;-------- ; # ; # ; # ; # ; # ;-------- ;##### ; # ;##### ;# ;##### ;-------- ;##### ; # ;##### ; # ;##### .byte %10010100 ; $109c .byte %10111110 ; $109d .byte %00100001 ; $109e .byte %01111110 ; $109f .byte %00011111 ; $10a0 .byte %00001111 ; $10a1 .byte %11111111 ; $10a2 .byte %00001111 ; $10a3 .byte %11000111 ; $10a4 .byte %11111111 ; $10a5 .byte %00001000 ; $10a6 .byte %10000100 ; $10a7 .byte %00101111 ; $10a8 .byte %11000111 ; $10a9 .byte %11110001 ; $10aa .byte %11111111 ; $10ab .byte %11100011 ; $10ac .byte %11110000 ; $10ad .byte %10111101 ; $10ae .byte %11011111 ; $10af .byte %11111011 ; $10b0 .byte %10001000 ; $10b1 .byte %00000000 ; $10b2 .byte %00000010 ; $10b3 .byte %00101110 ; $10b4 ;# # ;# # ;##### ; # ; # ;-------- ;##### ;# ;##### ; # ;##### ;-------- ;##### ;# ;##### ;# # ;##### ;-------- ;##### ; # ; # ; # ; # ;-------- ;##### ;# # ;##### ;# # ;##### ;-------- ;##### ;# # ;##### ; # ; #### ;-------- ; ### ;##### Hangman's head ;##### ; ### ; # ;-------- ; ; ; Lower part of noose ;# # ; ### .byte %00100001 ; $10b5 .byte %00010101 ; $10b6 .byte %00011000 ; $10b7 .byte %10000000 ; $10b8 .byte %00000000 ; $10b9 .byte %00000000 ; $10ba ; # ; # ; # # Upper part of noose ;# # ;# # ;-------- ;00000 ;00000 ;00000 Blank ,missing two bits. ;00000 ;000 ;******* end of character data **************************************************** ;****** List of words BFREE,TAIL,LOVERS,HANGMAN,... ****************************** ; 00000 = A, 00001 = B, 00010 = C ... etc. ; 11010 = end of word, 11011 = end of wordlist A10bb: .byte %00001001 ; $10bb two first bits of above blank, three bits skipped (001) then list starts .byte %01100010 ; $10bc .byte %01000010 ; $10bd .byte %01101010 ; $10be .byte %01100000 ; $10bf .byte %01000010 ; $10c0 .byte %11110100 ; $10c1 .byte %10110111 ; $10c2 .byte %01010100 ; $10c3 .byte %10010001 ; $10c4 .byte %10010110 ; $10c5 .byte %10001110 ; $10c6 .byte %00000110 ; $10c7 .byte %10011001 ; $10c8 .byte %10000000 ; $10c9 .byte %01101110 ; $10ca .byte %10001010 ; $10cb .byte %11100111 ; $10cc .byte %01001100 ; $10cd .byte %00100000 ; $10ce .byte %01011010 ; $10cf .byte %11110100 ; $10d0 .byte %01010000 ; $10d1 .byte %00110001 ; $10d2 .byte %11010100 ; $10d3 .byte %10010110 ; $10d4 .byte %10000100 ; $10d5 .byte %01110100 ; $10d6 .byte %00101100 ; $10d7 .byte %01110001 ; $10d8 .byte %00100011 ; $10d9 .byte %01110100 ; $10da .byte %11000111 ; $10db .byte %01010001 ; $10dc .byte %10110011 ; $10dd .byte %00000010 ; $10de .byte %00011011 ; $10df .byte %10100000 ; $10e0 .byte %10010000 ; $10e1 .byte %00010100 ; $10e2 .byte %10011110 ; $10e3 .byte %00110100 ; $10e4 .byte %00100101 ; $10e5 .byte %10000010 ; $10e6 .byte %00101000 ; $10e7 .byte %01101001 ; $10e8 .byte %00100111 ; $10e9 .byte %10101011 ; $10ea .byte %00010000 ; $10eb .byte %00001011 ; $10ec .byte %10011001 ; $10ed .byte %11110101 ; $10ee .byte %00110010 ; $10ef .byte %01011110 ; $10f0 .byte %01110100 ; $10f1 .byte %10001001 ; $10f2 .byte %00110101 ; $10f3 .byte %00111000 ; $10f4 .byte %10000001 ; $10f5 .byte %00001101 ; $10f6 .byte %11010100 ; $10f7 .byte %10011010 ; $10f8 .byte %00000100 ; $10f9 .byte %00101111 ; $10fa .byte %01010101 ; $10fb .byte %01000100 ; $10fc .byte %01001100 ; $10fd .byte %10000110 ; $10fe .byte %11101000 ; $10ff .byte %01000000 ; $1100 .byte %01101000 ; $1101 .byte %11110001 ; $1102 .byte %10100010 ; $1103 .byte %11000100 ; $1104 .byte %00001101 ; $1105 .byte %10011010 ; $1106 .byte %00000101 ; $1107 .byte %10100110 ; $1108 .byte %00000010 ; $1109 .byte %01010011 ; $110a .byte %00100100 ; $110b .byte %01110101 ; $110c .byte %00111000 ; $110d .byte %11010010 ; $110e .byte %01100111 ; $110f .byte %11010000 ; $1110 .byte %00000110 ; $1111 .byte %00111000 ; $1112 .byte %10010010 ; $1113 .byte %01010010 ; $1114 .byte %11010000 ; $1115 .byte %11010000 ; $1116 .byte %11010110 ; $1117 .byte %10010010 ; $1118 .byte %00111010 ; $1119 .byte %01111100 ; $111a .byte %01000000 ; $111b .byte %00101001 ; $111c .byte %10100000 ; $111d .byte %01000000 ; $111e .byte %01011110 ; $111f .byte %10101100 ; $1120 .byte %11101000 ; $1121 .byte %11001100 ; $1122 .byte %11111000 ; $1123 .byte %11010001 ; $1124 .byte %01100010 ; $1125 .byte %11100110 ; $1126 .byte %11001101 ; $1127 .byte %00000100 ; $1128 .byte %10001110 ; $1129 .byte %10011001 ; $112a .byte %10001001 ; $112b .byte %01001100 ; $112c .byte %10010001 ; $112d .byte %11000110 ; $112e .byte %10010000 ; $112f .byte %11011001 ; $1130 .byte %01001110 ; $1131 .byte %00110100 ; $1132 .byte %01100001 ; $1133 .byte %00011011 ; $1134 .byte %00111101 ; $1135 .byte %01100100 ; $1136 .byte %10000001 ; $1137 .byte %10001000 ; $1138 .byte %00110100 ; $1139 .byte %00100000 ; $113a .byte %00000101 ; $113b .byte %11001110 ; $113c .byte %10010001 ; $113d .byte %00110101 ; $113e .byte %01100000 ; $113f .byte %01001100 ; $1140 .byte %10010001 ; $1141 .byte %11010100 ; $1142 .byte %10101000 ; $1143 .byte %11000110 ; $1144 .byte %00010010 ; $1145 .byte %00111010 ; $1146 .byte %00101100 ; $1147 .byte %01010000 ; $1148 .byte %01000110 ; $1149 .byte %10001111 ; $114a .byte %01001100 ; $114b .byte %00000001 ; $114c .byte %10010000 ; $114d .byte %00101101 ; $114e .byte %00101100 ; $114f .byte %00001101 ; $1150 .byte %00011011 ; $1151 .byte %00000001 ; $1152 .byte %00010101 ; $1153 .byte %01101010 ; $1154 .byte %01011000 ; $1155 .byte %01100011 ; $1156 .byte %11001110 ; $1157 .byte %11100110 ; $1158 .byte %11100011 ; $1159 .byte %01010000 ; $115a .byte %10100000 ; $115b .byte %00010110 ; $115c .byte %10001001 ; $115d .byte %11100011 ; $115e .byte %01000011 ; $115f .byte %00000011 ; $1160 .byte %01000100 ; $1161 .byte %01001101 ; $1162 .byte %00110000 ; $1163 .byte %00010001 ; $1164 .byte %01010001 ; $1165 .byte %00100111 ; $1166 .byte %10100010 ; $1167 .byte %00101100 ; $1168 .byte %10001111 ; $1169 .byte %00111000 ; $116a .byte %00011011 ; $116b .byte %00111101 ; $116c .byte %00111100 ; $116d .byte %10001111 ; $116e .byte %01111001 ; $116f .byte %00100011 ; $1170 .byte %10101001 ; $1171 .byte %01010010 ; $1172 .byte %00101111 ; $1173 .byte %10001010 ; $1174 .byte %00100100 ; $1175 .byte %01001101 ; $1176 .byte %01001010 ; $1177 .byte %01110001 ; $1178 .byte %00000010 ; $1179 .byte %00001100 ; $117a .byte %01111001 ; $117b .byte %11101000 ; $117c .byte %01001011 ; $117d .byte %01110101 ; $117e .byte %00000111 ; $117f .byte %00101101 ; $1180 .byte %00110001 ; $1181 .byte %00010010 ; $1182 .byte %10010010 ; $1183 .byte %00011100 ; $1184 .byte %11011101 ; $1185 .byte %01011001 ; $1186 .byte %00010010 ; $1187 .byte %00011011 ; $1188 .byte %10011001 ; $1189 .byte %10100111 ; $118a .byte %10111001 ; $118b .byte %01101010 ; $118c .byte %00000110 ; $118d .byte %10011110 ; $118e .byte %11101001 ; $118f .byte %10000010 ; $1190 .byte %01101110 ; $1191 .byte %11010100 ; $1192 .byte %10010000 ; $1193 .byte %11010011 ; $1194 .byte %01101000 ; $1195 .byte %11101110 ; $1196 .byte %01101011 ; $1197 .byte %10100011 ; $1198 .byte %10101001 ; $1199 .byte %00110001 ; $119a .byte %11001110 ; $119b .byte %10011001 ; $119c .byte %11110100 ; $119d .byte %10111010 ; $119e .byte %01011110 ; $119f .byte %10010001 ; $11a0 .byte %11000110 ; $11a1 .byte %10000110 ; $11a2 .byte %10000000 ; $11a3 .byte %00110001 ; $11a4 .byte %11001101 ; $11a5 .byte %00011110 ; $11a6 .byte %10000100 ; $11a7 .byte %01000101 ; $11a8 .byte %10010000 ; $11a9 .byte %00110001 ; $11aa .byte %00000100 ; $11ab .byte %11001001 ; $11ac .byte %10100000 ; $11ad .byte %10111010 ; $11ae .byte %10001101 ; $11af .byte %00010001 ; $11b0 .byte %00110100 ; $11b1 .byte %11000000 ; $11b2 .byte %01010100 ; $11b3 .byte %10010001 ; $11b4 .byte %01000000 ; $11b5 .byte %10010101 ; $11b6 .byte %10100001 ; $11b7 .byte %00011100 ; $11b8 .byte %00001101 ; $11b9 .byte %00010001 ; $11ba .byte %00110100 ; $11bb .byte %00100011 ; $11bc .byte %10000001 ; $11bd .byte %10001111 ; $11be .byte %01000011 ; $11bf .byte %10011011 ; $11c0 .byte %10100001 ; $11c1 .byte %00000001 ; $11c2 .byte %11101000 ; $11c3 .byte %10011000 ; $11c4 .byte %00010111 ; $11c5 .byte %10100000 ; $11c6 .byte %10000001 ; $11c7 .byte %01101011 ; $11c8 .byte %01110011 ; $11c9 .byte %10011011 ; $11ca .byte %10100001 ; $11cb .byte %01010000 ; $11cc .byte %01100011 ; $11cd .byte %01011001 ; $11ce .byte %00110100 ; $11cf .byte %00000111 ; $11d0 .byte %10111110 ; $11d1 .byte %00101110 ; $11d2 .byte %10101001 ; $11d3 .byte %00110101 ; $11d4 .byte %00001010 ; $11d5 .byte %00010010 ; $11d6 .byte %01010011 ; $11d7 .byte %01000011 ; $11d8 .byte %10011011 ; $11d9 .byte %10101001 ; $11da .byte %00001000 ; $11db .byte %00000101 ; $11dc .byte %00101011 ; $11dd .byte %10010110 ; $11de .byte %00111101 ; $11df .byte %01001001 ; $11e0 .byte %00010011 ; $11e1 .byte %10100000 ; $11e2 .byte %00100110 ; $11e3 .byte %10000111 ; $11e4 .byte %00110111 ; $11e5 .byte %01001111 ; $11e6 .byte %01110101 ; $11e7 .byte %10001001 ; $11e8 .byte %00011101 ; $11e9 .byte %00000100 ; $11ea .byte %10000000 ; $11eb .byte %00010001 ; $11ec .byte %11110101 ; $11ed .byte %00101001 ; $11ee .byte %11100001 ; $11ef .byte %01100100 ; $11f0 .byte %11010000 ; $11f1 .byte %00011110 ; $11f2 .byte %11110101 ; $11f3 .byte %10010011 ; $11f4 .byte %01010010 ; $11f5 .byte %10011100 ; $11f6 .byte %01101000 ; $11f7 .byte %01100011 ; $11f8 .byte %00101100 ; $11f9 .byte %10011010 ; $11fa .byte %10010100 ; $11fb .byte %11100010 ; $11fc .byte %01000110 ; $11fd .byte %10011010 ; $11fe .byte %01100111 ; $11ff .byte %11010101 ; $1200 .byte %01000000 ; $1201 .byte %00101010 ; $1202 .byte %01010001 ; $1203 .byte %10011010 ; $1204 .byte %10110001 ; $1205 .byte %00001000 ; $1206 .byte %10100010 ; $1207 .byte %00110100 ; $1208 .byte %01111010 ; $1209 .byte %10001001 ; $120a .byte %00001101 ; $120b .byte %01000101 ; $120c .byte %10000010 ; $120d .byte %00111010 ; $120e .byte %00111101 ; $120f .byte %00100100 ; $1210 .byte %00010000 ; $1211 .byte %00110100 ; $1212 .byte %01111010 ; $1213 .byte %01110100 ; $1214 .byte %01000010 ; $1215 .byte %10001001 ; $1216 .byte %11101010 ; $1217 .byte %01010011 ; $1218 .byte %00000100 ; $1219 .byte %11010000 ; $121a .byte %11100110 ; $121b .byte %11101000 ; $121c .byte %01001011 ; $121d .byte %00100101 ; $121e .byte %01001001 ; $121f .byte %00011101 ; $1220 .byte %01010001 ; $1221 .byte %10100000 ; $1222 .byte %01101010 ; $1223 .byte %00011000 ; $1224 .byte %11101010 ; $1225 .byte %01001011 ; $1226 .byte %01010010 ; $1227 .byte %10110010 ; $1228 .byte %00011010 ; $1229 .byte %01101101 ; $122a .byte %00111100 ; $122b .byte %00010001 ; $122c .byte %10011011 ; $122d .byte %01001001 ; $122e .byte %00011101 ; $122f .byte %00001001 ; $1230 .byte %11001101 ; $1231 .byte %10011100 ; $1232 .byte %01000000 ; $1233 .byte %00101001 ; $1234 .byte %11101000 ; $1235 .byte %01000111 ; $1236 .byte %00000011 ; $1237 .byte %01001100 ; $1238 .byte %01001101 ; $1239 .byte %01001001 ; $123a .byte %11100100 ; $123b .byte %00000100 ; $123c .byte %01001110 ; $123d .byte %01000000 ; $123e .byte %00001111 ; $123f .byte %01010110 ; $1240 .byte %00000100 ; $1241 .byte %01011001 ; $1242 .byte %10100000 ; $1243 .byte %10111001 ; $1244 .byte %11001010 ; $1245 .byte %01010001 ; $1246 .byte %00001000 ; $1247 .byte %11110010 ; $1248 .byte %01000111 ; $1249 .byte %01000100 ; $124a .byte %01011001 ; $124b .byte %00000101 ; $124c .byte %00111000 ; $124d .byte %10111001 ; $124e .byte %10101000 ; $124f .byte %00010110 ; $1250 .byte %10100111 ; $1251 .byte %00010000 ; $1252 .byte %01010100 ; $1253 .byte %10001011 ; $1254 .byte %11010000 ; $1255 .byte %01010110 ; $1256 .byte %11101001 ; $1257 .byte %01001001 ; $1258 .byte %11001100 ; $1259 .byte %11010011 ; $125a .byte %11100010 ; $125b .byte %10000110 ; $125c .byte %11001111 ; $125d .byte %01001101 ; $125e .byte %10100100 ; $125f .byte %01100100 ; $1260 .byte %01001101 ; $1261 .byte %00011101 ; $1262 .byte %11001100 ; $1263 .byte %00100110 ; $1264 .byte %10101010 ; $1265 .byte %00000101 ; $1266 .byte %10101100 ; $1267 .byte %10011000 ; $1268 .byte %11010010 ; $1269 .byte %00011000 ; $126a .byte %11110111 ; $126b .byte %01000110 ; $126c .byte %01111010 ; $126d .byte %00011100 ; $126e .byte %01010000 ; $126f .byte %11010101 ; $1270 .byte %01101001 ; $1271 .byte %11101110 ; $1272 .byte %01111101 ; $1273 .byte %00010110 ; $1274 .byte %00001000 ; $1275 .byte %11101000 ; $1276 .byte %01101110 ; $1277 .byte %00010100 ; $1278 .byte %11011101 ; $1279 .byte %00011101 ; $127a .byte %01001000 ; $127b .byte %11101000 ; $127c .byte %00100010 ; $127d .byte %11000111 ; $127e .byte %10100011 ; $127f .byte %10000010 ; $1280 .byte %00101101 ; $1281 .byte %00100100 ; $1282 .byte %10100101 ; $1283 .byte %10100110 ; $1284 .byte %00111010 ; $1285 .byte %01101110 ; $1286 .byte %10001110 ; $1287 .byte %10000010 ; $1288 .byte %10001000 ; $1289 .byte %11001100 ; $128a .byte %11100011 ; $128b .byte %00000110 ; $128c .byte %00110100 ; $128d .byte %00100000 ; $128e .byte %00101100 ; $128f .byte %01010100 ; $1290 .byte %01011000 ; $1291 .byte %00100110 ; $1292 .byte %01001101 ; $1293 .byte %00000010 ; $1294 .byte %11000000 ; $1295 .byte %10001000 ; $1296 .byte %11110101 ; $1297 .byte %00111000 ; $1298 .byte %10111001 ; $1299 .byte %11100111 ; $129a .byte %11000110 ; $129b .byte %10000110 ; $129c .byte %11100110 ; $129d .byte %10000010 ; $129e .byte %01100100 ; $129f .byte %11010101 ; $12a0 .byte %00011010 ; $12a1 .byte %10000111 ; $12a2 .byte %00110111 ; $12a3 .byte %01010001 ; $12a4 .byte %00100100 ; $12a5 .byte %10011110 ; $12a6 .byte %11100110 ; $12a7 .byte %10001111 ; $12a8 .byte %01010010 ; $12a9 .byte %10011011 ; $12aa .byte %10000100 ; $12ab .byte %10101101 ; $12ac .byte %00001001 ; $12ad .byte %11001101 ; $12ae .byte %10011010 ; $12af .byte %00011011 ; $12b0 .byte %01000010 ; $12b1 .byte %01101000 ; $12b2 .byte %00110001 ; $12b3 .byte %01000000 ; $12b4 .byte %10010101 ; $12b5 .byte %10100010 ; $12b6 .byte %00110001 ; $12b7 .byte %11010011 ; $12b8 .byte %01000011 ; $12b9 .byte %10011011 ; $12ba .byte %10100000 ; $12bb .byte %11000100 ; $12bc .byte %10000000 ; $12bd .byte %10010100 ; $12be .byte %11110101 ; $12bf .byte %01010100 ; $12c0 .byte %00111001 ; $12c1 .byte %01100100 ; $12c2 .byte %01101000 ; $12c3 .byte %10001001 ; $12c4 .byte %10100010 ; $12c5 .byte %00101100 ; $12c6 .byte %10000010 ; $12c7 .byte %10011110 ; $12c8 .byte %10000100 ; $12c9 .byte %11100101 ; $12ca .byte %10101100 ; $12cb .byte %10000110 ; $12cc .byte %00100110 ; $12cd .byte %10100101 ; $12ce .byte %00111000 ; $12cf .byte %10111001 ; $12d0 .byte %10100110 ; $12d1 .byte %11010000 ; $12d2 .byte %00001011 ; $12d3 .byte %00110010 ; $12d4 .byte %01000101 ; $12d5 .byte %10101110 ; $12d6 .byte %01110011 ; $12d7 .byte %01110100 ; $12d8 .byte %00100111 ; $12d9 .byte %00110100 ; $12da .byte %01101000 ; $12db .byte %10011010 ; $12dc .byte %00011100 ; $12dd .byte %11011101 ; $12de .byte %01001010 ; $12df .byte %10001100 ; $12e0 .byte %01100010 ; $12e1 .byte %00100111 ; $12e2 .byte %10100000 ; $12e3 .byte %00010100 ; $12e4 .byte %10100000 ; $12e5 .byte %01000100 ; $12e6 .byte %01110100 ; $12e7 .byte %01001010 ; $12e8 .byte %10010001 ; $12e9 .byte %10101000 ; $12ea .byte %01101001 ; $12eb .byte %10110101 ; $12ec .byte %00010010 ; $12ed .byte %01001010 ; $12ee .byte %01100000 ; $12ef .byte %10100100 ; $12f0 .byte %01000000 ; $12f1 .byte %11011001 ; $12f2 .byte %11101010 ; $12f3 .byte %01010011 ; $12f4 .byte %10001011 ; $12f5 .byte %10010110 ; $12f6 .byte %10111101 ; $12f7 .byte %00001100 ; $12f8 .byte %00010100 ; $12f9 .byte %00110001 ; $12fa .byte %11100110 ; $12fb .byte %01001000 ; $12fc .byte %11101000 ; $12fd .byte %00110001 ; $12fe .byte %01000000 ; $12ff .byte %11001100 ; $1300 .byte %01001101 ; $1301 .byte %00011100 ; $1302 .byte %10000000 ; $1303 .byte %10001100 ; $1304 .byte %11110100 ; $1305 .byte %01100101 ; $1306 .byte %10000001 ; $1307 .byte %10001110 ; $1308 .byte %10100100 ; $1309 .byte %01110101 ; $130a .byte %00100111 ; $130b .byte %00101110 ; $130c .byte %10010011 ; $130d .byte %01000011 ; $130e .byte %10011011 ; $130f .byte %10101000 ; $1310 .byte %10111001 ; $1311 .byte %10000000 ; $1312 .byte %01101100 ; $1313 .byte %11010000 ; $1314 .byte %00101101 ; $1315 .byte %01100001 ; $1316 .byte %11010100 ; $1317 .byte %01101001 ; $1318 .byte %10110100 ; $1319 .byte %10000110 ; $131a .byte %10010101 ; $131b .byte %01110100 ; $131c .byte %00100011 ; $131d .byte %01000100 ; $131e .byte %01001101 ; $131f .byte %00111110 ; $1320 .byte %10010001 ; $1321 .byte %01111011 ; $1322 .byte %10100100 ; $1323 .byte %01001101 ; $1324 .byte %01001110 ; $1325 .byte %00110100 ; $1326 .byte %00010010 ; $1327 .byte %10110101 ; $1328 .byte %00100010 ; $1329 .byte %00001010 ; $132a .byte %00100100 ; $132b .byte %10011110 ; $132c .byte %10100101 ; $132d .byte %00111000 ; $132e .byte %10100000 ; $132f .byte %01100100 ; $1330 .byte %11010100 ; $1331 .byte %11100010 ; $1332 .byte %00000001 ; $1333 .byte %10100010 ; $1334 .byte %01101000 ; $1335 .byte %01110011 ; $1336 .byte %01110101 ; $1337 .byte %00101010 ; $1338 .byte %00001000 ; $1339 .byte %01000100 ; $133a .byte %10010100 ; $133b .byte %10110100 ; $133c .byte %10010010 ; $133d .byte %00000001 ; $133e .byte %01101110 ; $133f .byte %10100100 ; $1340 .byte %10110100 ; $1341 .byte %00110100 ; $1342 .byte %01000100 ; $1343 .byte %10000010 ; $1344 .byte %10011110 ; $1345 .byte %10100010 ; $1346 .byte %01001001 ; $1347 .byte %00111010 ; $1348 .byte %10010001 ; $1349 .byte %00010001 ; $134a .byte %00110100 ; $134b .byte %11111000 ; $134c .byte %10111000 ; $134d .byte %10101000 ; $134e .byte %10011110 ; $134f .byte %10001000 ; $1350 .byte %11011001 ; $1351 .byte %10010010 ; $1352 .byte %00110011 ; $1353 .byte %00000010 ; $1354 .byte %00011011 ; $1355 .byte %10100000 ; $1356 .byte %00000110 ; $1357 .byte %10001101 ; $1358 .byte %00011000 ; $1359 .byte %00011011 ; $135a .byte %00111101 ; $135b .byte %01001010 ; $135c .byte %10001111 ; $135d .byte %00100100 ; $135e .byte %01010000 ; $135f .byte %11101000 ; $1360 .byte %11101010 ; $1361 .byte %01001110 ; $1362 .byte %00010010 ; $1363 .byte %00000000 ; $1364 .byte %10111101 ; $1365 .byte %00001001 ; $1366 .byte %11010100 ; $1367 .byte %10001100 ; $1368 .byte %11001001 ; $1369 .byte %00101100 ; $136a .byte %01101001 ; $136b .byte %11110001 ; $136c .byte %01110000 ; $136d .byte %10001001 ; $136e .byte %00101001 ; $136f .byte %00100001 ; $1370 .byte %11001101 ; $1371 .byte %11010011 ; $1372 .byte %00000001 ; $1373 .byte %00010001 ; $1374 .byte %00011111 ; $1375 .byte %01000010 ; $1376 .byte %10001001 ; $1377 .byte %00000000 ; $1378 .byte %11001101 ; $1379 .byte %01010101 ; $137a .byte %11001011 ; $137b .byte %10100011 ; $137c .byte %01100110 ; $137d .byte %01000010 ; $137e .byte %01000111 ; $137f .byte %01001011 ; $1380 .byte %01110000 ; $1381 .byte %10000000 ; $1382 .byte %10111101 ; $1383 .byte %00010101 ; $1384 .byte %01101110 ; $1385 .byte %00000100 ; $1386 .byte %11110100 ; $1387 .byte %01010000 ; $1388 .byte %00110001 ; $1389 .byte %00001011 ; $138a .byte %01000000 ; $138b .byte %00100011 ; $138c .byte %10100111 ; $138d .byte %11000101 ; $138e .byte %00010101 ; $138f .byte %00000100 ; $1390 .byte %11001001 ; $1391 .byte %10101001 ; $1392 .byte %01001100 ; $1393 .byte %00010011 ; $1394 .byte %10100001 ; $1395 .byte %00110100 ; $1396 .byte %01101010 ; $1397 .byte %00000010 ; $1398 .byte %00100000 ; $1399 .byte %01101100 ; $139a .byte %11001000 ; $139b .byte %01001101 ; $139c .byte %00001101 ; $139d .byte %11001011 ; $139e .byte %01111001 ; $139f .byte %11010000 ; $13a0 .byte %11011101 ; $13a1 .byte %00111110 ; $13a2 .byte %00101110 ; $13a3 .byte %01100011 ; $13a4 .byte %10100110 ; $13a5 .byte %10000111 ; $13a6 .byte %00110111 ; $13a7 .byte %01001111 ; $13a8 .byte %00100000 ; $13a9 .byte %00100010 ; $13aa .byte %10111101 ; $13ab .byte %00110100 ; $13ac .byte %10000010 ; $13ad .byte %01010010 ; $13ae .byte %11000000 ; $13af .byte %00100010 ; $13b0 .byte %01101010 ; $13b1 .byte %01000111 ; $13b2 .byte %01000100 ; $13b3 .byte %01100111 ; $13b4 .byte %10100010 ; $13b5 .byte %10100010 ; $13b6 .byte %00110010 ; $13b7 .byte %10011110 ; $13b8 .byte %10100100 ; $13b9 .byte %00000010 ; $13ba .byte %10010010 ; $13bb .byte %01111000 ; $13bc .byte %11010000 ; $13bd .byte %01011100 ; $13be .byte %00001000 ; $13bf .byte %10001111 ; $13c0 .byte %01000001 ; $13c1 .byte %10001011 ; $13c2 .byte %10000000 ; $13c3 .byte %00111101 ; $13c4 .byte %01001100 ; $13c5 .byte %00000001 ; $13c6 .byte %01011001 ; $13c7 .byte %00110100 ; $13c8 .byte %00111000 ; $13c9 .byte %10000010 ; $13ca .byte %11000100 ; $13cb .byte %10001110 ; $13cc .byte %10000100 ; $13cd .byte %10110111 ; $13ce .byte %01001100 ; $13cf .byte %11100100 ; $13d0 .byte %10010110 ; $13d1 .byte %10001010 ; $13d2 .byte %10000110 ; $13d3 .byte %10100010 ; $13d4 .byte %01000111 ; $13d5 ;************************* DCI $13d6 from $0878 ************************ A13d6: .byte %11010110 ; $13d6 Could be that $0878 reads the "end of word" and "end of list"... .byte %11000000 ; $13d7 ;********************** end of word list two bits into 13d7 ******************* .byte $05 ; $13d8 .byte $01 ; $13d9 .byte $03 ; $13da .byte $50 ; $13db .byte $01 ; $13dc .byte $a0 ; $13dd ;**************** DCI $13de from $0816 **************************** Before GAME? appears A13de: .byte $11 ; $13de S .byte $0f ; $13df P .byte $04 ; $13e0 E .byte $0b ; $13e1 L .byte $1b ; $13e2 ? .byte $e5 ; $13e3 changing this messes up handcontroller ;**************** DCI $13e4 from $0842 **************************** Before MODE? appears A13e4: .byte $00 ; $13e4 startvalue within selection interval starts on A (normal) .byte $0d ; $13e5 selection interval end letter d = N .byte $00 ; $13e6 selection interval start letter 0 = A .byte $0c ; $13e7 M .byte $0e ; $13e8 O .byte $03 ; $13e9 D .byte $29 ; $13ea .byte $1b ; $13eb ? ;**************** DCI $13ec from $0853 **************************** Before BOOK? appears A13ec: .byte $13 ; $13ec startvalue within selection interval starts on U (not random predefined) .byte $14 ; $13ed select letter end interval 14 = V .byte $11 ; $13ee select letter start interval 11 = S .byte $01 ; $13ef B .byte $0e ; $13f0 O .byte $0a ; $13f1 K .byte $29 ; $13f2 .byte $1b ; $13f3 ? ;**************** DCI $13f4 from $086e **************************** Before TIME? Appears A13f4: .byte $00 ; $13f4 startvalue within selection interval starts on A (no timelimit) .byte $03 ; $13f5 selection interval end letter 3 = D .byte $00 ; $13f6 selection interval start letter 0 = A .byte $12 ; $13f7 T .byte $08 ; $13f8 I .byte $03 ; $13f9 D .byte $29 ; $13fa .byte $1b ; $13fb ? .byte $00 ; $13fc .byte $00 ; $13fd .byte $00 ; $13fe IF 0 dasm will not assemble this: the 2102 is attached to ports a and b of the 3851: adressbits may not be accurate (taken from Sean Riddle's mazepatch) 7 6 5 4 3 2 1 0 port a (p20) OUT - - - IN A2 A3 RW port b (p21) A9 A8 A7 A1 A6 A5 A4 A0 Port 21: Only need to read and write to latch OUT p21 becomes DCI port21, ST IN p21 becomes DCI port21, LM 0b34 in $21 on all input not on read memory 0b79 in $20 only used on read memory not on input *** subroutine 0ba1 in $21 0ba4 out $21 0ba8 in $20 0bae out $20 *** end of subroutine *** subroutine 0bb8 in $20 obbe out $20 enters the first to fifth 0 at start of book 0bc2 out $20 *** end of subroutine *** subroutine 0bdb in $21 breaks five times after each entered letter 0bdf out $21 0be5 in $20 breaks here after 4 ten letter words and 6 letters (259 bits in memory ?) 0beb out $20 after several letters are entered, two times until full memory **** end of subroutine *** subroutine several times when random own word list also when autoplay 0edb out $21 before choice of letter appears first time or before entering game with own words 0edd out $20 same as above *** end of subroutine After each entered letter the data 11011 is entered and is then overwritten at then next letter. 01011 means "end of word" 11011 means "end of wordlist". Registers 18 and 19 are used for keeping score Built in word list from $10BB, starts with B: 00001 BFREE TAIL LOVERS HANGMAN FOOTBALL FAMOUS CHILDREN MOUNTAIN BEAUTY CLARINET WEALTH TEXTURE TRAIN SNAIL VIRGIN CANDY FRANTIC MASTER TRUTH ADDRESS DINNER PRACTICAL WORTHY FRONTIER MYSTERY INSTRUMENT ZEBRA CABOOSE WATER SUMMER FRIEND MAGIC LANDMARK SYMPHONY QUALITY DANCE MARKET ELEPHANT PEPPER SURPRISE STRAIGHT CLOUDS MISSION WISDOM POLKA POTATO SING HONOR SMOOTH LUXURY DIAMOND CELEBRATE BOUNCE MAVERICK CHANCE CHAMPION CAPITAL BALLOON CUDDLE APPROVE QUESTION SCAFFOLD SITUATION POWER BEACH STYLE APPLE STRUGGLE STRENGTH VACUUM WEEKEND REGULAR HUSBAND ORBIT STATION CLEVER UNANIMOUS SWING PARTNER CONTRACT CHANGE SPEARHEAD WARM BOOKKEEPER ELECTRONIC TRAVEL BLOSSOM PRINT NURSE HOME VALLEY IMPORT DRINK POPULAR DOCTOR SHIELD HARNESS MOTOR BIRTHDAY CALCULATE AWARD TROPHY DONATE UNION RESPOND STOCK CONTINUE BRICK EMOTION BREAST VIOLENCE ELECT COLLEGE STRONG AFTERNOON CONDITION SUMMIT AFFAIR EVENING RESTAURANT STROLL DAUGHTER BRIDGE HEART GLAMOUR SOLUTION ROMANTIC YOUNG INFLUENCE PURPOSE TRUCK SECRET STRIDE TRADITION SUCCESS JEALOUS DIRECT RESOURCE PROFIT ENTERTAIN ABUNDANT SUPERIOR SOCIAL COURTESY PROCESSION MARCH CREAM VOLUNTEER LOCAL FLOAT FAMILIAR PRIVATE STATUE GUARANTEE DOLPHIN PROMOTION PEARL NECKLACE SHIRT FIRST SAFETY BOARD BROAD TABLE DRAWER CLOTHES FINISH 11010 at $13d6 11011 two bits into $13d7 At automatic start it looks for the 11011 before randomizing out words, I think, at least game hangs if it is removed After accidentally entering too long words I wondered how the Hangman code would handle this so I tried compiling it intentionally with 13 letter words at first. This worked well but after a finishing word - not the entire screen is repainted, only middle part wich means 3/5 of the additional letter to the left and the other then letters. ( I wonder why they didn't use the BIOS clearscreen routine ) Screen in MESS easily fits 12 letters, if the cart code is patched to erase a larger part of the screen, 12 letter words would work just fine. I can't understand why the BIOS clearscreen routine isn't used. Perhaps it messes up some regsiters. I also tried 15 letter words, when getting the first letter correct it messes up the palette on four of the five rows that letters are written on. But the game plays just fine, it accepts input and after getting all 15 letters correct the man is not hung. The garbage stays on screen ofcourse In MESS the first letter is not visible, the second partially 3-14 is on screen and the 15th ouside. There's a limit somewhere ofcourse, I tried 30 letters, it didn't sort out that and letters were written over eachother - no change in palette though. I tried just the alphabet and at the end I got this: H I J K L M N O P A B C D and then the writing over started: H I J K L M N O P Q R S T with final result: X Y Z K L M N O P Q R S T I finally tried 16 letters, but it never accepts a correct word. Conclusion: Limit is 15 letters, displayed is only 13 letters with a pixelrow missing on the last one, if the code was patched to start writing letters one column to the left and all visible screen cleared in between games, a full 13 letters could be displayed and played in MESS. ENDIF