Firmware Guide (UK) (Disk 2 face 2) (19xx) [UTILITAIRE].dsk
   
Choose sector :
Size : 512 (Real : 512)
000000: 00 43 48 41 50 2D 31 35 20 D0 31 35 00 00 00 71 .CHAP-15 .15...q
000010: 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F 10 00 ................
000020: 00 43 48 41 50 2D 31 35 20 D0 31 36 00 00 00 80 .CHAP-15 .16....
000030: 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 ...............
000040: 00 43 48 41 50 2D 31 35 20 D0 31 36 01 00 00 04 .CHAP-15 .16....
000050: 21 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 !...............
000060: 00 43 48 41 50 2D 31 35 20 D0 31 37 00 00 00 80 .CHAP-15 .17....
000070: 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 "#$%&'()*+,-./01
000080: 00 43 48 41 50 2D 31 35 20 D0 31 37 01 00 00 01 .CHAP-15 .17....
000090: 32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 2...............
0000A0: 00 43 48 41 50 2D 31 35 20 D0 31 38 00 00 00 7D .CHAP-15 .18...}
0000B0: 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 3456789:;<=>?@AB
0000C0: 00 43 48 41 50 2D 31 35 20 D0 31 39 00 00 00 80 .CHAP-15 .19....
0000D0: 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 CDEFGHIJKLMNOPQR
0000E0: 00 43 48 41 50 2D 31 35 20 D0 31 39 01 00 00 02 .CHAP-15 .19....
0000F0: 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 S...............
000100: 00 43 48 41 50 2D 31 35 20 D0 32 30 00 00 00 80 .CHAP-15 .20....
000110: 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 TUVWXYZ[\]^_`abc
000120: 00 43 48 41 50 2D 31 35 20 D0 32 30 01 00 00 08 .CHAP-15 .20....
000130: 64 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d...............
000140: 00 43 48 41 50 2D 31 35 20 D0 32 31 00 00 00 80 .CHAP-15 .21....
000150: 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 efghijklmnopqrst
000160: 00 43 48 41 50 2D 31 35 20 D0 32 31 01 00 00 03 .CHAP-15 .21....
000170: 75 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 u...............
000180: 00 43 48 41 50 2D 31 35 20 D0 32 32 00 00 00 3D .CHAP-15 .22...=
000190: 76 77 78 79 7A 7B 7C 7D 00 00 00 00 00 00 00 00 vwxyz{|}........
0001A0: 00 43 48 41 50 2D 31 36 20 D0 31 20 00 00 00 80 .CHAP-16 .1 ....
0001B0: 7E 7F 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D ~...............
0001C0: 00 43 48 41 50 2D 31 36 20 D0 31 20 01 00 00 05 .CHAP-16 .1 ....
0001D0: 8E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
0001E0: 00 43 48 41 50 2D 31 36 20 D0 32 20 00 00 00 42 .CHAP-16 .2 ...B
0001F0: 8F 90 91 92 93 94 95 96 97 00 00 00 00 00 00 00 ................
Size : 512 (Real : 512)
000000: 00 43 48 41 50 2D 31 37 20 A0 20 20 00 00 00 80 .CHAP-17 . ....
000010: 98 99 9A 9B 9C 9D 9E 9F A0 A1 A2 A3 A4 A5 A6 A7 ................
000020: 00 43 48 41 50 2D 31 37 20 A0 20 20 01 00 00 08 .CHAP-17 . ....
000030: A8 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 54 68 65 20 70 72 6F 6D 70 74 20 6D 65 The prompt me
000020: 73 73 61 67 65 73 20 61 72 65 20 74 75 72 6E 65 ssages are turne
000030: 64 20 6F 6E 20 28 73 65 65 20 43 41 53 20 4E 4F d on (see CAS NO
000040: 49 53 59 29 20 62 79 20 74 68 69 73 20 72 6F 75 ISY) by this rou
000050: 74 69 6E 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 tine.......
000060: 20 20 57 68 65 6E 20 63 61 74 61 6C 6F 67 75 69 When catalogui
000070: 6E 67 20 74 68 65 20 43 61 73 73 65 74 74 65 20 ng the Cassette
000080: 4D 61 6E 61 67 65 72 20 72 65 61 64 73 20 74 68 Manager reads th
000090: 65 20 68 65 61 64 65 72 20 72 65 63 6F 72 64 2C e header record,
0000A0: 20 20 70 72 69 6E 74 73 0D 0A 20 20 20 20 20 20 prints..
0000B0: 20 69 6E 66 6F 72 6D 61 74 69 6F 6E 20 66 72 6F information fro
0000C0: 6D 20 69 74 20 61 6E 64 20 74 68 65 6E 20 72 65 m it and then re
0000D0: 61 64 73 20 74 68 65 20 64 61 74 61 20 72 65 63 ads the data rec
0000E0: 6F 72 64 2E 20 54 68 69 73 20 63 79 63 6C 65 20 ord. This cycle
0000F0: 72 65 70 65 61 74 73 0D 0A 20 20 20 20 20 20 20 repeats..
000100: 75 6E 74 69 6C 20 74 68 65 20 75 73 65 72 20 68 until the user h
000110: 69 74 73 20 74 68 65 20 65 73 63 61 70 65 20 6B its the escape k
000120: 65 79 2E 20 20 54 68 65 20 20 69 6E 66 6F 72 6D ey. The inform
000130: 61 74 69 6F 6E 20 20 70 72 69 6E 74 65 64 20 20 ation printed
000140: 69 73 20 20 61 73 0D 0A 20 20 20 20 20 20 20 66 is as.. f
000150: 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 ollows:......
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 46 49 4C FIL
000170: 45 4E 41 4D 45 20 62 6C 6F 63 6B 20 4E 20 54 20 ENAME block N T
000180: 4F 6B 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 Ok...... F
000190: 49 4C 45 4E 41 4D 45 20 69 73 20 74 68 65 20 6E ILENAME is the n
0001A0: 61 6D 65 20 6F 66 20 74 68 65 20 66 69 6C 65 20 ame of the file
0001B0: 6F 6E 20 74 68 65 20 74 61 70 65 2C 20 6F 72 20 on the tape, or
0001C0: 27 55 6E 6E 61 6D 65 64 20 66 69 6C 65 27 20 69 'Unnamed file' i
0001D0: 66 20 74 68 65 0D 0A 20 20 20 20 20 20 20 66 69 f the.. fi
0001E0: 6C 65 6E 61 6D 65 20 73 74 61 72 74 73 20 77 69 lename starts wi
0001F0: 74 68 20 61 20 6E 75 6C 6C 20 28 63 68 61 72 61 th a null (chara
Size : 512 (Real : 512)
000000: 63 74 65 72 20 23 30 30 29 2E 0D 0A 0D 0A 0D 0A cter #00).......
000010: 20 20 20 20 20 20 20 4E 20 69 73 20 74 68 65 20 N is the
000020: 62 6C 6F 63 6B 2E 20 42 6C 6F 63 6B 20 31 20 69 block. Block 1 i
000030: 73 20 6E 6F 72 6D 61 6C 6C 79 20 74 68 65 20 66 s normally the f
000040: 69 72 73 74 20 62 6C 6F 63 6B 20 69 6E 20 61 20 irst block in a
000050: 66 69 6C 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 file.......
000060: 20 20 54 20 69 73 20 61 20 72 65 70 72 65 73 65 T is a represe
000070: 6E 74 61 74 69 6F 6E 20 6F 66 20 74 68 65 20 66 ntation of the f
000080: 69 6C 65 20 74 79 70 65 20 6F 66 20 74 68 65 20 ile type of the
000090: 66 69 6C 65 2E 20 49 74 20 20 69 73 20 20 66 6F file. It is fo
0000A0: 72 6D 65 64 20 20 62 79 0D 0A 20 20 20 20 20 20 rmed by..
0000B0: 20 61 64 64 69 6E 67 20 23 32 34 20 28 74 68 65 adding #24 (the
0000C0: 20 63 68 61 72 61 63 74 65 72 20 27 24 27 29 20 character '$')
0000D0: 74 6F 20 74 68 65 20 66 69 6C 65 20 74 79 70 65 to the file type
0000E0: 20 62 79 74 65 20 6D 61 73 6B 65 64 20 20 77 69 byte masked wi
0000F0: 74 68 20 20 23 30 46 0D 0A 20 20 20 20 20 20 20 th #0F..
000100: 28 74 6F 20 72 65 6D 6F 76 65 20 74 68 65 20 76 (to remove the v
000110: 65 72 73 69 6F 6E 20 6E 75 6D 62 65 72 20 66 69 ersion number fi
000120: 65 6C 64 29 2E 20 20 54 68 65 20 20 73 74 61 6E eld). The stan
000130: 64 61 72 64 20 20 66 69 6C 65 20 20 74 79 70 65 dard file type
000140: 73 20 20 61 72 65 0D 0A 20 20 20 20 20 20 20 74 s are.. t
000150: 68 75 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 hus:......
000160: 20 20 20 20 20 20 20 20 20 20 24 20 20 20 20 20 $
000170: 20 20 20 20 61 20 42 41 53 49 43 20 70 72 6F 67 a BASIC prog
000180: 72 61 6D 20 66 69 6C 65 0D 0A 20 20 20 20 20 20 ram file..
000190: 20 20 20 20 20 20 20 20 20 20 25 20 20 20 20 20 %
0001A0: 20 20 20 20 61 20 70 72 6F 74 65 63 74 65 64 20 a protected
0001B0: 42 41 53 49 43 20 70 72 6F 67 72 61 6D 20 66 69 BASIC program fi
0001C0: 6C 65 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 le..
0001D0: 20 20 20 20 2A 20 20 20 20 20 20 20 20 20 61 6E * an
0001E0: 20 41 53 43 49 49 20 74 65 78 74 20 66 69 6C 65 ASCII text file
0001F0: 20 28 64 65 66 61 75 6C 74 20 66 69 6C 65 20 74 (default file t
Size : 512 (Real : 512)
000000: 79 70 65 29 0D 0A 20 20 20 20 20 20 20 20 20 20 ype)..
000010: 20 20 20 20 20 20 26 20 20 20 20 20 20 20 20 20 &
000020: 61 20 62 69 6E 61 72 79 20 66 69 6C 65 2E 0D 0A a binary file...
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 27 20 20 20 20 20 20 20 20 20 61 20 70 72 6F 74 ' a prot
000050: 65 63 74 65 64 20 62 69 6E 61 72 79 20 66 69 6C ected binary fil
000060: 65 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4F 74 e...... Ot
000070: 68 65 72 20 66 69 6C 65 20 74 79 70 65 73 20 61 her file types a
000080: 72 65 20 70 6F 73 73 69 62 6C 65 20 62 75 74 20 re possible but
000090: 77 69 6C 6C 20 6E 6F 74 20 68 61 76 65 20 62 65 will not have be
0000A0: 65 6E 20 20 77 72 69 74 74 65 6E 20 20 62 79 20 en written by
0000B0: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 42 41 53 the.. BAS
0000C0: 49 43 20 69 6E 20 20 74 68 65 20 6F 6E 2D 62 6F IC in the on-bo
0000D0: 61 72 64 20 52 4F 4D 2E 20 53 65 65 20 73 65 63 ard ROM. See sec
0000E0: 74 69 6F 6E 20 38 2E 34 20 66 6F 72 20 61 20 64 tion 8.4 for a d
0000F0: 65 73 63 72 69 70 74 69 6F 6E 20 20 6F 66 20 20 escription of
000100: 74 68 65 0D 0A 20 20 20 20 20 20 20 66 69 6C 65 the.. file
000110: 20 74 79 70 65 20 62 79 74 65 2E 0D 0A 0D 0A 0D type byte......
000120: 0A 20 20 20 20 20 20 20 4F 6B 20 69 73 20 70 72 . Ok is pr
000130: 69 6E 74 65 64 20 61 66 74 65 72 20 74 68 65 20 inted after the
000140: 65 6E 64 20 6F 66 20 74 68 65 20 64 61 74 61 20 end of the data
000150: 72 65 63 6F 72 64 2E 20 54 68 69 73 20 20 73 68 record. This sh
000160: 6F 77 73 20 20 74 68 61 74 20 20 74 68 65 0D 0A ows that the..
000170: 20 20 20 20 20 20 20 64 61 74 61 20 77 61 73 20 data was
000180: 72 65 61 64 20 77 69 74 68 6F 75 74 20 65 72 72 read without err
000190: 6F 72 73 20 61 6E 64 20 61 6C 73 6F 20 73 65 72 ors and also ser
0001A0: 76 65 73 20 74 6F 20 69 6E 64 69 63 61 74 65 20 ves to indicate
0001B0: 20 74 68 65 20 20 65 6E 64 20 20 6F 66 0D 0A 20 the end of..
0001C0: 20 20 20 20 20 20 74 68 65 20 64 61 74 61 20 6F the data o
0001D0: 6E 20 74 61 70 65 20 28 74 6F 20 68 65 6C 70 20 n tape (to help
0001E0: 61 76 6F 69 64 20 6F 76 65 72 2D 72 65 63 6F 72 avoid over-recor
0001F0: 64 69 6E 67 20 61 20 74 61 70 65 20 66 69 6C 65 ding a tape file
Size : 512 (Real : 512)
000000: 29 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ).........
000010: 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 Related entries
000020: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 41 :...... CA
000030: 53 20 43 41 54 41 4C 4F 47 20 28 44 49 53 43 29 S CATALOG (DISC)
000040: 0D 0A 20 20 20 20 20 20 20 43 41 53 20 4E 4F 49 .. CAS NOI
000050: 53 59 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A SY..............
000060: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000070: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
000080: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
000090: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
0000B0: 20 31 35 2E 31 36 30 0D 0A 0D 0A 0D 0A 0D 0A 0D 15.160.........
0000C0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 33 37 3A ..... 137:
0000D0: 20 43 41 53 20 43 41 54 41 4C 4F 47 20 28 44 49 CAS CATALOG (DI
0000E0: 53 43 29 20 20 20 20 20 20 20 20 20 20 20 20 20 SC)
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 43 #BC
000110: 39 42 0D 0A 0D 0A 20 20 20 20 20 20 20 44 69 73 9B.... Dis
000120: 70 6C 61 79 20 74 68 65 20 64 69 73 63 20 64 69 play the disc di
000130: 72 65 63 74 6F 72 79 0D 0A 0D 0A 20 20 20 20 20 rectory....
000140: 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 Action:....
000150: 20 20 20 20 44 69 73 70 6C 61 79 20 74 68 65 20 Display the
000160: 64 69 73 63 20 64 69 72 65 63 74 6F 72 79 20 66 disc directory f
000170: 6F 72 20 74 68 65 20 63 75 72 72 65 6E 74 20 64 or the current d
000180: 72 69 76 65 20 61 6E 64 20 63 75 72 72 65 6E 74 rive and current
000190: 20 75 73 65 72 2E 20 54 68 65 0D 0A 0D 0A 20 20 user. The....
0001A0: 20 20 20 20 20 64 69 72 65 63 74 6F 72 79 20 69 directory i
0001B0: 73 20 73 6F 72 74 65 64 20 69 6E 74 6F 20 61 6C s sorted into al
0001C0: 70 68 61 62 65 74 69 63 61 6C 20 6F 72 64 65 72 phabetical order
0001D0: 20 61 6E 64 20 64 69 73 70 6C 61 79 65 64 20 69 and displayed i
0001E0: 6E 20 20 61 73 20 20 6D 61 6E 79 0D 0A 20 20 20 n as many..
0001F0: 20 20 20 20 63 6F 6C 75 6D 6E 73 20 61 73 20 77 columns as w
Size : 512 (Real : 512)
000000: 69 6C 6C 20 66 69 74 20 69 6E 20 74 68 65 20 63 ill fit in the c
000010: 75 72 72 65 6E 74 20 74 65 78 74 20 77 69 6E 64 urrent text wind
000020: 6F 77 20 28 73 74 72 65 61 6D 23 30 29 2E 20 54 ow (stream#0). T
000030: 68 65 20 73 69 7A 65 20 69 6E 0D 0A 20 20 20 20 he size in..
000040: 20 20 20 4B 62 79 74 65 73 20 69 73 20 73 68 6F Kbytes is sho
000050: 77 6E 20 61 6C 6F 6E 67 20 73 69 64 65 20 65 61 wn along side ea
000060: 63 68 20 66 69 6C 65 2E 20 54 68 65 20 74 6F 74 ch file. The tot
000070: 61 6C 20 61 6D 6F 75 6E 74 20 6F 66 20 20 66 72 al amount of fr
000080: 65 65 20 20 73 70 61 63 65 0D 0A 20 20 20 20 20 ee space..
000090: 20 20 6F 6E 20 74 68 65 20 64 69 73 63 20 69 73 on the disc is
0000A0: 20 61 6C 73 6F 20 73 68 6F 77 6E 2E 0D 0A 0D 0A also shown.....
0000B0: 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E Entry con
0000C0: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 ditions:....
0000D0: 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 DE contains t
0000E0: 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 61 20 he address of a
0000F0: 32 4B 20 62 75 66 66 65 72 20 74 6F 20 75 73 65 2K buffer to use
000100: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 ..... Exit
000110: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000120: 20 20 20 20 20 20 20 49 66 20 74 68 65 20 63 61 If the ca
000130: 74 61 6C 6F 67 69 6E 67 20 77 65 6E 74 20 4F 4B taloging went OK
000140: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 :....
000150: 20 20 20 20 20 43 61 72 72 79 20 74 72 75 65 2E Carry true.
000160: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000170: 20 20 5A 65 72 6F 20 66 61 6C 73 65 2E 0D 0A 20 Zero false...
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 A
000190: 20 63 6F 72 72 75 70 74 2E 0D 0A 0D 0A 20 20 20 corrupt.....
0001A0: 20 20 20 20 49 66 20 66 61 69 6C 65 64 20 66 6F If failed fo
0001B0: 72 20 61 6E 79 20 72 65 61 73 6F 6E 3A 0D 0A 0D r any reason:...
0001C0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0001D0: 20 43 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 20 Carry false...
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5A Z
0001F0: 65 72 6F 20 74 72 75 65 2E 0D 0A 20 20 20 20 20 ero true...
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 41 20 63 6F 6E A con
000010: 74 61 69 6E 73 20 61 6E 20 65 72 72 6F 72 20 6E tains an error n
000020: 75 6D 62 65 72 2E 0D 0A 0D 0A 20 20 20 20 20 20 umber.....
000030: 20 41 6C 77 61 79 73 0D 0A 0D 0A 20 20 20 20 20 Always....
000040: 20 20 20 20 20 20 20 20 20 20 20 42 43 2C 44 45 BC,DE
000050: 2C 48 4C 2C 49 58 20 61 6E 64 20 6F 74 68 65 72 ,HL,IX and other
000060: 20 66 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D flags corrupt..
000070: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000080: 20 41 6C 6C 20 72 65 67 69 73 74 65 72 73 20 70 All registers p
000090: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 reserved.....
0000A0: 20 20 20 20 4E 4F 54 45 53 3A 0D 0A 0D 0A 20 20 NOTES:....
0000B0: 20 20 20 20 20 46 69 6C 65 73 20 6D 61 72 6B 65 Files marke
0000C0: 64 20 53 59 53 20 61 72 65 20 6E 6F 74 20 73 68 d SYS are not sh
0000D0: 6F 77 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 own.......
0000E0: 20 46 69 6C 65 73 20 6D 61 72 6B 65 64 20 52 2F Files marked R/
0000F0: 4F 20 61 72 65 20 73 68 6F 77 6E 20 77 69 74 68 O are shown with
000100: 20 61 20 27 2A 27 20 61 66 74 65 72 20 74 68 65 a '*' after the
000110: 20 66 69 6C 65 6E 61 6D 65 2E 0D 0A 0D 0A 0D 0A filename.......
000120: 20 20 20 20 20 20 20 55 6E 6C 69 6B 65 20 74 68 Unlike th
000130: 65 20 63 61 73 73 65 74 74 65 20 76 65 72 73 69 e cassette versi
000140: 6F 6E 20 6F 66 20 74 68 69 73 20 72 6F 75 74 69 on of this routi
000150: 6E 65 2C 20 74 68 65 20 64 69 73 63 20 69 6E 70 ne, the disc inp
000160: 75 74 20 73 74 72 65 61 6D 20 20 69 73 0D 0A 20 ut stream is..
000170: 20 20 20 20 20 20 6E 6F 74 20 72 65 71 75 69 72 not requir
000180: 65 64 2E 20 28 4E 6F 74 65 3A 20 42 41 53 49 43 ed. (Note: BASIC
000190: 20 61 62 61 6E 64 6F 6E 73 20 62 6F 74 68 20 74 abandons both t
0001A0: 68 65 20 69 6E 70 75 74 20 61 6E 64 20 6F 75 74 he input and out
0001B0: 70 75 74 20 20 73 74 72 65 61 6D 73 0D 0A 20 20 put streams..
0001C0: 20 20 20 20 20 77 68 65 6E 20 67 65 6E 65 72 61 when genera
0001D0: 74 69 6E 67 20 74 68 65 20 63 61 74 61 6C 6F 67 ting the catalog
0001E0: 75 65 2E 29 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ue.)........
0001F0: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
Size : 512 (Real : 512)
000000: 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 41 es:.... CA
000010: 53 20 43 41 54 41 4C 4F 47 0D 0A 20 20 20 20 20 S CATALOG..
000020: 20 20 7C 44 49 52 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A |DIR..........
000030: 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 .. AMSTRAD
000040: 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 CPC464/664/6128
000050: 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 FIRMWARE
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 20 20 20 70 61 67 65 20 31 35 2E 31 36 31 0D page 15.161.
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
000090: 20 20 20 20 31 33 38 3A 20 43 41 53 20 57 52 49 138: CAS WRI
0000A0: 54 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 TE
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 20 20 20 23 42 43 39 45 0D 0A 0D 0A 20 20 #BC9E....
0000E0: 20 20 20 20 20 57 72 69 74 65 20 61 20 72 65 63 Write a rec
0000F0: 6F 72 64 20 74 6F 20 74 61 70 65 2E 0D 0A 0D 0A ord to tape.....
000100: 20 20 20 20 20 20 20 41 63 74 69 6F 6E 2E 0D 0A Action...
000110: 0D 0A 20 20 20 20 20 20 20 57 72 69 74 65 20 61 .. Write a
000120: 20 72 65 63 6F 72 64 20 74 6F 20 74 68 65 20 63 record to the c
000130: 61 73 73 65 74 74 65 2E 20 54 68 69 73 20 72 6F assette. This ro
000140: 75 74 69 6E 65 20 69 73 20 20 75 73 65 64 20 20 utine is used
000150: 62 79 20 20 74 68 65 20 20 68 69 67 68 65 72 0D by the higher.
000160: 0A 20 20 20 20 20 20 20 6C 65 76 65 6C 20 72 6F . level ro
000170: 75 74 69 6E 65 73 20 28 43 41 53 20 4F 55 54 20 utines (CAS OUT
000180: 43 48 41 52 2C 20 43 41 53 20 4F 55 54 20 44 49 CHAR, CAS OUT DI
000190: 52 45 43 54 20 61 6E 64 20 20 43 41 53 20 20 4F RECT and CAS O
0001A0: 55 54 20 20 43 4C 4F 53 45 29 20 20 74 6F 0D 0A UT CLOSE) to..
0001B0: 20 20 20 20 20 20 20 77 72 69 74 65 20 74 68 65 write the
0001C0: 20 68 65 61 64 65 72 20 61 6E 64 20 64 61 74 61 header and data
0001D0: 20 72 65 63 6F 72 64 73 20 74 68 61 74 20 6D 61 records that ma
0001E0: 6B 65 20 75 70 20 61 20 74 61 70 65 20 66 69 6C ke up a tape fil
0001F0: 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 e..... Ent
Size : 512 (Real : 512)
000000: 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A ry conditions:..
000010: 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 .. HL cont
000020: 61 69 6E 73 20 74 68 65 20 61 64 64 72 65 73 73 ains the address
000030: 20 6F 66 20 74 68 65 20 64 61 74 61 20 74 6F 20 of the data to
000040: 77 72 69 74 65 2E 0D 0A 20 20 20 20 20 20 20 44 write... D
000050: 45 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 6C E contains the l
000060: 65 6E 67 74 68 20 6F 66 20 74 68 65 20 64 61 74 ength of the dat
000070: 61 20 74 6F 20 77 72 69 74 65 2E 0D 0A 20 20 20 a to write...
000080: 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 74 A contains t
000090: 68 65 20 73 79 6E 63 20 63 68 61 72 61 63 74 65 he sync characte
0000A0: 72 20 74 6F 20 77 72 69 74 65 20 61 74 20 74 68 r to write at th
0000B0: 65 20 65 6E 64 20 6F 66 20 74 68 65 20 6C 65 61 e end of the lea
0000C0: 64 65 72 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 der..... E
0000D0: 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D xit conditions:.
0000E0: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 ... If the
0000F0: 20 72 65 63 6F 72 64 20 77 61 73 20 77 72 69 74 record was writ
000100: 74 65 6E 20 4F 4B 3A 0D 0A 0D 0A 20 20 20 20 20 ten OK:....
000110: 20 20 20 20 20 20 20 20 20 20 20 43 61 72 72 79 Carry
000120: 20 74 72 75 65 2E 0D 0A 20 20 20 20 20 20 20 20 true...
000130: 20 20 20 20 20 20 20 20 41 20 63 6F 72 72 75 70 A corrup
000140: 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 t..... If
000150: 61 6E 20 65 72 72 6F 72 20 6F 63 63 75 72 72 65 an error occurre
000160: 64 20 6F 72 20 74 68 65 20 75 73 65 72 20 68 69 d or the user hi
000170: 74 20 65 73 63 61 70 65 3A 0D 0A 0D 0A 20 20 20 t escape:....
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 43 61 72 Car
000190: 72 79 20 66 61 6C 73 65 2E 0D 0A 20 20 20 20 20 ry false...
0001A0: 20 20 20 20 20 20 20 20 20 20 20 41 20 63 6F 6E A con
0001B0: 74 61 69 6E 73 20 61 6E 20 65 72 72 6F 72 20 63 tains an error c
0001C0: 6F 64 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ode..... A
0001D0: 6C 77 61 79 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 lways:....
0001E0: 20 20 20 20 20 20 20 20 20 20 42 43 2C 20 44 45 BC, DE
0001F0: 2C 20 48 4C 2C 20 49 58 20 63 6F 72 72 75 70 74 , HL, IX corrupt
Size : 512 (Real : 512)
000000: 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000010: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000020: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
000030: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 ..... Note
000040: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 s:...... A
000050: 20 64 61 74 61 20 6C 65 6E 67 74 68 20 6F 66 20 data length of
000060: 30 20 70 61 73 73 65 64 20 74 6F 20 74 68 69 73 0 passed to this
000070: 20 72 6F 75 74 69 6E 65 20 69 73 20 74 61 6B 65 routine is take
000080: 6E 20 74 6F 20 6D 65 61 6E 20 36 35 35 33 36 20 n to mean 65536
000090: 62 79 74 65 73 0D 0A 20 20 20 20 20 20 20 61 6E bytes.. an
0000A0: 64 20 61 6C 6C 20 6F 66 20 74 68 65 20 6D 65 6D d all of the mem
0000B0: 6F 72 79 20 77 69 6C 6C 20 62 65 20 77 72 69 74 ory will be writ
0000C0: 74 65 6E 20 74 6F 20 74 61 70 65 2E 20 28 54 68 ten to tape. (Th
0000D0: 69 73 20 69 73 20 75 6E 6C 69 6B 65 6C 79 20 74 is is unlikely t
0000E0: 6F 20 62 65 0D 0A 20 20 20 20 20 20 20 75 73 65 o be.. use
0000F0: 66 75 6C 29 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ful).......
000100: 20 20 54 68 65 20 64 61 74 61 20 74 6F 20 62 65 The data to be
000110: 20 77 72 69 74 74 65 6E 20 6D 61 79 20 6C 69 65 written may lie
000120: 20 61 6E 79 77 68 65 72 65 20 69 6E 20 52 41 4D anywhere in RAM
000130: 2C 20 65 76 65 6E 20 75 6E 64 65 72 6E 65 61 74 , even underneat
000140: 68 20 61 20 52 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 20 h a ROM.......
000150: 20 20 20 20 20 54 68 65 20 73 79 6E 63 20 63 68 The sync ch
000160: 61 72 61 63 74 65 72 20 69 73 20 75 73 65 64 20 aracter is used
000170: 74 6F 20 64 69 73 74 69 6E 67 75 69 73 68 20 68 to distinguish h
000180: 65 61 64 65 72 20 72 65 63 6F 72 64 73 20 28 73 eader records (s
000190: 79 6E 63 20 69 73 20 23 32 43 29 0D 0A 20 20 20 ync is #2C)..
0001A0: 20 20 20 20 66 72 6F 6D 20 64 61 74 61 20 72 65 from data re
0001B0: 63 6F 72 64 73 20 28 73 79 6E 63 20 69 73 20 23 cords (sync is #
0001C0: 31 36 29 2E 20 4F 74 68 65 72 20 73 79 6E 63 20 16). Other sync
0001D0: 63 68 61 72 61 63 74 65 72 73 20 63 6F 75 6C 64 characters could
0001E0: 20 20 62 65 20 20 75 73 65 64 0D 0A 20 20 20 20 be used..
0001F0: 20 20 20 62 75 74 20 74 68 65 20 72 65 73 75 6C but the resul
Size : 512 (Real : 512)
000000: 74 69 6E 67 20 72 65 63 6F 72 64 20 77 6F 75 6C ting record woul
000010: 64 20 72 65 71 75 69 72 65 20 73 70 65 63 69 61 d require specia
000020: 6C 20 61 63 74 69 6F 6E 20 74 6F 20 62 65 20 20 l action to be
000030: 74 61 6B 65 6E 20 20 74 6F 0D 0A 20 20 20 20 20 taken to..
000040: 20 20 72 65 61 64 20 69 74 2E 0D 0A 0D 0A 0D 0A read it.......
000050: 20 20 20 20 20 20 20 54 68 65 20 65 72 72 6F 72 The error
000060: 20 63 6F 64 65 73 20 72 65 74 75 72 6E 65 64 20 codes returned
000070: 62 79 20 74 68 69 73 20 72 6F 75 74 69 6E 65 20 by this routine
000080: 61 72 65 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 are:....
000090: 20 20 20 20 20 20 20 20 30 20 20 20 20 42 72 65 0 Bre
0000A0: 61 6B 20 20 20 20 20 20 20 20 20 20 54 68 65 20 ak The
0000B0: 75 73 65 72 20 68 69 74 20 74 68 65 20 65 73 63 user hit the esc
0000C0: 61 70 65 20 6B 65 79 2E 0D 0A 20 20 20 20 20 20 ape key...
0000D0: 20 20 20 20 20 20 20 20 20 20 31 20 20 20 20 4F 1 O
0000E0: 76 65 72 72 75 6E 20 20 20 20 20 20 20 20 54 68 verrun Th
0000F0: 65 20 43 61 73 73 65 74 74 65 20 4D 61 6E 61 67 e Cassette Manag
000100: 65 72 20 77 61 73 20 20 75 6E 61 62 6C 65 20 20 er was unable
000110: 74 6F 20 20 67 65 74 0D 0A 20 20 20 20 20 20 20 to get..
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 62 61 63 bac
000140: 6B 20 74 6F 20 77 72 69 74 69 6E 67 20 61 20 62 k to writing a b
000150: 69 74 20 66 61 73 74 20 65 6E 6F 75 67 68 2E 0D it fast enough..
000160: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000170: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000180: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
0001B0: 31 35 2E 31 36 32 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.162..........
0001C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 42 65 63 61 75 .... Becau
0001D0: 73 65 20 20 72 65 61 64 69 6E 67 20 20 61 6E 64 se reading and
0001E0: 20 20 77 72 69 74 69 6E 67 20 20 74 68 65 20 20 writing the
0001F0: 74 61 70 65 20 20 72 65 71 75 69 72 65 73 20 20 tape requires
Size : 512 (Real : 512)
000000: 73 74 72 69 6E 67 65 6E 74 20 20 74 69 6D 69 6E stringent timin
000010: 67 0D 0A 20 20 20 20 20 20 20 63 6F 6E 73 69 64 g.. consid
000020: 65 72 61 74 69 6F 6E 73 20 69 6E 74 65 72 72 75 erations interru
000030: 70 74 73 20 20 61 72 65 20 20 64 69 73 61 62 6C pts are disabl
000040: 65 64 20 20 77 68 69 6C 73 74 20 20 74 68 65 20 ed whilst the
000050: 20 74 61 70 65 20 20 69 73 20 20 62 65 69 6E 67 tape is being
000060: 0D 0A 20 20 20 20 20 20 20 77 72 69 74 74 65 6E .. written
000070: 20 28 70 6F 74 65 6E 74 69 61 6C 6C 79 20 20 61 (potentially a
000080: 20 20 70 65 72 69 6F 64 20 20 6F 66 20 20 6F 76 period of ov
000090: 65 72 20 20 35 20 20 6D 69 6E 75 74 65 73 29 2E er 5 minutes).
0000A0: 20 20 49 74 20 20 77 6F 75 6C 64 20 20 62 65 0D It would be.
0000B0: 0A 20 20 20 20 20 20 20 75 6E 70 6C 65 61 73 61 . unpleasa
0000C0: 6E 74 20 74 6F 20 68 61 76 65 20 74 68 65 20 73 nt to have the s
0000D0: 6F 75 6E 64 20 63 68 69 70 20 6D 61 6B 69 6E 67 ound chip making
0000E0: 20 61 20 6E 6F 69 73 65 20 66 6F 72 20 61 6C 6C a noise for all
0000F0: 20 74 68 69 73 20 74 69 6D 65 20 20 73 6F 0D 0A this time so..
000100: 20 20 20 20 20 20 20 74 68 65 20 53 6F 75 6E 64 the Sound
000110: 20 4D 61 6E 61 67 65 72 20 69 73 20 73 68 75 74 Manager is shut
000120: 20 64 6F 77 6E 20 28 53 4F 55 4E 44 20 52 45 53 down (SOUND RES
000130: 45 54 29 2E 20 57 68 65 6E 20 77 72 69 74 69 6E ET). When writin
000140: 67 20 74 6F 20 74 68 65 20 74 61 70 65 0D 0A 20 g to the tape..
000150: 20 20 20 20 20 20 68 61 73 20 66 69 6E 69 73 68 has finish
000160: 65 64 20 69 6E 74 65 72 72 75 70 74 73 20 61 72 ed interrupts ar
000170: 65 20 72 65 2D 65 6E 61 62 6C 65 64 2E 0D 0A 0D e re-enabled....
000180: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
000190: 63 61 73 73 65 74 74 65 20 6D 6F 74 6F 72 20 69 cassette motor i
0001A0: 73 20 73 74 61 72 74 65 64 20 62 79 20 74 68 69 s started by thi
0001B0: 73 20 20 72 6F 75 74 69 6E 65 20 20 28 69 6E 20 s routine (in
0001C0: 20 63 61 73 65 20 20 69 74 20 20 69 73 20 20 6E case it is n
0001D0: 6F 74 0D 0A 20 20 20 20 20 20 20 61 6C 72 65 61 ot.. alrea
0001E0: 64 79 20 6F 6E 29 20 61 6E 64 20 20 72 65 73 74 dy on) and rest
0001F0: 6F 72 65 64 20 20 74 6F 20 20 69 74 73 20 20 70 ored to its p
Size : 512 (Real : 512)
000000: 72 65 76 69 6F 75 73 20 20 73 74 61 74 65 20 20 revious state
000010: 77 68 65 6E 20 20 77 72 69 74 69 6E 67 20 20 69 when writing i
000020: 73 0D 0A 20 20 20 20 20 20 20 63 6F 6D 70 6C 65 s.. comple
000030: 74 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ted...........
000040: 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 Related ent
000050: 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 ries:........
000060: 20 20 20 20 43 41 53 20 43 48 45 43 4B 0D 0A 20 CAS CHECK..
000070: 20 20 20 20 20 20 43 41 53 20 52 45 41 44 0D 0A CAS READ..
000080: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000090: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000A0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000B0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000C0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
0000D0: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
0000E0: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
0000F0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
000100: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
000110: 20 31 35 2E 31 36 33 0D 0A 0D 0A 0D 0A 0D 0A 0D 15.163.........
000120: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 33 39 3A ..... 139:
000130: 20 43 41 53 20 52 45 41 44 20 20 20 20 20 20 20 CAS READ
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 43 #BC
000170: 41 31 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 61 A1.... Rea
000180: 64 20 61 20 72 65 63 6F 72 64 20 66 72 6F 6D 20 d a record from
000190: 74 61 70 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 tape.....
0001A0: 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 Action:....
0001B0: 20 20 52 65 61 64 20 61 20 77 68 6F 6C 65 20 72 Read a whole r
0001C0: 65 63 6F 72 64 20 66 72 6F 6D 20 74 68 65 20 63 ecord from the c
0001D0: 61 73 73 65 74 74 65 2E 20 54 68 69 73 20 72 6F assette. This ro
0001E0: 75 74 69 6E 65 20 20 69 73 20 20 75 73 65 64 20 utine is used
0001F0: 20 62 79 20 20 74 68 65 0D 0A 20 20 20 20 20 20 by the..
Size : 512 (Real : 512)
000000: 20 68 69 67 68 65 72 20 6C 65 76 65 6C 20 72 6F higher level ro
000010: 75 74 69 6E 65 73 20 28 43 41 53 20 49 4E 20 43 utines (CAS IN C
000020: 48 41 52 2C 20 43 41 53 20 20 49 4E 20 20 44 49 HAR, CAS IN DI
000030: 52 45 43 54 20 20 61 6E 64 20 20 43 41 53 20 20 RECT and CAS
000040: 43 41 54 41 4C 4F 47 0D 0A 20 20 20 20 20 20 20 CATALOG..
000050: 61 6D 6F 6E 67 73 74 20 6F 74 68 65 72 73 29 20 amongst others)
000060: 74 6F 20 72 65 61 64 20 74 68 65 20 68 65 61 64 to read the head
000070: 65 72 20 61 6E 64 20 64 61 74 61 20 72 65 63 6F er and data reco
000080: 72 64 73 20 20 74 68 61 74 20 20 6D 61 6B 65 20 rds that make
000090: 20 75 70 20 20 61 0D 0A 20 20 20 20 20 20 20 66 up a.. f
0000A0: 69 6C 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 ile..... E
0000B0: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
0000C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 6F .... HL co
0000D0: 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 72 65 ntains the addre
0000E0: 73 73 20 74 6F 20 70 75 74 20 74 68 65 20 64 61 ss to put the da
0000F0: 74 61 20 72 65 61 64 2E 0D 0A 20 20 20 20 20 20 ta read...
000100: 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 DE contains the
000110: 20 6C 65 6E 67 74 68 20 6F 66 20 74 68 65 20 64 length of the d
000120: 61 74 61 20 74 6F 20 72 65 61 64 2E 0D 0A 20 20 ata to read...
000130: 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 A contains
000140: 74 68 65 20 73 79 6E 63 20 63 68 61 72 61 63 74 the sync charact
000150: 65 72 20 65 78 70 65 63 74 65 64 20 61 74 20 74 er expected at t
000160: 68 65 20 65 6E 64 20 6F 66 20 74 68 65 20 6C 65 he end of the le
000170: 61 64 65 72 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 ader.....
000180: 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A Exit conditions:
000190: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 72 65 .... If re
0001A0: 63 6F 72 64 20 77 61 73 20 72 65 61 64 20 4F 4B cord was read OK
0001B0: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 :....
0001C0: 20 20 20 20 20 43 61 72 72 79 20 74 72 75 65 2E Carry true.
0001D0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
0001E0: 20 20 41 20 63 6F 72 72 75 70 74 2E 0D 0A 0D 0A A corrupt.....
0001F0: 20 20 20 20 20 20 20 49 66 20 61 6E 20 65 72 72 If an err
Size : 512 (Real : 512)
000000: 6F 72 20 6F 63 63 75 72 72 65 64 20 6F 72 20 74 or occurred or t
000010: 68 65 20 75 73 65 72 20 68 69 74 20 65 73 63 61 he user hit esca
000020: 70 65 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 pe:....
000030: 20 20 20 20 20 20 20 43 61 72 72 79 20 66 61 6C Carry fal
000040: 73 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 se...
000050: 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 A contains
000060: 61 6E 20 65 72 72 6F 72 20 63 6F 64 65 2E 0D 0A an error code...
000070: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C 77 61 79 .... Alway
000080: 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 s:....
000090: 20 20 20 20 20 20 42 43 2C 20 44 45 2C 20 48 4C BC, DE, HL
0000A0: 2C 20 49 58 20 61 6E 64 20 6F 74 68 65 72 20 66 , IX and other f
0000B0: 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 lags corrupt...
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 A
0000D0: 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 ll other registe
0000E0: 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D rs preserved....
0000F0: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A ... Notes:
000100: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 64 ...... A d
000110: 61 74 61 20 6C 65 6E 67 74 68 20 6F 66 20 30 20 ata length of 0
000120: 70 61 73 73 65 64 20 74 6F 20 74 68 69 73 20 20 passed to this
000130: 72 6F 75 74 69 6E 65 20 20 69 73 20 20 74 61 6B routine is tak
000140: 65 6E 20 20 74 6F 20 20 6D 65 61 6E 20 20 36 35 en to mean 65
000150: 35 33 36 0D 0A 20 20 20 20 20 20 20 62 79 74 65 536.. byte
000160: 73 2E 20 28 54 68 69 73 20 69 73 20 6E 6F 74 20 s. (This is not
000170: 75 73 65 66 75 6C 29 2E 0D 0A 0D 0A 0D 0A 20 20 useful).......
000180: 20 20 20 20 20 49 74 20 69 73 20 6E 6F 74 20 6E It is not n
000190: 65 63 65 73 73 61 72 79 20 74 6F 20 72 65 61 64 ecessary to read
0001A0: 20 61 20 77 68 6F 6C 65 20 72 65 63 6F 72 64 20 a whole record
0001B0: 66 72 6F 6D 20 74 61 70 65 2E 20 20 49 66 20 20 from tape. If
0001C0: 74 68 65 20 20 6C 65 6E 67 74 68 0D 0A 20 20 20 the length..
0001D0: 20 20 20 20 70 61 73 73 65 64 20 69 73 20 6C 65 passed is le
0001E0: 73 73 20 74 68 61 6E 20 74 68 65 20 61 63 74 75 ss than the actu
0001F0: 61 6C 20 6C 65 6E 67 74 68 20 6F 66 20 20 74 68 al length of th
Size : 512 (Real : 512)
000000: 65 20 20 72 65 63 6F 72 64 20 20 74 68 65 6E 20 e record then
000010: 20 6F 6E 6C 79 20 20 74 68 65 0D 0A 20 20 20 20 only the..
000020: 20 20 20 6E 75 6D 62 65 72 20 6F 66 20 62 79 74 number of byt
000030: 65 73 20 77 69 6C 6C 20 62 65 20 72 65 61 64 2E es will be read.
000040: 20 54 72 79 69 6E 67 20 74 6F 20 72 65 61 64 20 Trying to read
000050: 6D 6F 72 65 20 62 79 74 65 73 20 66 72 6F 6D 20 more bytes from
000060: 61 20 20 72 65 63 6F 72 64 0D 0A 20 20 20 20 20 a record..
000070: 20 20 74 68 61 6E 20 77 65 72 65 20 77 72 69 74 than were writ
000080: 74 65 6E 20 77 69 6C 6C 20 70 72 6F 64 75 63 65 ten will produce
000090: 20 61 6E 20 65 72 72 6F 72 2C 20 20 75 73 75 61 an error, usua
0000A0: 6C 6C 79 20 20 61 6E 20 20 6F 76 65 72 66 6C 6F lly an overflo
0000B0: 77 20 20 65 72 72 6F 72 0D 0A 20 20 20 20 20 20 w error..
0000C0: 20 28 73 65 65 20 62 65 6C 6F 77 29 2E 0D 0A 0D (see below)....
0000D0: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 73 79 ... The sy
0000E0: 6E 63 20 63 68 61 72 61 63 74 65 72 20 69 73 20 nc character is
0000F0: 75 73 65 64 20 74 6F 20 64 69 73 74 69 6E 67 75 used to distingu
000100: 69 73 68 20 68 65 61 64 65 72 20 72 65 63 6F 72 ish header recor
000110: 64 73 20 28 73 79 6E 63 20 69 73 20 23 32 43 29 ds (sync is #2C)
000120: 0D 0A 20 20 20 20 20 20 20 66 72 6F 6D 20 64 61 .. from da
000130: 74 61 20 72 65 63 6F 72 64 73 20 28 73 79 6E 63 ta records (sync
000140: 20 69 73 20 23 31 36 29 2E 20 4F 74 68 65 72 20 is #16). Other
000150: 73 79 6E 63 20 63 68 61 72 61 63 74 65 72 73 20 sync characters
000160: 63 6F 75 6C 64 20 20 62 65 20 20 75 73 65 64 0D could be used.
000170: 0A 20 20 20 20 20 20 20 69 66 20 74 68 65 20 72 . if the r
000180: 65 63 6F 72 64 20 77 61 73 20 77 72 69 74 74 65 ecord was writte
000190: 6E 20 74 68 61 74 20 77 61 79 2E 0D 0A 0D 0A 0D n that way......
0001A0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
0001B0: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
0001C0: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
0001F0: 31 35 2E 31 36 34 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.164..........
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 65 .... The e
000010: 72 72 6F 72 20 63 6F 64 65 73 20 72 65 74 75 72 rror codes retur
000020: 6E 65 64 20 62 79 20 74 68 69 73 20 72 6F 75 74 ned by this rout
000030: 69 6E 65 20 61 72 65 3A 0D 0A 0D 0A 0D 0A 20 20 ine are:......
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 30 20 0
000050: 20 20 20 42 72 65 61 6B 20 20 20 20 20 20 20 20 Break
000060: 20 20 54 68 65 20 75 73 65 72 20 68 69 74 20 74 The user hit t
000070: 68 65 20 65 73 63 61 70 65 20 6B 65 79 2E 0D 0A he escape key...
000080: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
000090: 20 20 20 20 31 20 20 20 20 4F 76 65 72 66 6C 6F 1 Overflo
0000A0: 77 20 20 20 20 20 20 20 54 68 65 20 43 61 73 73 w The Cass
0000B0: 65 74 74 65 20 4D 61 6E 61 67 65 72 20 66 6F 75 ette Manager fou
0000C0: 6E 64 20 61 20 62 69 74 20 74 68 61 74 20 77 61 nd a bit that wa
0000D0: 73 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 s..
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 20 20 20 20 20 20 20 74 6F 6F 20 6C 6F 6E 67 20 too long
000100: 74 6F 20 72 65 61 64 2E 0D 0A 0D 0A 0D 0A 20 20 to read.......
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 32 20 2
000120: 20 20 20 43 52 43 20 20 20 20 20 20 20 20 20 20 CRC
000130: 20 20 41 20 43 52 43 20 66 61 69 6C 75 72 65 20 A CRC failure
000140: 77 61 73 20 64 65 74 65 63 74 65 64 2E 0D 0A 0D was detected....
000150: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 63 61 ... The ca
000160: 73 73 65 74 74 65 20 6D 6F 74 6F 72 20 69 73 20 ssette motor is
000170: 73 74 61 72 74 65 64 20 62 79 20 74 68 69 73 20 started by this
000180: 20 72 6F 75 74 69 6E 65 20 20 28 69 6E 20 20 63 routine (in c
000190: 61 73 65 20 20 69 74 20 20 69 73 20 20 6E 6F 74 ase it is not
0001A0: 0D 0A 20 20 20 20 20 20 20 61 6C 72 65 61 64 79 .. already
0001B0: 20 6F 6E 29 20 61 6E 64 20 20 72 65 73 74 6F 72 on) and restor
0001C0: 65 64 20 20 74 6F 20 20 69 74 73 20 20 70 72 65 ed to its pre
0001D0: 76 69 6F 75 73 20 20 73 74 61 74 65 20 20 77 68 vious state wh
0001E0: 65 6E 20 20 72 65 61 64 69 6E 67 20 20 69 73 0D en reading is.
0001F0: 0A 20 20 20 20 20 20 20 63 6F 6D 70 6C 65 74 65 . complete
Size : 512 (Real : 512)
000000: 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 42 d....... B
000010: 65 63 61 75 73 65 20 20 72 65 61 64 69 6E 67 20 ecause reading
000020: 20 74 68 65 20 20 74 61 70 65 20 20 72 65 71 75 the tape requ
000030: 69 72 65 73 20 20 73 74 72 69 6E 67 65 6E 74 20 ires stringent
000040: 20 74 69 6D 69 6E 67 20 20 63 6F 6E 73 74 72 61 timing constra
000050: 69 6E 74 73 2C 0D 0A 20 20 20 20 20 20 20 69 6E ints,.. in
000060: 74 65 72 72 75 70 74 73 20 61 72 65 20 64 69 73 terrupts are dis
000070: 61 62 6C 65 64 20 77 68 69 6C 73 74 20 74 68 65 abled whilst the
000080: 20 74 61 70 65 20 69 73 20 62 65 69 6E 67 20 72 tape is being r
000090: 65 61 64 20 20 28 70 6F 74 65 6E 74 69 61 6C 6C ead (potentiall
0000A0: 79 20 20 61 0D 0A 20 20 20 20 20 20 20 70 65 72 y a.. per
0000B0: 69 6F 64 20 6F 66 20 6F 76 65 72 20 35 20 6D 69 iod of over 5 mi
0000C0: 6E 75 74 65 73 29 2E 20 49 74 20 77 6F 75 6C 64 nutes). It would
0000D0: 20 62 65 20 75 6E 70 6C 65 61 73 61 6E 74 20 74 be unpleasant t
0000E0: 6F 20 20 68 61 76 65 20 20 74 68 65 20 20 73 6F o have the so
0000F0: 75 6E 64 0D 0A 20 20 20 20 20 20 20 63 68 69 70 und.. chip
000100: 20 6D 61 6B 69 6E 67 20 61 20 6E 6F 69 73 65 20 making a noise
000110: 66 6F 72 20 61 6C 6C 20 74 68 69 73 20 74 69 6D for all this tim
000120: 65 20 73 6F 20 74 68 65 20 20 53 6F 75 6E 64 20 e so the Sound
000130: 20 4D 61 6E 61 67 65 72 20 20 69 73 20 20 73 68 Manager is sh
000140: 75 74 0D 0A 20 20 20 20 20 20 20 64 6F 77 6E 20 ut.. down
000150: 28 53 4F 55 4E 44 20 52 45 53 45 54 29 2E 20 57 (SOUND RESET). W
000160: 68 65 6E 20 72 65 61 64 69 6E 67 20 66 72 6F 6D hen reading from
000170: 20 74 68 65 20 74 61 70 65 20 68 61 73 20 66 69 the tape has fi
000180: 6E 69 73 68 65 64 20 69 6E 74 65 72 72 75 70 74 nished interrupt
000190: 73 0D 0A 20 20 20 20 20 20 20 61 72 65 20 72 65 s.. are re
0001A0: 2D 65 6E 61 62 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D -enabled........
0001B0: 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 ... Relate
0001C0: 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A d entries:......
0001D0: 20 20 20 20 20 20 20 43 41 53 20 43 48 45 43 4B CAS CHECK
0001E0: 0D 0A 20 20 20 20 20 20 20 43 41 53 20 57 52 49 .. CAS WRI
0001F0: 54 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A TE..............
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000010: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000020: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
000030: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
000040: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000060: 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 page 1
000070: 35 2E 31 36 35 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 5.165...........
000080: 0A 0D 0A 20 20 20 20 20 20 20 31 34 30 3A 20 43 ... 140: C
000090: 41 53 20 43 48 45 43 4B 20 20 20 20 20 20 20 20 AS CHECK
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 23 42 43 41 34 #BCA4
0000D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 43 6F 6D 70 61 .... Compa
0000E0: 72 65 20 61 20 72 65 63 6F 72 64 20 6F 6E 20 74 re a record on t
0000F0: 61 70 65 20 77 69 74 68 20 74 68 65 20 63 6F 6E ape with the con
000100: 74 65 6E 74 73 20 6F 66 20 73 74 6F 72 65 2E 0D tents of store..
000110: 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E ... Action
000120: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 68 65 63 :.... Chec
000130: 6B 20 74 68 61 74 20 61 20 74 61 70 65 20 72 65 k that a tape re
000140: 63 6F 72 64 20 20 63 6F 6E 74 61 69 6E 73 20 20 cord contains
000150: 61 20 20 63 6F 72 72 65 63 74 20 20 76 65 72 73 a correct vers
000160: 69 6F 6E 20 20 6F 66 20 20 74 68 65 20 20 64 61 ion of the da
000170: 74 61 0D 0A 20 20 20 20 20 20 20 73 75 70 70 6C ta.. suppl
000180: 69 65 64 2E 20 54 68 69 73 20 72 6F 75 74 69 6E ied. This routin
000190: 65 20 69 73 20 69 6E 74 65 6E 64 65 64 20 74 6F e is intended to
0001A0: 20 62 65 20 75 73 65 64 20 61 66 74 65 72 20 77 be used after w
0001B0: 72 69 74 69 6E 67 20 72 65 63 6F 72 64 73 20 74 riting records t
0001C0: 6F 0D 0A 20 20 20 20 20 20 20 63 68 65 63 6B 20 o.. check
0001D0: 74 68 61 74 20 74 68 65 79 20 77 65 72 65 20 77 that they were w
0001E0: 72 69 74 74 65 6E 20 63 6F 72 72 65 63 74 6C 79 ritten correctly
0001F0: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 ..... Entr
Size : 512 (Real : 512)
000000: 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D y conditions:...
000010: 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 . HL conta
000020: 69 6E 73 20 74 68 65 20 61 64 64 72 65 73 73 20 ins the address
000030: 6F 66 20 74 68 65 20 64 61 74 61 20 74 6F 20 63 of the data to c
000040: 68 65 63 6B 2E 0D 0A 20 20 20 20 20 20 20 44 45 heck... DE
000050: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 6C 65 contains the le
000060: 6E 67 74 68 20 6F 66 20 74 68 65 20 64 61 74 61 ngth of the data
000070: 20 74 6F 20 63 68 65 63 6B 2E 0D 0A 20 20 20 20 to check...
000080: 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 74 68 A contains th
000090: 65 20 73 79 6E 63 20 63 68 61 72 61 63 74 65 72 e sync character
0000A0: 20 65 78 70 65 63 74 65 64 20 61 74 20 74 68 65 expected at the
0000B0: 20 65 6E 64 20 6F 66 20 74 68 65 20 6C 65 61 64 end of the lead
0000C0: 65 72 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 er..... Ex
0000D0: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
0000E0: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 .... If th
0000F0: 65 20 72 65 63 6F 72 64 20 63 68 65 63 6B 65 64 e record checked
000100: 20 4F 4B 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 OK:....
000110: 20 20 20 20 20 20 20 20 43 61 72 72 79 20 74 72 Carry tr
000120: 75 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 ue...
000130: 20 20 20 20 20 41 20 63 6F 72 72 75 70 74 2E 0D A corrupt..
000140: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 61 6E 20 ... If an
000150: 65 72 72 6F 72 20 6F 63 63 75 72 72 65 64 20 6F error occurred o
000160: 72 20 74 68 65 20 75 73 65 72 20 68 69 74 20 65 r the user hit e
000170: 73 63 61 70 65 3A 0D 0A 0D 0A 20 20 20 20 20 20 scape:....
000180: 20 20 20 20 20 20 20 20 20 20 43 61 72 72 79 20 Carry
000190: 66 61 6C 73 65 2E 0D 0A 20 20 20 20 20 20 20 20 false...
0001A0: 20 20 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 A contai
0001B0: 6E 73 20 61 6E 20 65 72 72 6F 72 20 63 6F 64 65 ns an error code
0001C0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C ....... Al
0001D0: 77 61 79 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ways:......
0001E0: 20 20 20 20 20 20 20 20 20 20 20 42 43 2C 20 44 BC, D
0001F0: 45 2C 20 48 4C 2C 20 49 58 20 61 6E 64 20 6F 74 E, HL, IX and ot
Size : 512 (Real : 512)
000000: 68 65 72 20 66 6C 61 67 73 20 63 6F 72 72 75 70 her flags corrup
000010: 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 t...
000020: 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 All other re
000030: 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 gisters preserve
000040: 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 d..... Not
000050: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
000060: 41 20 64 61 74 61 20 6C 65 6E 67 74 68 20 6F 66 A data length of
000070: 20 30 20 70 61 73 73 65 64 20 74 6F 20 74 68 69 0 passed to thi
000080: 73 20 20 72 6F 75 74 69 6E 65 20 20 69 73 20 20 s routine is
000090: 74 61 6B 65 6E 20 20 74 6F 20 20 6D 65 61 6E 20 taken to mean
0000A0: 20 36 35 35 33 36 0D 0A 20 20 20 20 20 20 20 62 65536.. b
0000B0: 79 74 65 73 2E 20 28 54 68 69 73 20 69 73 20 62 ytes. (This is b
0000C0: 6F 75 6E 64 20 74 6F 20 70 72 6F 64 75 63 65 20 ound to produce
0000D0: 61 20 63 68 65 63 6B 20 66 61 69 6C 75 72 65 29 a check failure)
0000E0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 74 ....... It
0000F0: 20 69 73 20 6E 6F 74 20 6E 65 63 65 73 73 61 72 is not necessar
000100: 79 20 74 6F 20 63 68 65 63 6B 20 74 68 65 20 77 y to check the w
000110: 68 6F 6C 65 20 6F 66 20 61 20 72 65 63 6F 72 64 hole of a record
000120: 20 20 6F 6E 20 20 74 61 70 65 2E 20 20 49 66 20 on tape. If
000130: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 6C 65 6E the.. len
000140: 67 74 68 20 70 61 73 73 65 64 20 69 73 20 6C 65 gth passed is le
000150: 73 73 20 74 68 61 6E 20 74 68 65 20 61 63 74 75 ss than the actu
000160: 61 6C 20 6C 65 6E 67 74 68 20 6F 66 20 74 68 65 al length of the
000170: 20 72 65 63 6F 72 64 20 20 74 68 65 6E 20 20 6F record then o
000180: 6E 6C 79 0D 0A 20 20 20 20 20 20 20 74 68 65 20 nly.. the
000190: 6E 75 6D 62 65 72 20 6F 66 20 62 79 74 65 73 20 number of bytes
0001A0: 77 69 6C 6C 20 62 65 20 63 68 65 63 6B 65 64 2E will be checked.
0001B0: 20 54 72 79 69 6E 67 20 74 6F 20 63 68 65 63 6B Trying to check
0001C0: 20 6D 6F 72 65 20 62 79 74 65 73 20 20 69 6E 20 more bytes in
0001D0: 20 61 0D 0A 20 20 20 20 20 20 20 72 65 63 6F 72 a.. recor
0001E0: 64 20 74 68 61 6E 20 77 65 72 65 20 77 72 69 74 d than were writ
0001F0: 74 65 6E 20 77 69 6C 6C 20 70 72 6F 64 75 63 65 ten will produce
Size : 512 (Real : 512)
000000: 20 20 61 6E 20 20 65 72 72 6F 72 20 20 6F 66 20 an error of
000010: 20 73 6F 6D 65 20 20 73 6F 72 74 20 20 28 73 65 some sort (se
000020: 65 0D 0A 20 20 20 20 20 20 20 62 65 6C 6F 77 29 e.. below)
000030: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
000040: 65 20 64 61 74 61 20 74 6F 20 62 65 20 63 68 65 e data to be che
000050: 63 6B 65 64 20 6D 61 79 20 6C 69 65 20 61 6E 79 cked may lie any
000060: 77 68 65 72 65 20 69 6E 20 52 41 4D 2C 20 65 76 where in RAM, ev
000070: 65 6E 20 75 6E 64 65 72 6E 65 61 74 68 20 61 20 en underneath a
000080: 52 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ROM.......
000090: 20 54 68 65 20 73 79 6E 63 20 63 68 61 72 61 63 The sync charac
0000A0: 74 65 72 20 69 73 20 75 73 65 64 20 74 6F 20 64 ter is used to d
0000B0: 69 73 74 69 6E 67 75 69 73 68 20 68 65 61 64 65 istinguish heade
0000C0: 72 20 72 65 63 6F 72 64 73 20 28 73 79 6E 63 20 r records (sync
0000D0: 69 73 20 23 32 43 29 0D 0A 20 20 20 20 20 20 20 is #2C)..
0000E0: 66 72 6F 6D 20 64 61 74 61 20 72 65 63 6F 72 64 from data record
0000F0: 73 20 28 73 79 6E 63 20 69 73 20 23 31 36 29 2E s (sync is #16).
000100: 20 4F 74 68 65 72 20 73 79 6E 63 20 63 68 61 72 Other sync char
000110: 61 63 74 65 72 73 20 63 6F 75 6C 64 20 62 65 20 acters could be
000120: 75 73 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 used...........
000130: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
000140: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
000150: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 70 61 67 65 20 31 35 2E 31 36 36 0D 0A 0D 0A page 15.166....
000180: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000190: 20 54 68 65 20 65 72 72 6F 72 20 63 6F 64 65 73 The error codes
0001A0: 20 72 65 74 75 72 6E 65 64 20 62 79 20 74 68 69 returned by thi
0001B0: 73 20 72 6F 75 74 69 6E 65 20 61 72 65 3A 0D 0A s routine are:..
0001C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
0001D0: 20 20 20 20 30 20 20 20 20 42 72 65 61 6B 20 20 0 Break
0001E0: 20 20 20 20 20 20 20 20 54 68 65 20 75 73 65 72 The user
0001F0: 20 68 69 74 20 74 68 65 20 65 73 63 61 70 65 20 hit the escape
Size : 512 (Real : 512)
000000: 6B 65 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 key.......
000010: 20 20 20 20 20 20 20 20 20 20 31 20 20 20 20 4F 1 O
000020: 76 65 72 72 75 6E 20 20 20 20 20 20 20 20 54 68 verrun Th
000030: 65 20 43 61 73 73 65 74 74 65 20 4D 61 6E 61 67 e Cassette Manag
000040: 65 72 20 66 6F 75 6E 64 20 61 20 62 69 74 20 74 er found a bit t
000050: 68 61 74 20 77 61 73 0D 0A 20 20 20 20 20 20 20 hat was..
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6F 6F too
000080: 20 6C 6F 6E 67 20 74 6F 20 72 65 61 64 2E 0D 0A long to read...
000090: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
0000A0: 20 20 20 20 32 20 20 20 20 43 52 43 20 20 20 20 2 CRC
0000B0: 20 20 20 20 20 20 20 20 41 20 43 52 43 20 66 61 A CRC fa
0000C0: 69 6C 75 72 65 20 77 61 73 20 64 65 74 65 63 74 ilure was detect
0000D0: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
0000E0: 20 20 20 20 20 20 20 20 20 33 20 20 20 20 44 69 3 Di
0000F0: 66 66 65 72 65 6E 74 20 20 20 20 20 20 54 68 65 fferent The
000100: 20 64 61 74 61 20 72 65 61 64 20 66 72 6F 6D 20 data read from
000110: 20 74 61 70 65 20 20 64 69 64 20 20 6E 6F 74 20 tape did not
000120: 20 61 67 72 65 65 0D 0A 20 20 20 20 20 20 20 20 agree..
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000140: 20 20 20 20 20 20 20 20 20 20 20 20 77 69 74 68 with
000150: 20 74 68 61 74 20 69 6E 20 6D 65 6D 6F 72 79 2E that in memory.
000160: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
000170: 20 63 61 73 73 65 74 74 65 20 6D 6F 74 6F 72 20 cassette motor
000180: 69 73 20 73 74 61 72 74 65 64 20 62 79 20 74 68 is started by th
000190: 69 73 20 20 72 6F 75 74 69 6E 65 20 20 28 69 6E is routine (in
0001A0: 20 20 63 61 73 65 20 20 69 74 20 20 69 73 20 20 case it is
0001B0: 6E 6F 74 0D 0A 20 20 20 20 20 20 20 61 6C 72 65 not.. alre
0001C0: 61 64 79 20 6F 6E 29 20 61 6E 64 20 72 65 73 74 ady on) and rest
0001D0: 6F 72 65 64 20 20 74 6F 20 20 69 74 73 20 20 70 ored to its p
0001E0: 72 65 76 69 6F 75 73 20 20 73 74 61 74 65 20 20 revious state
0001F0: 77 68 65 6E 20 20 63 68 65 63 6B 69 6E 67 20 20 when checking
Size : 512 (Real : 512)
000000: 69 73 0D 0A 20 20 20 20 20 20 20 63 6F 6D 70 6C is.. compl
000010: 65 74 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 eted.......
000020: 20 20 42 65 63 61 75 73 65 20 20 72 65 61 64 69 Because readi
000030: 6E 67 20 20 74 68 65 20 20 74 61 70 65 20 20 72 ng the tape r
000040: 65 71 75 69 72 65 73 20 20 73 74 72 69 6E 67 65 equires stringe
000050: 6E 74 20 20 74 69 6D 69 6E 67 20 20 63 6F 6E 73 nt timing cons
000060: 74 72 61 69 6E 74 73 2C 0D 0A 20 20 20 20 20 20 traints,..
000070: 20 69 6E 74 65 72 72 75 70 74 73 20 61 72 65 20 interrupts are
000080: 64 69 73 61 62 6C 65 64 20 77 68 69 6C 73 74 20 disabled whilst
000090: 74 68 65 20 74 61 70 65 20 69 73 20 62 65 69 6E the tape is bein
0000A0: 67 20 63 68 65 63 6B 65 64 20 20 28 70 6F 74 65 g checked (pote
0000B0: 6E 74 69 61 6C 6C 79 0D 0A 20 20 20 20 20 20 20 ntially..
0000C0: 61 20 70 65 72 69 6F 64 20 6F 66 20 6F 76 65 72 a period of over
0000D0: 20 35 20 6D 69 6E 75 74 65 73 29 2E 20 49 74 20 5 minutes). It
0000E0: 77 6F 75 6C 64 20 62 65 20 75 6E 70 6C 65 61 73 would be unpleas
0000F0: 61 6E 74 20 74 6F 20 68 61 76 65 20 74 68 65 20 ant to have the
000100: 20 73 6F 75 6E 64 0D 0A 20 20 20 20 20 20 20 63 sound.. c
000110: 68 69 70 20 6D 61 6B 69 6E 67 20 61 20 6E 6F 69 hip making a noi
000120: 73 65 20 66 6F 72 20 61 6C 6C 20 74 68 69 73 20 se for all this
000130: 74 69 6D 65 20 73 6F 20 74 68 65 20 20 53 6F 75 time so the Sou
000140: 6E 64 20 20 4D 61 6E 61 67 65 72 20 20 69 73 20 nd Manager is
000150: 20 73 68 75 74 0D 0A 20 20 20 20 20 20 20 64 6F shut.. do
000160: 77 6E 20 20 28 53 4F 55 4E 44 20 20 52 45 53 45 wn (SOUND RESE
000170: 54 29 2E 20 20 57 68 65 6E 20 20 63 68 65 63 6B T). When check
000180: 69 6E 67 20 20 68 61 73 20 20 66 69 6E 69 73 68 ing has finish
000190: 65 64 20 20 69 6E 74 65 72 72 75 70 74 73 20 20 ed interrupts
0001A0: 20 61 72 65 0D 0A 20 20 20 20 20 20 20 72 65 2D are.. re-
0001B0: 65 6E 61 62 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A enabled.........
0001C0: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
0001D0: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 entries:......
0001E0: 20 20 20 20 20 20 43 41 53 20 52 45 41 44 0D 0A CAS READ..
0001F0: 20 20 20 20 20 20 20 43 41 53 20 57 52 49 54 45 CAS WRITE
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000010: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000020: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000030: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000040: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000050: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 70 61 67 65 20 31 35 2E 31 36 37 0D 0A 0D 0A 0D page 15.167.....
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000090: 31 34 31 3A 20 53 4F 55 4E 44 20 52 45 53 45 54 141: SOUND RESET
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 23 42 43 41 37 0D 0A 0D 0A 0D 0A 20 20 20 20 #BCA7......
0000E0: 20 20 20 52 65 73 65 74 20 74 68 65 20 53 6F 75 Reset the Sou
0000F0: 6E 64 20 4D 61 6E 61 67 65 72 2E 0D 0A 0D 0A 0D nd Manager......
000100: 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D . Action:.
000110: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 2D 69 ..... Re-i
000120: 6E 69 74 69 61 6C 69 7A 65 20 74 68 65 20 53 6F nitialize the So
000130: 75 6E 64 20 4D 61 6E 61 67 65 72 20 2D 20 73 68 und Manager - sh
000140: 75 74 20 74 68 65 20 73 6F 75 6E 64 20 63 68 69 ut the sound chi
000150: 70 20 75 70 20 61 6E 64 20 63 6C 65 61 72 20 61 p up and clear a
000160: 6C 6C 0D 0A 20 20 20 20 20 20 20 71 75 65 75 65 ll.. queue
000170: 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 s.........
000180: 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E Entry condition
000190: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E s:...... N
0001A0: 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D o conditions....
0001B0: 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 ... Exit c
0001C0: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
0001D0: 20 20 20 20 20 20 20 41 46 2C 20 42 43 2C 20 44 AF, BC, D
0001E0: 45 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 E and HL corrupt
0001F0: 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 ... All ot
Size : 512 (Real : 512)
000000: 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 her registers pr
000010: 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 eserved.......
000020: 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D Notes:.....
000030: 0A 20 20 20 20 20 20 20 54 68 65 20 73 6F 75 6E . The soun
000040: 64 20 71 75 65 75 65 73 20 61 72 65 20 63 6C 65 d queues are cle
000050: 61 72 65 64 2E 0D 0A 20 20 20 20 20 20 20 41 6E ared... An
000060: 79 20 63 75 72 72 65 6E 74 20 73 6F 75 6E 64 20 y current sound
000070: 69 73 20 73 74 6F 70 70 65 64 2E 0D 0A 20 20 20 is stopped...
000080: 20 20 20 20 54 68 65 20 73 6F 75 6E 64 20 67 65 The sound ge
000090: 6E 65 72 61 74 6F 72 20 63 68 69 70 20 69 73 20 nerator chip is
0000A0: 73 69 6C 65 6E 63 65 64 2E 0D 0A 0D 0A 0D 0A 20 silenced.......
0000B0: 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 This routi
0000C0: 6E 65 20 65 6E 61 62 6C 65 73 20 69 6E 74 65 72 ne enables inter
0000D0: 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A rupts...........
0000E0: 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 Related e
0000F0: 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 ntries:......
000100: 20 20 20 20 53 4F 55 4E 44 20 48 4F 4C 44 0D 0A SOUND HOLD..
000110: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000120: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000130: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000140: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000150: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 70 61 67 65 20 31 35 2E 31 36 38 0D 0A 0D 0A 0D page 15.168.....
000180: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000190: 31 34 32 3A 20 53 4F 55 4E 44 20 51 55 45 55 45 142: SOUND QUEUE
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 23 42 43 41 41 0D 0A 0D 0A 20 20 20 20 20 20 #BCAA....
0001E0: 20 41 64 64 20 61 20 73 6F 75 6E 64 20 74 6F 20 Add a sound to
0001F0: 61 20 73 6F 75 6E 64 20 71 75 65 75 65 2E 0D 0A a sound queue...
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
000010: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 72 79 20 74 .... Try t
000020: 6F 20 61 64 64 20 61 20 73 6F 75 6E 64 20 74 6F o add a sound to
000030: 20 74 68 65 20 73 6F 75 6E 64 20 71 75 65 75 65 the sound queue
000040: 20 6F 66 20 6F 6E 65 20 6F 72 20 6D 6F 72 65 20 of one or more
000050: 63 68 61 6E 6E 65 6C 73 2E 20 49 66 20 20 74 68 channels. If th
000060: 65 0D 0A 20 20 20 20 20 20 20 73 6F 75 6E 64 20 e.. sound
000070: 71 75 65 75 65 20 6F 66 20 61 6E 79 20 6F 66 20 queue of any of
000080: 74 68 65 20 63 68 61 6E 6E 65 6C 73 20 69 73 20 the channels is
000090: 20 66 75 6C 6C 20 20 74 68 65 6E 20 20 6E 6F 20 full then no
0000A0: 20 73 6F 75 6E 64 20 20 77 69 6C 6C 20 20 62 65 sound will be
0000B0: 0D 0A 20 20 20 20 20 20 20 69 73 73 75 65 64 20 .. issued
0000C0: 74 6F 20 61 6E 79 20 63 68 61 6E 6E 65 6C 2E 0D to any channel..
0000D0: 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 ... Entry
0000E0: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
0000F0: 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E HL contain
000100: 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 s the address of
000110: 20 61 20 73 6F 75 6E 64 20 20 70 72 6F 67 72 61 a sound progra
000120: 6D 20 20 77 68 69 63 68 20 20 6D 75 73 74 20 20 m which must
000130: 6C 69 65 20 20 69 6E 20 20 74 68 65 0D 0A 20 20 lie in the..
000140: 20 20 20 20 20 63 65 6E 74 72 61 6C 20 33 32 4B central 32K
000150: 20 6F 66 20 52 41 4D 2E 0D 0A 0D 0A 20 20 20 20 of RAM.....
000160: 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F Exit conditio
000170: 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 ns:.... If
000180: 20 74 68 65 20 73 6F 75 6E 64 20 77 61 73 20 61 the sound was a
000190: 64 64 65 64 20 74 6F 20 74 68 65 20 71 75 65 75 dded to the queu
0001A0: 65 28 73 29 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 e(s):....
0001B0: 20 20 20 20 20 20 20 20 20 43 61 72 72 79 20 74 Carry t
0001C0: 72 75 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 rue...
0001D0: 20 20 20 20 20 20 48 4C 20 63 6F 72 72 75 70 74 HL corrupt
0001E0: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 61 ..... If a
0001F0: 74 20 6C 65 61 73 74 20 6F 6E 65 20 71 75 65 75 t least one queu
Size : 512 (Real : 512)
000000: 65 20 77 61 73 20 66 75 6C 6C 3A 0D 0A 0D 0A 20 e was full:....
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 C
000020: 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 20 20 20 arry false...
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 48 4C 20 HL
000040: 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 preserved.....
000050: 20 20 20 20 20 41 6C 77 61 79 73 3A 0D 0A 0D 0A Always:....
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 41 2C 20 42 43 2C 20 44 45 2C 20 49 58 20 61 6E A, BC, DE, IX an
000080: 64 20 6F 74 68 65 72 20 66 6C 61 67 73 20 63 6F d other flags co
000090: 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 20 rrupt...
0000A0: 20 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 All othe
0000B0: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
0000C0: 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 erved.....
0000D0: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 Notes:....
0000E0: 20 20 54 68 65 20 73 6F 75 6E 64 20 70 72 6F 67 The sound prog
0000F0: 72 61 6D 20 69 73 20 6C 61 69 64 20 6F 75 74 20 ram is laid out
000100: 61 73 20 66 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A 20 as follows:....
000110: 20 20 20 20 20 20 20 20 20 20 42 79 74 65 20 30 Byte 0
000120: 3A 20 20 20 20 20 20 20 20 20 20 20 20 20 43 68 : Ch
000130: 61 6E 6E 65 6C 73 20 74 6F 20 75 73 65 20 61 6E annels to use an
000140: 64 20 72 65 6E 64 65 7A 76 6F 75 73 20 72 65 71 d rendezvous req
000150: 75 69 72 65 6D 65 6E 74 73 2E 0D 0A 0D 0A 20 20 uirements.....
000160: 20 20 20 20 20 20 20 20 20 42 79 74 65 20 31 3A Byte 1:
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6D 70 Amp
000180: 6C 69 74 75 64 65 20 65 6E 76 65 6C 6F 70 65 20 litude envelope
000190: 74 6F 20 75 73 65 2E 0D 0A 20 20 20 20 20 20 20 to use...
0001A0: 20 20 20 20 42 79 74 65 20 32 3A 20 20 20 20 20 Byte 2:
0001B0: 20 20 20 20 20 20 20 20 54 6F 6E 65 20 65 6E 76 Tone env
0001C0: 65 6C 6F 70 65 20 74 6F 20 75 73 65 2E 0D 0A 20 elope to use...
0001D0: 20 20 20 20 20 20 20 20 20 20 42 79 74 65 73 20 Bytes
0001E0: 33 2E 2E 34 3A 20 20 20 20 20 20 20 20 20 54 6F 3..4: To
0001F0: 6E 65 20 70 65 72 69 6F 64 2E 0D 0A 20 20 20 20 ne period...
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 42 79 74 65 20 35 3A 20 20 Byte 5:
000010: 20 20 20 20 20 20 20 20 20 20 20 4E 6F 69 73 65 Noise
000020: 20 70 65 72 69 6F 64 2E 0D 0A 20 20 20 20 20 20 period...
000030: 20 20 20 20 20 42 79 74 65 20 36 3A 20 20 20 20 Byte 6:
000040: 20 20 20 20 20 20 20 20 20 49 6E 69 74 69 61 6C Initial
000050: 20 61 6D 70 6C 69 74 75 64 65 2E 0D 0A 20 20 20 amplitude...
000060: 20 20 20 20 20 20 20 20 42 79 74 65 73 20 37 2E Bytes 7.
000070: 2E 38 3A 20 20 20 20 20 20 20 20 20 44 75 72 61 .8: Dura
000080: 74 69 6F 6E 20 6F 72 20 65 6E 76 65 6C 6F 70 65 tion or envelope
000090: 20 72 65 70 65 61 74 20 63 6F 75 6E 74 2E 0D 0A repeat count...
0000A0: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 76 61 6C .. All val
0000B0: 75 65 73 20 69 6E 20 74 68 65 20 73 6F 75 6E 64 ues in the sound
0000C0: 20 70 72 6F 67 72 61 6D 20 61 72 65 20 6D 61 73 program are mas
0000D0: 6B 65 64 20 69 6E 74 6F 20 74 68 65 20 61 70 70 ked into the app
0000E0: 72 6F 70 72 69 61 74 65 20 20 72 61 6E 67 65 0D ropriate range.
0000F0: 0A 20 20 20 20 20 20 20 62 65 66 6F 72 65 20 62 . before b
000100: 65 69 6E 67 20 75 73 65 64 2E 0D 0A 0D 0A 20 20 eing used.....
000110: 20 20 20 20 20 54 68 65 20 63 68 61 6E 6E 65 6C The channel
000120: 73 20 74 6F 20 69 73 73 75 65 20 74 68 65 20 73 s to issue the s
000130: 6F 75 6E 64 20 6F 6E 20 61 72 65 20 65 6E 63 6F ound on are enco
000140: 64 65 64 20 69 6E 74 6F 20 62 79 74 65 20 30 20 ded into byte 0
000150: 61 73 20 66 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A 20 as follows:....
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 B
000170: 69 74 20 30 3A 20 20 20 20 49 73 73 75 65 20 6F it 0: Issue o
000180: 6E 20 63 68 61 6E 6E 65 6C 20 41 2E 0D 0A 20 20 n channel A...
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 Bi
0001A0: 74 20 31 3A 20 20 20 20 49 73 73 75 65 20 6F 6E t 1: Issue on
0001B0: 20 63 68 61 6E 6E 65 6C 20 42 2E 0D 0A 20 20 20 channel B...
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 74 Bit
0001D0: 20 32 3A 20 20 20 20 49 73 73 75 65 20 6F 6E 20 2: Issue on
0001E0: 63 68 61 6E 6E 65 6C 20 43 2E 0D 0A 0D 0A 0D 0A channel C.......
0001F0: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
Size : 512 (Real : 512)
000000: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
000010: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 page 1
000040: 35 2E 31 36 39 0D 0A 1A 67 65 20 31 35 2E 31 37 5.169...ge 15.17
000050: 30 0D 0A 1A 20 20 20 20 20 20 20 20 20 20 20 20 0...
000060: 42 69 74 20 33 3A 20 20 20 20 52 65 6E 64 65 7A Bit 3: Rendez
000070: 76 6F 75 73 20 77 69 74 68 20 63 68 61 6E 6E 65 vous with channe
000080: 74 69 6F 6E 20 6F 72 20 65 6E 76 65 6C 6F 70 65 tion or envelope
000090: 20 72 65 70 65 61 74 20 63 6F 75 6E 74 2E 0D 0A repeat count...
0000A0: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 76 61 6C .. All val
0000B0: 75 65 73 20 69 6E 20 74 68 65 20 73 6F 75 6E 64 ues in the sound
0000C0: 20 70 72 6F 67 72 61 6D 20 61 72 65 20 6D 61 73 program are mas
0000D0: 6B 65 64 20 69 6E 74 6F 20 74 68 65 20 61 70 70 ked into the app
0000E0: 72 6F 70 72 69 61 74 65 20 20 72 61 6E 67 65 0D ropriate range.
0000F0: 0A 20 20 20 20 20 20 20 62 65 66 6F 72 65 20 62 . before b
000100: 65 69 6E 67 20 75 73 65 64 2E 0D 0A 0D 0A 20 20 eing used.....
000110: 20 20 20 20 20 54 68 65 20 63 68 61 6E 6E 65 6C The channel
000120: 73 20 74 6F 20 69 73 73 75 65 20 74 68 65 20 73 s to issue the s
000130: 6F 75 6E 64 20 6F 6E 20 61 72 65 20 65 6E 63 6F ound on are enco
000140: 64 65 64 20 69 6E 74 6F 20 62 79 74 65 20 30 20 ded into byte 0
000150: 61 73 20 66 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A 20 as follows:....
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 B
000170: 69 74 20 30 3A 20 20 20 20 49 73 73 75 65 20 6F it 0: Issue o
000180: 6E 20 63 68 61 6E 6E 65 6C 20 41 2E 0D 0A 20 20 n channel A...
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 Bi
0001A0: 74 20 31 3A 20 20 20 20 49 73 73 75 65 20 6F 6E t 1: Issue on
0001B0: 20 63 68 61 6E 6E 65 6C 20 42 2E 0D 0A 20 20 20 channel B...
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 74 Bit
0001D0: 20 32 3A 20 20 20 20 49 73 73 75 65 20 6F 6E 20 2: Issue on
0001E0: 63 68 61 6E 6E 65 6C 20 43 2E 0D 0A 0D 0A 0D 0A channel C.......
0001F0: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 54 68 65 20 72 65 6E 64 65 7A 76 6F 75 The rendezvou
000020: 73 20 72 65 71 75 69 72 65 6D 65 6E 74 73 20 61 s requirements a
000030: 72 65 20 65 6E 63 6F 64 65 64 20 69 6E 74 6F 20 re encoded into
000040: 62 79 74 65 20 30 20 61 73 20 66 6F 6C 6C 6F 77 byte 0 as follow
000050: 73 3A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 s:..
000060: 20 20 20 20 42 69 74 20 33 3A 20 20 20 20 52 65 Bit 3: Re
000070: 6E 64 65 7A 76 6F 75 73 20 77 69 74 68 20 63 68 ndezvous with ch
000080: 61 6E 6E 65 6C 20 41 2E 0D 0A 20 20 20 20 20 20 annel A...
000090: 20 20 20 20 20 20 20 20 20 20 42 69 74 20 34 3A Bit 4:
0000A0: 20 20 20 20 52 65 6E 64 65 7A 76 6F 75 73 20 77 Rendezvous w
0000B0: 69 74 68 20 63 68 61 6E 6E 65 6C 20 42 2E 0D 0A ith channel B...
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 42 69 74 20 35 3A 20 20 20 20 52 65 6E 64 65 7A Bit 5: Rendez
0000E0: 76 6F 75 73 20 77 69 74 68 20 63 68 61 6E 6E 65 vous with channe
0000F0: 6C 20 43 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 l C...
000100: 20 20 20 20 20 20 42 69 74 20 36 3A 20 20 20 20 Bit 6:
000110: 48 6F 6C 64 20 75 6E 74 69 6C 20 72 65 6C 65 61 Hold until relea
000120: 73 65 64 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 sed...
000130: 20 20 20 20 20 20 42 69 74 20 37 3A 20 20 20 20 Bit 7:
000140: 46 6C 75 73 68 20 71 75 65 75 65 2E 0D 0A 20 20 Flush queue...
000150: 20 20 20 20 20 41 20 63 68 61 6E 6E 65 6C 20 77 A channel w
000160: 69 6C 6C 20 69 67 6E 6F 72 65 20 61 6E 20 20 6F ill ignore an o
000170: 72 64 65 72 20 20 74 6F 20 20 72 65 6E 64 65 7A rder to rendez
000180: 76 6F 75 73 20 20 77 69 74 68 20 20 69 74 73 65 vous with itse
000190: 6C 66 2E 20 20 53 6F 75 6E 64 73 0D 0A 20 20 20 lf. Sounds..
0001A0: 20 20 20 20 69 73 73 75 65 64 20 6F 6E 20 6D 75 issued on mu
0001B0: 6C 74 69 70 6C 65 20 63 68 61 6E 6E 65 6C 73 20 ltiple channels
0001C0: 69 6D 70 6C 69 63 69 74 6C 79 20 20 72 65 6E 64 implicitly rend
0001D0: 65 7A 76 6F 75 73 20 20 77 69 74 68 20 20 65 61 ezvous with ea
0001E0: 63 68 20 20 6F 74 68 65 72 2E 0D 0A 20 20 20 20 ch other...
0001F0: 20 20 20 53 6F 75 6E 64 73 20 74 68 61 74 20 61 Sounds that a
Size : 512 (Real : 512)
000000: 72 65 20 6F 72 64 65 72 65 64 20 74 6F 20 72 65 re ordered to re
000010: 6E 64 65 7A 76 6F 75 73 20 77 69 6C 6C 20 20 62 ndezvous will b
000020: 65 20 20 69 73 73 75 65 64 20 20 74 6F 20 20 74 e issued to t
000030: 68 65 20 20 73 6F 75 6E 64 0D 0A 20 20 20 20 20 he sound..
000040: 20 20 67 65 6E 65 72 61 74 6F 72 20 73 74 61 72 generator star
000050: 74 69 6E 67 20 61 74 20 74 68 65 20 73 61 6D 65 ting at the same
000060: 20 74 69 6D 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 time.....
000070: 20 53 65 74 74 69 6E 67 20 74 68 65 20 68 6F 6C Setting the hol
000080: 64 20 62 69 74 20 70 72 65 76 65 6E 74 73 20 74 d bit prevents t
000090: 68 65 20 20 73 6F 75 6E 64 20 20 66 72 6F 6D 20 he sound from
0000A0: 20 72 75 6E 6E 69 6E 67 20 20 75 6E 74 69 6C 20 running until
0000B0: 20 69 74 20 20 69 73 0D 0A 20 20 20 20 20 20 20 it is..
0000C0: 72 65 6C 65 61 73 65 64 20 62 79 20 63 61 6C 6C released by call
0000D0: 69 6E 67 20 53 4F 55 4E 44 20 52 45 4C 45 41 53 ing SOUND RELEAS
0000E0: 45 20 20 28 6F 72 20 20 61 20 20 72 6F 75 74 69 E (or a routi
0000F0: 6E 65 20 20 68 61 76 69 6E 67 20 20 61 20 20 73 ne having a s
000100: 69 6D 69 6C 61 72 0D 0A 20 20 20 20 20 20 20 65 imilar.. e
000110: 66 66 65 63 74 29 2E 20 53 65 74 74 69 6E 67 20 ffect). Setting
000120: 74 68 65 20 66 6C 75 73 68 20 62 69 74 20 77 69 the flush bit wi
000130: 6C 6C 20 65 6D 70 74 79 20 74 68 65 20 71 75 65 ll empty the que
000140: 75 65 20 20 61 6E 64 20 20 61 62 61 6E 64 6F 6E ue and abandon
000150: 20 20 61 6E 79 0D 0A 20 20 20 20 20 20 20 63 75 any.. cu
000160: 72 72 65 6E 74 6C 79 20 20 61 63 74 69 76 65 20 rrently active
000170: 20 73 6F 75 6E 64 20 20 74 68 75 73 20 20 61 6C sound thus al
000180: 6C 6F 77 69 6E 67 20 20 74 68 65 20 20 6E 65 77 lowing the new
000190: 20 20 73 6F 75 6E 64 20 20 20 74 6F 20 20 20 73 sound to s
0001A0: 74 61 72 74 0D 0A 20 20 20 20 20 20 20 69 6D 6D tart.. imm
0001B0: 65 64 69 61 74 65 6C 79 2E 0D 0A 0D 0A 20 20 20 ediately.....
0001C0: 20 20 20 20 54 68 65 20 61 6D 70 6C 69 74 75 64 The amplitud
0001D0: 65 20 65 6E 76 65 6C 6F 70 65 20 69 73 20 69 6E e envelope is in
0001E0: 20 74 68 65 20 72 61 6E 67 65 20 30 2E 2E 31 35 the range 0..15
0001F0: 2E 20 45 6E 76 65 6C 6F 70 65 73 20 31 2E 2E 31 . Envelopes 1..1
Size : 512 (Real : 512)
000000: 35 20 61 72 65 20 20 74 68 65 0D 0A 20 20 20 20 5 are the..
000010: 20 20 20 61 6D 70 6C 69 74 75 64 65 20 65 6E 76 amplitude env
000020: 65 6C 6F 70 65 73 20 20 74 68 61 74 20 20 63 61 elopes that ca
000030: 6E 20 20 62 65 20 20 73 65 74 20 20 75 73 69 6E n be set usin
000040: 67 20 20 53 4F 55 4E 44 20 20 41 4D 50 4C 20 20 g SOUND AMPL
000050: 45 4E 56 45 4C 4F 50 45 2E 0D 0A 20 20 20 20 20 ENVELOPE...
000060: 20 20 45 6E 76 65 6C 6F 70 65 20 30 20 6D 65 61 Envelope 0 mea
000070: 6E 73 20 75 73 65 20 6E 6F 20 61 6D 70 6C 69 74 ns use no amplit
000080: 75 64 65 20 65 6E 76 65 6C 6F 70 65 2C 20 73 69 ude envelope, si
000090: 6D 70 6C 79 20 20 68 6F 6C 64 20 20 74 68 65 20 mply hold the
0000A0: 20 69 6E 69 74 69 61 6C 0D 0A 20 20 20 20 20 20 initial..
0000B0: 20 61 6D 70 6C 69 74 75 64 65 20 66 6F 72 20 32 amplitude for 2
0000C0: 20 73 65 63 6F 6E 64 73 20 6F 72 20 74 68 65 20 seconds or the
0000D0: 64 75 72 61 74 69 6F 6E 20 73 70 65 63 69 66 69 duration specifi
0000E0: 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ed..... Th
0000F0: 65 20 74 6F 6E 65 20 65 6E 76 65 6C 6F 70 65 20 e tone envelope
000100: 69 73 20 69 6E 20 74 68 65 20 72 61 6E 67 65 20 is in the range
000110: 30 2E 2E 31 35 2E 20 45 6E 76 65 6C 6F 70 65 73 0..15. Envelopes
000120: 20 31 2E 2E 31 35 20 61 72 65 20 74 68 65 20 20 1..15 are the
000130: 74 6F 6E 65 0D 0A 20 20 20 20 20 20 20 65 6E 76 tone.. env
000140: 65 6C 6F 70 65 73 20 74 68 61 74 20 63 61 6E 20 elopes that can
000150: 62 65 20 73 65 74 20 75 73 69 6E 67 20 53 4F 55 be set using SOU
000160: 4E 44 20 54 4F 4E 45 20 45 4E 56 45 4C 4F 50 45 ND TONE ENVELOPE
000170: 2E 20 45 6E 76 65 6C 6F 70 65 20 30 20 20 6D 65 . Envelope 0 me
000180: 61 6E 73 0D 0A 20 20 20 20 20 20 20 75 73 65 20 ans.. use
000190: 6E 6F 20 74 6F 6E 65 20 65 6E 76 65 6C 6F 70 65 no tone envelope
0001A0: 2C 20 73 69 6D 70 6C 79 20 68 6F 6C 64 20 74 68 , simply hold th
0001B0: 65 20 69 6E 69 74 69 61 6C 20 74 6F 6E 65 2E 0D e initial tone..
0001C0: 0A 0D 0A 20 20 20 20 20 20 20 41 20 74 6F 6E 65 ... A tone
0001D0: 20 70 65 72 69 6F 64 20 6F 66 20 30 20 6D 65 61 period of 0 mea
0001E0: 6E 73 20 64 6F 20 6E 6F 74 20 67 65 6E 65 72 61 ns do not genera
0001F0: 74 65 20 61 6E 79 20 74 6F 6E 65 2E 20 54 6F 6E te any tone. Ton
Size : 512 (Real : 512)
000000: 65 20 70 65 72 69 6F 64 73 20 69 6E 20 74 68 65 e periods in the
000010: 0D 0A 20 20 20 20 20 20 20 72 61 6E 67 65 20 31 .. range 1
000020: 2E 2E 34 30 39 35 20 73 70 65 63 69 66 79 20 74 ..4095 specify t
000030: 68 65 20 70 65 72 69 6F 64 20 6F 66 20 74 68 65 he period of the
000040: 20 74 6F 6E 65 20 69 6E 20 38 20 6D 69 63 72 6F tone in 8 micro
000050: 73 65 63 6F 6E 64 20 75 6E 69 74 73 2E 0D 0A 0D second units....
000060: 0A 20 20 20 20 20 20 20 54 68 65 20 6E 6F 69 73 . The nois
000070: 65 20 70 65 72 69 6F 64 20 69 73 20 69 6E 20 74 e period is in t
000080: 68 65 20 72 61 6E 67 65 20 30 2E 2E 33 31 2E 20 he range 0..31.
000090: 4E 6F 69 73 65 20 20 70 65 72 69 6F 64 73 20 20 Noise periods
0000A0: 31 2E 2E 33 31 20 20 73 70 65 63 69 66 79 0D 0A 1..31 specify..
0000B0: 20 20 20 20 20 20 20 74 68 65 20 70 65 72 69 6F the perio
0000C0: 64 20 6F 66 20 74 68 65 20 6E 6F 69 73 65 20 63 d of the noise c
0000D0: 6F 6D 70 6F 6E 65 6E 74 20 6F 66 20 61 20 73 6F omponent of a so
0000E0: 75 6E 64 2E 20 20 41 20 20 6E 6F 69 73 65 20 20 und. A noise
0000F0: 70 65 72 69 6F 64 20 20 6F 66 20 20 30 0D 0A 20 period of 0..
000100: 20 20 20 20 20 20 6D 65 61 6E 73 20 75 73 65 20 means use
000110: 6E 6F 20 6E 6F 69 73 65 2E 0D 0A 0D 0A 20 20 20 no noise.....
000120: 20 20 20 20 54 68 65 20 69 6E 69 74 69 61 6C 20 The initial
000130: 61 6D 70 6C 69 74 75 64 65 20 69 73 20 69 6E 20 amplitude is in
000140: 74 68 65 20 72 61 6E 67 65 20 20 30 2E 2E 31 35 the range 0..15
000150: 2E 20 20 41 6D 70 6C 69 74 75 64 65 20 20 30 20 . Amplitude 0
000160: 20 62 65 69 6E 67 20 20 6E 6F 0D 0A 20 20 20 20 being no..
000170: 20 20 20 69 6E 69 74 69 61 6C 20 73 6F 75 6E 64 initial sound
000180: 2C 20 61 6D 70 6C 69 74 75 64 65 20 31 35 20 62 , amplitude 15 b
000190: 65 69 6E 67 20 74 68 65 20 6D 61 78 69 6D 75 6D eing the maximum
0001A0: 20 76 6F 6C 75 6D 65 2E 0D 0A 0D 0A 20 20 20 20 volume.....
0001B0: 20 20 20 42 79 74 65 73 20 37 20 61 6E 64 20 38 Bytes 7 and 8
0001C0: 20 73 74 6F 72 65 20 74 68 65 20 73 6F 75 6E 64 store the sound
0001D0: 20 74 69 6D 65 2E 20 49 66 20 74 68 69 73 20 69 time. If this i
0001E0: 73 20 7A 65 72 6F 20 74 68 65 6E 20 74 68 65 20 s zero then the
0001F0: 61 6D 70 6C 69 74 75 64 65 0D 0A 20 20 20 20 20 amplitude..
Size : 512 (Real : 512)
000000: 20 20 65 6E 76 65 6C 6F 70 65 20 69 73 20 6F 62 envelope is ob
000010: 65 79 65 64 20 6F 6E 63 65 2E 20 49 66 20 20 74 eyed once. If t
000020: 68 65 20 20 73 6F 75 6E 64 20 20 74 69 6D 65 20 he sound time
000030: 20 69 73 20 20 6E 65 67 61 74 69 76 65 20 20 74 is negative t
000040: 68 65 6E 20 20 74 68 65 0D 0A 20 20 20 20 20 20 hen the..
000050: 20 61 6D 70 6C 69 74 75 64 65 20 65 6E 76 65 6C amplitude envel
000060: 6F 70 65 20 69 73 20 6F 62 65 79 65 64 20 6D 69 ope is obeyed mi
000070: 6E 75 73 20 74 68 65 20 20 73 6F 75 6E 64 20 20 nus the sound
000080: 74 69 6D 65 20 20 6E 75 6D 62 65 72 20 20 6F 66 time number of
000090: 20 20 74 69 6D 65 73 0D 0A 20 20 20 20 20 20 20 times..
0000A0: 28 69 2E 65 2E 20 31 2E 2E 33 32 37 36 38 20 74 (i.e. 1..32768 t
0000B0: 69 6D 65 73 29 2E 20 49 66 20 74 68 65 20 73 6F imes). If the so
0000C0: 75 6E 64 20 74 69 6D 65 20 69 73 20 70 6F 73 69 und time is posi
0000D0: 74 69 76 65 20 62 75 74 20 6E 6F 74 20 7A 65 72 tive but not zer
0000E0: 6F 20 74 68 65 6E 0D 0A 20 20 20 20 20 20 20 69 o then.. i
0000F0: 74 20 69 73 20 74 61 6B 65 6E 20 74 6F 20 62 65 t is taken to be
000100: 20 74 68 65 20 64 75 72 61 74 69 6F 6E 20 6F 66 the duration of
000110: 20 74 68 65 20 73 6F 75 6E 64 20 69 6E 20 31 2F the sound in 1/
000120: 31 30 30 73 20 6F 66 20 61 20 73 65 63 6F 6E 64 100s of a second
000130: 2E 0D 0A 20 20 20 20 20 20 20 49 66 20 61 20 64 ... If a d
000140: 75 72 61 74 69 6F 6E 20 69 73 20 73 70 65 63 69 uration is speci
000150: 66 69 65 64 20 77 68 65 6E 20 61 6E 20 61 6D 70 fied when an amp
000160: 6C 69 74 75 64 65 20 65 6E 76 65 6C 6F 70 65 20 litude envelope
000170: 69 73 20 69 6E 20 20 75 73 65 20 20 74 68 65 6E is in use then
000180: 0D 0A 20 20 20 20 20 20 20 74 68 65 20 64 75 72 .. the dur
000190: 61 74 69 6F 6E 20 67 69 76 65 6E 20 73 65 74 73 ation given sets
0001A0: 20 74 68 65 20 6C 65 6E 67 74 68 20 6F 66 20 74 the length of t
0001B0: 68 65 20 73 6F 75 6E 64 2E 20 49 66 20 20 74 68 he sound. If th
0001C0: 65 20 20 64 75 72 61 74 69 6F 6E 20 20 69 73 0D e duration is.
0001D0: 0A 20 20 20 20 20 20 20 6C 6F 6E 67 65 72 20 74 . longer t
0001E0: 68 61 6E 20 74 68 65 20 65 6E 76 65 6C 6F 70 65 han the envelope
0001F0: 20 74 68 65 6E 20 74 68 65 20 66 69 6E 61 6C 20 then the final
Size : 512 (Real : 512)
000000: 61 6D 70 6C 69 74 75 64 65 20 6F 66 20 74 68 65 amplitude of the
000010: 20 20 65 6E 76 65 6C 6F 70 65 20 20 69 73 0D 0A envelope is..
000020: 20 20 20 20 20 20 20 73 75 73 74 61 69 6E 65 64 sustained
000030: 20 75 6E 74 69 6C 20 74 68 65 20 64 75 72 61 74 until the durat
000040: 69 6F 6E 20 65 78 70 69 72 65 73 2E 20 54 6F 6E ion expires. Ton
000050: 65 20 65 6E 76 65 6C 6F 70 65 73 20 20 61 72 65 e envelopes are
000060: 20 20 74 72 65 61 74 65 64 20 20 69 6E 0D 0A 20 treated in..
000070: 20 20 20 20 20 20 6D 75 63 68 20 74 68 65 20 73 much the s
000080: 61 6D 65 20 77 61 79 20 20 61 73 20 20 61 6D 70 ame way as amp
000090: 6C 69 74 75 64 65 20 20 65 6E 76 65 6C 6F 70 65 litude envelope
0000A0: 73 20 20 65 78 63 65 70 74 20 20 74 68 61 74 20 s except that
0000B0: 20 74 68 65 79 20 20 6E 65 76 65 72 0D 0A 20 20 they never..
0000C0: 20 20 20 20 20 73 70 65 63 69 66 79 20 74 68 65 specify the
0000D0: 20 6C 65 6E 67 74 68 20 6F 66 20 74 68 65 20 73 length of the s
0000E0: 6F 75 6E 64 2E 0D 0A 20 20 20 20 20 20 20 54 68 ound... Th
0000F0: 65 20 73 6F 75 6E 64 20 65 76 65 6E 74 20 74 68 e sound event th
000100: 61 74 20 69 73 20 72 75 6E 20 77 68 65 6E 20 61 at is run when a
000110: 20 73 6F 75 6E 64 20 71 75 65 75 65 20 20 68 61 sound queue ha
000120: 73 20 20 61 20 20 66 72 65 65 20 20 73 6C 6F 74 s a free slot
000130: 20 20 69 73 0D 0A 20 20 20 20 20 20 20 64 69 73 is.. dis
000140: 61 72 6D 65 64 20 6F 6E 20 74 68 65 20 63 68 61 armed on the cha
000150: 6E 6E 65 6C 73 20 73 70 65 63 69 66 69 65 64 20 nnels specified
000160: 69 6E 20 74 68 69 73 20 63 6F 6D 6D 61 6E 64 2E in this command.
000170: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 73 6F 75 .. All sou
000180: 6E 64 73 20 63 75 72 72 65 6E 74 6C 79 20 68 65 nds currently he
000190: 6C 64 20 62 79 20 53 4F 55 4E 44 20 20 48 4F 4C ld by SOUND HOL
0001A0: 44 20 20 61 72 65 20 20 61 75 74 6F 6D 61 74 69 D are automati
0001B0: 63 61 6C 6C 79 20 20 72 65 6C 65 61 73 65 64 0D cally released.
0001C0: 0A 20 20 20 20 20 20 20 77 68 65 6E 20 74 68 69 . when thi
0001D0: 73 20 72 6F 75 74 69 6E 65 20 69 73 20 63 61 6C s routine is cal
0001E0: 6C 65 64 2E 20 41 6C 73 6F 2C 20 74 68 65 20 73 led. Also, the s
0001F0: 6F 75 6E 64 20 71 75 65 75 65 20 65 76 65 6E 74 ound queue event
Size : 512 (Real : 512)
000000: 20 20 69 73 20 20 64 69 73 61 72 6D 65 64 0D 0A is disarmed..
000010: 20 20 20 20 20 20 20 28 73 65 65 20 53 4F 55 4E (see SOUN
000020: 44 20 41 52 4D 20 45 56 45 4E 54 29 2E 0D 0A 20 D ARM EVENT)...
000030: 20 20 20 20 20 20 53 4F 55 4E 44 20 51 55 45 55 SOUND QUEU
000040: 45 20 6D 61 79 20 65 6E 61 62 6C 65 20 69 6E 74 E may enable int
000050: 65 72 72 75 70 74 73 2E 0D 0A 0D 0A 20 20 20 20 errupts.....
000060: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
000070: 65 73 3A 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E es:.. SOUN
000080: 44 20 41 52 4D 20 45 56 45 4E 54 0D 0A 20 20 20 D ARM EVENT..
000090: 20 20 20 20 53 4F 55 4E 44 20 43 48 45 43 4B 0D SOUND CHECK.
0000A0: 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 20 52 45 . SOUND RE
0000B0: 4C 45 41 53 45 0D 0A 0D 0A 20 20 20 20 20 20 20 LEASE....
0000C0: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
0000D0: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
000100: 31 35 2E 31 37 30 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.170..........
000110: 0D 0A 0D 0A 20 20 20 20 20 20 20 31 34 33 3A 20 .... 143:
000120: 53 4F 55 4E 44 20 43 48 45 43 4B 20 20 20 20 20 SOUND CHECK
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 20 20 20 20 23 42 43 41 #BCA
000160: 44 0D 0A 0D 0A 20 20 20 20 20 20 20 41 73 6B 20 D.... Ask
000170: 69 66 20 74 68 65 72 65 20 69 73 20 73 70 61 63 if there is spac
000180: 65 20 69 6E 20 61 20 73 6F 75 6E 64 20 71 75 65 e in a sound que
000190: 75 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 ue..... Ac
0001A0: 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 tion:....
0001B0: 41 73 6B 20 74 68 65 20 73 74 61 74 65 20 6F 66 Ask the state of
0001C0: 20 61 20 73 6F 75 6E 64 20 63 68 61 6E 6E 65 6C a sound channel
0001D0: 2E 20 54 68 65 20 73 74 61 74 75 73 20 69 6E 63 . The status inc
0001E0: 6C 75 64 65 73 20 20 74 68 65 20 20 6E 75 6D 62 ludes the numb
0001F0: 65 72 20 20 6F 66 0D 0A 20 20 20 20 20 20 20 66 er of.. f
Size : 512 (Real : 512)
000000: 72 65 65 20 73 70 61 63 65 73 20 69 6E 20 74 68 ree spaces in th
000010: 65 20 73 6F 75 6E 64 20 71 75 65 75 65 20 61 6E e sound queue an
000020: 64 20 77 68 65 74 68 65 72 20 74 68 65 20 63 68 d whether the ch
000030: 61 6E 6E 65 6C 20 69 73 20 68 65 6C 64 2E 0D 0A annel is held...
000040: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
000050: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 onditions:....
000060: 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 A contains
000070: 74 68 65 20 62 69 74 20 66 6F 72 20 74 68 65 20 the bit for the
000080: 63 68 61 6E 6E 65 6C 20 74 6F 20 74 65 73 74 2E channel to test.
000090: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
0000A0: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
0000B0: 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 A contains
0000C0: 20 74 68 65 20 63 68 61 6E 6E 65 6C 20 73 74 61 the channel sta
0000D0: 74 75 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 42 tus..... B
0000E0: 43 2C 20 44 45 2C 20 48 4C 20 61 6E 64 20 66 6C C, DE, HL and fl
0000F0: 61 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 ags corrupt...
000100: 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 All other r
000110: 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 egisters preserv
000120: 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ed..... No
000130: 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 tes:.... T
000140: 68 65 20 63 68 61 6E 6E 65 6C 20 74 6F 20 61 73 he channel to as
000150: 6B 20 74 68 65 20 73 74 61 74 75 73 20 6F 66 20 k the status of
000160: 69 73 20 65 6E 63 6F 64 65 64 20 61 73 20 66 6F is encoded as fo
000170: 6C 6C 6F 77 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 llows:....
000180: 20 20 20 20 20 20 20 20 20 20 42 69 74 20 30 3A Bit 0:
000190: 20 20 20 20 41 73 6B 20 61 62 6F 75 74 20 63 68 Ask about ch
0001A0: 61 6E 6E 65 6C 20 41 2E 0D 0A 20 20 20 20 20 20 annel A...
0001B0: 20 20 20 20 20 20 20 20 20 20 42 69 74 20 31 3A Bit 1:
0001C0: 20 20 20 20 41 73 6B 20 61 62 6F 75 74 20 63 68 Ask about ch
0001D0: 61 6E 6E 65 6C 20 42 2E 0D 0A 20 20 20 20 20 20 annel B...
0001E0: 20 20 20 20 20 20 20 20 20 20 42 69 74 20 32 3A Bit 2:
0001F0: 20 20 20 20 41 73 6B 20 61 62 6F 75 74 20 63 68 Ask about ch
Size : 512 (Real : 512)
000000: 61 6E 6E 65 6C 20 43 2E 0D 0A 0D 0A 20 20 20 20 annel C.....
000010: 20 20 20 49 66 20 6D 6F 72 65 20 74 68 61 6E 20 If more than
000020: 6F 6E 65 20 62 69 74 20 69 73 20 73 65 74 20 74 one bit is set t
000030: 68 65 6E 20 74 68 65 20 73 74 61 74 75 73 20 6F hen the status o
000040: 66 20 20 6F 6E 6C 79 20 20 6F 6E 65 20 20 63 68 f only one ch
000050: 61 6E 6E 65 6C 20 20 69 73 0D 0A 20 20 20 20 20 annel is..
000060: 20 20 72 65 74 75 72 6E 65 64 2E 20 54 68 65 20 returned. The
000070: 63 68 61 6E 6E 65 6C 73 20 61 72 65 20 74 65 73 channels are tes
000080: 74 65 64 20 69 6E 20 74 68 65 20 6F 72 64 65 72 ted in the order
000090: 20 67 69 76 65 6E 20 61 62 6F 76 65 2E 0D 0A 0D given above....
0000A0: 0A 20 20 20 20 20 20 20 54 68 65 20 73 74 61 74 . The stat
0000B0: 75 73 20 72 65 74 75 72 6E 65 64 20 69 73 20 65 us returned is e
0000C0: 6E 63 6F 64 65 64 20 61 73 20 66 6F 6C 6C 6F 77 ncoded as follow
0000D0: 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 s:....
0000E0: 42 69 74 73 20 30 2E 2E 32 3A 20 20 20 20 20 43 Bits 0..2: C
0000F0: 6F 6E 74 61 69 6E 20 74 68 65 20 6E 75 6D 62 65 ontain the numbe
000100: 72 20 6F 66 20 66 72 65 65 20 73 6C 6F 74 73 20 r of free slots
000110: 69 6E 20 20 74 68 65 20 20 63 68 61 6E 6E 65 6C in the channel
000120: 27 73 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 's..
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 73 6F 75 sou
000140: 6E 64 20 71 75 65 75 65 2E 0D 0A 20 20 20 20 20 nd queue...
000150: 20 20 20 20 20 42 69 74 20 33 3A 20 20 20 20 20 Bit 3:
000160: 20 20 20 20 54 68 65 20 63 68 61 6E 6E 65 6C 20 The channel
000170: 69 73 20 61 77 61 69 74 69 6E 67 20 61 20 72 65 is awaiting a re
000180: 6E 64 65 7A 76 6F 75 73 20 77 69 74 68 20 63 68 ndezvous with ch
000190: 61 6E 6E 65 6C 20 41 2E 0D 0A 20 20 20 20 20 20 annel A...
0001A0: 20 20 20 20 42 69 74 20 34 3A 20 20 20 20 20 20 Bit 4:
0001B0: 20 20 20 54 68 65 20 63 68 61 6E 6E 65 6C 20 69 The channel i
0001C0: 73 20 61 77 61 69 74 69 6E 67 20 61 20 72 65 6E s awaiting a ren
0001D0: 64 65 7A 76 6F 75 73 20 77 69 74 68 20 63 68 61 dezvous with cha
0001E0: 6E 6E 65 6C 20 42 2E 0D 0A 20 20 20 20 20 20 20 nnel B...
0001F0: 20 20 20 42 69 74 20 35 3A 20 20 20 20 20 20 20 Bit 5:
Size : 512 (Real : 512)
000000: 20 20 54 68 65 20 63 68 61 6E 6E 65 6C 20 69 73 The channel is
000010: 20 61 77 61 69 74 69 6E 67 20 61 20 72 65 6E 64 awaiting a rend
000020: 65 7A 76 6F 75 73 20 77 69 74 68 20 63 68 61 6E ezvous with chan
000030: 6E 65 6C 20 43 2E 0D 0A 20 20 20 20 20 20 20 20 nel C...
000040: 20 20 42 69 74 20 36 3A 20 20 20 20 20 20 20 20 Bit 6:
000050: 20 54 68 65 20 63 68 61 6E 6E 65 6C 20 69 73 20 The channel is
000060: 68 65 6C 64 2E 0D 0A 20 20 20 20 20 20 20 20 20 held...
000070: 20 42 69 74 20 37 3A 20 20 20 20 20 20 20 20 20 Bit 7:
000080: 54 68 65 20 63 68 61 6E 6E 65 6C 20 69 73 20 61 The channel is a
000090: 63 74 69 76 65 20 28 70 72 6F 64 75 63 69 6E 67 ctive (producing
0000A0: 20 61 20 73 6F 75 6E 64 29 2E 0D 0A 0D 0A 0D 0A a sound).......
0000B0: 20 20 20 20 20 20 20 43 61 6C 6C 69 6E 67 20 74 Calling t
0000C0: 68 69 73 20 72 6F 75 74 69 6E 65 20 64 69 73 61 his routine disa
0000D0: 72 6D 73 20 74 68 65 20 73 6F 75 6E 64 20 71 75 rms the sound qu
0000E0: 65 75 65 20 65 76 65 6E 74 20 20 74 68 61 74 20 eue event that
0000F0: 20 6F 63 63 75 72 73 20 20 77 68 65 6E 0D 0A 20 occurs when..
000100: 20 20 20 20 20 20 74 68 65 20 71 75 65 75 65 20 the queue
000110: 68 61 73 20 61 20 66 72 65 65 20 73 6C 6F 74 20 has a free slot
000120: 66 6F 72 20 74 68 65 20 20 63 68 61 6E 6E 65 6C for the channel
000130: 20 20 72 65 74 75 72 6E 65 64 20 20 28 73 65 65 returned (see
000140: 20 20 53 4F 55 4E 44 20 20 41 52 4D 0D 0A 20 20 SOUND ARM..
000150: 20 20 20 20 20 45 56 45 4E 54 29 2E 0D 0A 0D 0A EVENT).....
000160: 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F .. This ro
000170: 75 74 69 6E 65 20 6D 61 79 20 65 6E 61 62 6C 65 utine may enable
000180: 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D 0A interrupts.....
000190: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 .... Relat
0001A0: 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D ed entries:.....
0001B0: 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 20 41 52 . SOUND AR
0001C0: 4D 20 45 56 45 4E 54 0D 0A 20 20 20 20 20 20 20 M EVENT..
0001D0: 53 4F 55 4E 44 20 51 55 45 55 45 0D 0A 0D 0A 0D SOUND QUEUE.....
0001E0: 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 ... AMSTRA
0001F0: 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 D CPC464/664/612
Size : 512 (Real : 512)
000000: 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 8 FIRMWARE
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 70 61 67 65 20 31 35 2E 31 37 31 page 15.171
000030: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000040: 20 20 20 20 20 31 34 34 3A 20 53 4F 55 4E 44 20 144: SOUND
000050: 41 52 4D 20 45 56 45 4E 54 20 20 20 20 20 20 20 ARM EVENT
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 23 42 43 42 30 0D 0A 0D 0A 20 #BCB0....
000090: 20 20 20 20 20 20 53 65 74 20 75 70 20 61 6E 20 Set up an
0000A0: 65 76 65 6E 74 20 74 6F 20 62 65 20 72 75 6E 20 event to be run
0000B0: 77 68 65 6E 20 61 20 73 6F 75 6E 64 20 71 75 65 when a sound que
0000C0: 75 65 20 62 65 63 6F 6D 65 73 20 65 6D 70 74 79 ue becomes empty
0000D0: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 ..... Acti
0000E0: 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 on:......
0000F0: 41 72 6D 20 74 68 65 20 73 6F 75 6E 64 20 65 76 Arm the sound ev
000100: 65 6E 74 20 74 6F 20 62 65 20 72 75 6E 20 77 68 ent to be run wh
000110: 65 6E 20 61 20 66 72 65 65 20 73 6C 6F 74 20 6F en a free slot o
000120: 63 63 75 72 73 20 69 6E 20 20 61 20 20 63 68 61 ccurs in a cha
000130: 6E 6E 65 6C 27 73 0D 0A 20 20 20 20 20 20 20 73 nnel's.. s
000140: 6F 75 6E 64 20 71 75 65 75 65 2E 0D 0A 0D 0A 20 ound queue.....
000150: 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 Entry cond
000160: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
000170: 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 A contains the
000180: 20 62 69 74 20 66 6F 72 20 74 68 65 20 63 68 61 bit for the cha
000190: 6E 6E 65 6C 20 74 6F 20 61 72 6D 2E 0D 0A 20 20 nnel to arm...
0001A0: 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 HL contains
0001B0: 20 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 the address of
0001C0: 61 6E 20 65 76 65 6E 74 20 62 6C 6F 63 6B 2E 0D an event block..
0001D0: 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 ... Exit c
0001E0: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 onditions:....
0001F0: 20 20 20 20 20 41 46 2C 20 42 43 2C 20 44 45 20 AF, BC, DE
Size : 512 (Real : 512)
000000: 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D and HL corrupt..
000010: 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 . All othe
000020: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
000030: 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 erved.....
000040: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 Notes:....
000050: 20 20 54 68 65 20 63 68 61 6E 6E 65 6C 20 66 6F The channel fo
000060: 72 20 77 68 69 63 68 20 74 6F 20 61 72 6D 20 74 r which to arm t
000070: 68 65 20 65 76 65 6E 74 20 69 73 20 65 6E 63 6F he event is enco
000080: 64 65 64 20 61 73 20 66 6F 6C 6C 6F 77 73 3A 0D ded as follows:.
000090: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
0000A0: 20 20 20 42 69 74 20 30 3A 20 20 20 20 41 72 6D Bit 0: Arm
0000B0: 20 63 68 61 6E 6E 65 6C 20 41 2E 0D 0A 20 20 20 channel A...
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 74 Bit
0000D0: 20 31 3A 20 20 20 20 41 72 6D 20 63 68 61 6E 6E 1: Arm chann
0000E0: 65 6C 20 42 2E 0D 0A 20 20 20 20 20 20 20 20 20 el B...
0000F0: 20 20 20 20 20 20 20 42 69 74 20 32 3A 20 20 20 Bit 2:
000100: 20 41 72 6D 20 63 68 61 6E 6E 65 6C 20 43 2E 0D Arm channel C..
000110: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 6D ..... If m
000120: 6F 72 65 20 74 68 61 6E 20 6F 6E 65 20 62 69 74 ore than one bit
000130: 20 69 73 20 73 65 74 20 20 74 68 65 6E 20 20 6F is set then o
000140: 6E 6C 79 20 20 6F 6E 65 20 20 63 68 61 6E 6E 65 nly one channe
000150: 6C 20 20 69 73 20 20 61 72 6D 65 64 2E 20 20 54 l is armed. T
000160: 68 65 0D 0A 20 20 20 20 20 20 20 63 68 61 6E 6E he.. chann
000170: 65 6C 73 20 61 72 65 20 61 72 6D 65 64 20 69 6E els are armed in
000180: 20 74 68 65 20 6F 72 64 65 72 20 67 69 76 65 6E the order given
000190: 20 61 62 6F 76 65 2E 0D 0A 0D 0A 20 20 20 20 20 above.....
0001A0: 20 20 54 68 65 20 65 76 65 6E 74 20 62 6C 6F 63 The event bloc
0001B0: 6B 20 70 61 73 73 65 64 20 6D 75 73 74 20 62 65 k passed must be
0001C0: 20 69 6E 69 74 69 61 6C 69 7A 65 64 20 28 62 79 initialized (by
0001D0: 20 4B 4C 20 49 4E 49 54 20 45 56 45 4E 54 29 2E KL INIT EVENT).
0001E0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
0001F0: 20 65 76 65 6E 74 20 77 69 6C 6C 20 62 65 20 27 event will be '
Size : 512 (Real : 512)
000000: 6B 69 63 6B 65 64 27 20 77 68 65 6E 20 61 20 66 kicked' when a f
000010: 72 65 65 20 73 6C 6F 74 20 6F 63 63 75 72 73 20 ree slot occurs
000020: 69 6E 20 20 74 68 65 20 20 71 75 65 75 65 2E 20 in the queue.
000030: 20 49 66 0D 0A 20 20 20 20 20 20 20 74 68 65 72 If.. ther
000040: 65 20 69 73 20 61 20 66 72 65 65 20 73 6C 6F 74 e is a free slot
000050: 20 69 6E 20 74 68 65 20 71 75 65 75 65 20 77 68 in the queue wh
000060: 65 6E 20 74 68 69 73 20 72 6F 75 74 69 6E 65 20 en this routine
000070: 69 73 20 63 61 6C 6C 65 64 20 74 68 65 6E 20 74 is called then t
000080: 68 65 0D 0A 20 20 20 20 20 20 20 65 76 65 6E 74 he.. event
000090: 20 77 69 6C 6C 20 62 65 20 27 6B 69 63 6B 65 64 will be 'kicked
0000A0: 27 20 69 6D 6D 65 64 69 61 74 65 6C 79 2E 0D 0A ' immediately...
0000B0: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 73 .... The s
0000C0: 6F 75 6E 64 20 65 76 65 6E 74 20 69 73 20 64 69 ound event is di
0000D0: 73 61 72 6D 65 64 20 61 75 74 6F 6D 61 74 69 63 sarmed automatic
0000E0: 61 6C 6C 79 20 77 68 65 6E 20 53 4F 55 4E 44 20 ally when SOUND
0000F0: 20 51 55 45 55 45 20 20 6F 72 20 20 53 4F 55 4E QUEUE or SOUN
000100: 44 0D 0A 20 20 20 20 20 20 20 43 48 45 43 4B 20 D.. CHECK
000110: 69 73 20 63 61 6C 6C 65 64 2E 20 49 74 20 69 73 is called. It is
000120: 20 61 6C 73 6F 20 64 69 73 61 72 6D 65 64 20 77 also disarmed w
000130: 68 65 6E 20 74 68 65 20 65 76 65 6E 74 20 69 73 hen the event is
000140: 20 72 75 6E 2E 20 54 68 75 73 2C 20 20 74 68 65 run. Thus, the
000150: 0D 0A 20 20 20 20 20 20 20 65 76 65 6E 74 20 72 .. event r
000160: 6F 75 74 69 6E 65 20 77 69 6C 6C 20 6E 65 65 64 outine will need
000170: 20 74 6F 20 72 65 61 72 6D 20 74 68 65 20 73 6F to rearm the so
000180: 75 6E 64 20 76 65 6E 74 20 20 74 6F 20 20 6B 65 und vent to ke
000190: 65 70 20 20 69 74 20 20 72 75 6E 6E 69 6E 67 0D ep it running.
0001A0: 0A 20 20 20 20 20 20 20 63 6F 6E 74 69 6E 75 6F . continuo
0001B0: 75 73 6C 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 usly.......
0001C0: 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 6D This routine m
0001D0: 61 79 20 65 6E 61 62 6C 65 20 69 6E 74 65 72 72 ay enable interr
0001E0: 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 upts.........
0001F0: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
Size : 512 (Real : 512)
000000: 69 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B ies:.... K
000010: 4C 20 49 4E 49 54 20 45 56 45 4E 54 0D 0A 20 20 L INIT EVENT..
000020: 20 20 20 20 20 53 4F 55 4E 44 20 43 48 45 43 4B SOUND CHECK
000030: 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 20 51 .. SOUND Q
000040: 55 45 55 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 UEUE..........
000050: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000060: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000070: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 70 61 67 65 20 31 35 2E 31 37 32 0D 0A 0D 0A 0D page 15.172.....
0000A0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
0000B0: 31 34 35 3A 20 53 4F 55 4E 44 20 52 45 4C 45 41 145: SOUND RELEA
0000C0: 53 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 SE
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 20 23 42 43 42 33 0D 0A 0D 0A 0D 0A 20 20 20 20 #BCB3......
000100: 20 20 20 41 6C 6C 6F 77 20 73 6F 75 6E 64 73 20 Allow sounds
000110: 77 68 69 63 68 20 61 72 65 20 69 6E 64 69 76 69 which are indivi
000120: 64 75 61 6C 6C 79 20 68 65 6C 64 20 74 6F 20 73 dually held to s
000130: 74 61 72 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 tart.......
000140: 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 Action:......
000150: 20 20 20 20 20 20 52 65 6C 65 61 73 65 20 68 65 Release he
000160: 6C 64 20 73 6F 75 6E 64 73 20 6F 6E 20 61 20 6E ld sounds on a n
000170: 75 6D 62 65 72 20 6F 66 20 63 68 61 6E 6E 65 6C umber of channel
000180: 73 2E 20 54 68 69 73 20 61 6C 6C 6F 77 73 20 20 s. This allows
000190: 73 6F 75 6E 64 73 20 20 74 68 61 74 0D 0A 20 20 sounds that..
0001A0: 20 20 20 20 20 77 65 72 65 20 6D 61 72 6B 65 64 were marked
0001B0: 20 77 69 74 68 20 61 20 68 6F 6C 64 20 62 69 74 with a hold bit
0001C0: 20 77 68 65 6E 20 74 68 65 79 20 77 65 72 65 20 when they were
0001D0: 73 65 74 20 75 70 20 62 79 20 20 53 4F 55 4E 44 set up by SOUND
0001E0: 20 20 51 55 45 55 45 20 20 74 6F 0D 0A 20 20 20 QUEUE to..
0001F0: 20 20 20 20 73 74 61 72 74 20 28 6F 74 68 65 72 start (other
Size : 512 (Real : 512)
000000: 20 66 61 63 74 6F 72 73 20 77 69 6C 6C 69 6E 67 factors willing
000010: 29 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 )....... E
000020: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
000030: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 ...... A c
000040: 6F 6E 74 61 69 6E 73 20 62 69 74 73 20 66 6F 72 ontains bits for
000050: 20 74 68 65 20 63 68 61 6E 6E 65 6C 73 20 74 6F the channels to
000060: 20 72 65 6C 65 61 73 65 2E 0D 0A 0D 0A 0D 0A 20 release.......
000070: 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 Exit condi
000080: 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tions:......
000090: 20 20 20 41 46 2C 20 42 43 2C 20 44 45 2C 20 48 AF, BC, DE, H
0000A0: 4C 20 61 6E 64 20 49 58 20 63 6F 72 72 75 70 74 L and IX corrupt
0000B0: 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 ... All ot
0000C0: 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 her registers pr
0000D0: 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 eserved.......
0000E0: 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D Notes:.....
0000F0: 0A 20 20 20 20 20 20 20 54 68 65 20 63 68 61 6E . The chan
000100: 6E 65 6C 73 20 74 6F 20 72 65 6C 65 61 73 65 20 nels to release
000110: 61 72 65 20 65 6E 63 6F 64 65 64 20 61 73 20 66 are encoded as f
000120: 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 ollows:......
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 74 Bit
000140: 20 30 3A 20 20 20 20 52 65 6C 65 61 73 65 20 63 0: Release c
000150: 68 61 6E 6E 65 6C 20 41 2E 0D 0A 20 20 20 20 20 hannel A...
000160: 20 20 20 20 20 20 20 20 20 20 20 42 69 74 20 31 Bit 1
000170: 3A 20 20 20 20 52 65 6C 65 61 73 65 20 63 68 61 : Release cha
000180: 6E 6E 65 6C 20 42 2E 0D 0A 20 20 20 20 20 20 20 nnel B...
000190: 20 20 20 20 20 20 20 20 20 42 69 74 20 32 3A 20 Bit 2:
0001A0: 20 20 20 52 65 6C 65 61 73 65 20 63 68 61 6E 6E Release chann
0001B0: 65 6C 20 43 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 el C.......
0001C0: 20 20 41 6C 6C 20 63 68 61 6E 6E 65 6C 73 20 74 All channels t
0001D0: 68 61 74 20 61 72 65 20 73 70 65 63 69 66 69 65 hat are specifie
0001E0: 64 20 61 72 65 20 72 65 6C 65 61 73 65 64 2E 0D d are released..
0001F0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 ..... All
Size : 512 (Real : 512)
000000: 73 6F 75 6E 64 73 20 63 75 72 72 65 6E 74 6C 79 sounds currently
000010: 20 68 65 6C 64 20 62 79 20 53 4F 55 4E 44 20 48 held by SOUND H
000020: 4F 4C 44 20 61 72 65 20 61 75 74 6F 6D 61 74 69 OLD are automati
000030: 63 61 6C 6C 79 20 72 65 6C 65 61 73 65 64 2E 0D cally released..
000040: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ..... This
000050: 20 72 6F 75 74 69 6E 65 20 6D 61 79 20 65 6E 61 routine may ena
000060: 62 6C 65 20 69 6E 74 65 72 72 75 70 74 73 2E 0D ble interrupts..
000070: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 ....... Re
000080: 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A lated entries:..
000090: 0D 0A 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 .... SOUND
0000A0: 20 51 55 45 55 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A QUEUE..........
0000B0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 ...... AMS
0000C0: 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F TRAD CPC464/664/
0000D0: 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 6128 FIRMWARE
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 2E page 15.
000100: 31 37 33 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 173.............
000110: 0A 20 20 20 20 20 20 20 31 34 36 3A 20 53 4F 55 . 146: SOU
000120: 4E 44 20 48 4F 4C 44 20 20 20 20 20 20 20 20 20 ND HOLD
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 20 23 42 43 42 36 0D 0A #BCB6..
000160: 0D 0A 20 20 20 20 20 20 20 53 74 6F 70 20 61 6C .. Stop al
000170: 6C 20 73 6F 75 6E 64 73 20 69 6E 20 6D 69 64 66 l sounds in midf
000180: 6C 69 67 68 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 light.....
000190: 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 Action:....
0001A0: 20 20 20 54 68 69 73 20 73 74 6F 70 73 20 61 6C This stops al
0001B0: 6C 20 73 6F 75 6E 64 73 20 69 6D 6D 65 64 69 61 l sounds immedia
0001C0: 74 65 6C 79 2E 20 54 68 65 20 73 6F 75 6E 64 73 tely. The sounds
0001D0: 20 63 61 6E 20 62 65 20 73 74 61 72 74 65 64 20 can be started
0001E0: 61 67 61 69 6E 20 20 62 79 0D 0A 20 20 20 20 20 again by..
0001F0: 20 20 63 61 6C 6C 69 6E 67 20 53 4F 55 4E 44 20 calling SOUND
Size : 512 (Real : 512)
000000: 43 4F 4E 54 49 4E 55 45 2E 0D 0A 0D 0A 20 20 20 CONTINUE.....
000010: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000020: 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 ions:....
000030: 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A No conditions...
000040: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
000050: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 nditions:....
000060: 20 20 20 20 49 66 20 61 20 73 6F 75 6E 64 20 77 If a sound w
000070: 61 73 20 61 63 74 69 76 65 3A 0D 0A 0D 0A 0D 0A as active:......
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 43 61 72 72 79 20 74 72 75 65 2E 0D 0A 0D 0A 0D Carry true......
0000A0: 0A 20 20 20 20 20 20 20 49 66 20 6E 6F 20 73 6F . If no so
0000B0: 75 6E 64 20 77 61 73 20 61 63 74 69 76 65 3A 0D und was active:.
0000C0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 .....
0000D0: 20 20 20 20 20 43 61 72 72 79 20 66 61 6C 73 65 Carry false
0000E0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C ....... Al
0000F0: 77 61 79 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ways:......
000100: 20 20 20 20 20 20 20 20 20 20 20 41 2C 20 42 43 A, BC
000110: 2C 20 48 4C 20 61 6E 64 20 6F 74 68 65 72 20 66 , HL and other f
000120: 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 lags corrupt...
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 A
000140: 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 ll other registe
000150: 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D rs preserved....
000160: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A ... Notes:
000170: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 6F 75 ...... Sou
000180: 6E 64 73 20 74 68 61 74 20 61 72 65 20 68 65 6C nds that are hel
000190: 64 20 62 79 20 74 68 69 73 20 72 6F 75 74 69 6E d by this routin
0001A0: 65 20 61 72 65 20 61 75 74 6F 6D 61 74 69 63 61 e are automatica
0001B0: 6C 6C 79 20 72 65 73 74 61 72 74 65 64 20 20 77 lly restarted w
0001C0: 68 65 6E 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E hen.. SOUN
0001D0: 44 20 51 55 45 55 45 20 6F 72 20 53 4F 55 4E 44 D QUEUE or SOUND
0001E0: 20 52 45 4C 45 41 53 45 20 61 72 65 20 63 61 6C RELEASE are cal
0001F0: 6C 65 64 20 61 73 20 77 65 6C 6C 20 61 73 20 77 led as well as w
Size : 512 (Real : 512)
000000: 68 65 6E 20 53 4F 55 4E 44 20 43 4F 4E 54 49 4E hen SOUND CONTIN
000010: 55 45 0D 0A 20 20 20 20 20 20 20 69 74 73 65 6C UE.. itsel
000020: 66 20 69 73 20 63 61 6C 6C 65 64 2E 0D 0A 0D 0A f is called.....
000030: 20 20 20 20 20 20 20 54 68 65 20 73 6F 75 6E 64 The sound
000040: 20 69 73 20 73 74 6F 70 70 65 64 20 62 79 20 20 is stopped by
000050: 68 61 6C 74 69 6E 67 20 20 74 68 65 20 20 65 78 halting the ex
000060: 65 63 75 74 69 6F 6E 20 20 6F 66 20 20 73 6F 75 ecution of sou
000070: 6E 64 20 20 61 6E 64 20 20 74 6F 6E 65 0D 0A 20 nd and tone..
000080: 20 20 20 20 20 20 65 6E 76 65 6C 6F 70 65 73 20 envelopes
000090: 61 6E 64 20 73 65 74 74 69 6E 67 20 74 68 65 20 and setting the
0000A0: 73 6F 75 6E 64 20 63 68 69 70 20 76 6F 6C 75 6D sound chip volum
0000B0: 65 20 74 6F 20 7A 65 72 6F 20 66 6F 72 20 61 6C e to zero for al
0000C0: 6C 20 20 63 68 61 6E 6E 65 6C 73 2E 0D 0A 20 20 l channels...
0000D0: 20 20 20 20 20 57 68 65 6E 20 74 68 65 20 73 6F When the so
0000E0: 75 6E 64 20 69 73 20 72 65 73 74 61 72 74 65 64 und is restarted
0000F0: 20 69 74 20 77 69 6C 6C 20 63 6F 6E 74 69 6E 75 it will continu
000100: 65 20 66 72 6F 6D 20 61 73 20 6E 65 61 72 20 77 e from as near w
000110: 68 65 72 65 20 69 74 20 77 61 73 0D 0A 0D 0A 20 here it was....
000120: 20 20 20 20 20 20 73 74 6F 70 70 65 64 20 61 73 stopped as
000130: 20 69 73 20 70 6F 73 73 69 62 6C 65 2E 0D 0A 0D is possible....
000140: 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 . This rou
000150: 74 69 6E 65 20 65 6E 61 62 6C 65 73 20 69 6E 74 tine enables int
000160: 65 72 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 20 20 errupts.......
000170: 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 Related ent
000180: 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 ries:....
000190: 53 4F 55 4E 44 20 43 4F 4E 54 49 4E 55 45 0D 0A SOUND CONTINUE..
0001A0: 20 20 20 20 20 20 20 53 4F 55 4E 44 20 52 45 53 SOUND RES
0001B0: 45 54 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ET............
0001C0: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
0001D0: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
0001E0: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 70 61 67 65 20 31 35 2E 31 37 34 0D 0A 0D 0A 0D page 15.174.....
000010: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000020: 31 34 37 3A 20 53 4F 55 4E 44 20 43 4F 4E 54 49 147: SOUND CONTI
000030: 4E 55 45 20 20 20 20 20 20 20 20 20 20 20 20 20 NUE
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000060: 20 23 42 43 42 39 0D 0A 0D 0A 0D 0A 20 20 20 20 #BCB9......
000070: 20 20 20 52 65 73 74 61 72 74 20 73 6F 75 6E 64 Restart sound
000080: 73 20 61 66 74 65 72 20 74 68 65 79 20 68 61 76 s after they hav
000090: 65 20 61 6C 6C 20 62 65 65 6E 20 68 65 6C 64 2E e all been held.
0000A0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 ...... Act
0000B0: 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ion:......
0000C0: 20 41 6C 6C 6F 77 73 20 73 6F 75 6E 64 73 20 74 Allows sounds t
0000D0: 68 61 74 20 68 61 76 65 20 62 65 65 6E 20 68 65 hat have been he
0000E0: 6C 64 20 62 79 20 63 61 6C 6C 69 6E 67 20 53 4F ld by calling SO
0000F0: 55 4E 44 20 48 4F 4C 44 20 74 6F 20 63 6F 6E 74 UND HOLD to cont
000100: 69 6E 75 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 inue.......
000110: 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F Entry conditio
000120: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
000130: 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A No conditions...
000140: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
000150: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D conditions:.....
000160: 0A 20 20 20 20 20 20 20 41 46 2C 20 42 43 2C 20 . AF, BC,
000170: 44 45 20 61 6E 64 20 49 58 20 63 6F 72 72 75 70 DE and IX corrup
000180: 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F t... All o
000190: 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 ther registers p
0001A0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
0001B0: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
0001C0: 0D 0A 20 20 20 20 20 20 20 49 66 20 6E 6F 20 73 .. If no s
0001D0: 6F 75 6E 64 73 20 61 72 65 20 68 65 6C 64 20 74 ounds are held t
0001E0: 68 65 6E 20 6E 6F 20 61 63 74 69 6F 6E 20 69 73 hen no action is
0001F0: 20 74 61 6B 65 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 taken.......
Size : 512 (Real : 512)
000000: 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 This routine
000010: 20 6D 61 79 20 65 6E 61 62 6C 65 20 69 6E 74 65 may enable inte
000020: 72 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 rrupts.........
000030: 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E Related en
000040: 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tries:......
000050: 20 20 20 53 4F 55 4E 44 20 48 4F 4C 44 0D 0A 20 SOUND HOLD..
000060: 20 20 20 20 20 20 53 4F 55 4E 44 20 52 45 4C 45 SOUND RELE
000070: 41 53 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ASE.............
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000090: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
0000A0: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
0000B0: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
0000C0: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
0000E0: 65 20 31 35 2E 31 37 35 0D 0A 0D 0A 0D 0A 0D 0A e 15.175........
0000F0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 34 38 ...... 148
000100: 3A 20 53 4F 55 4E 44 20 41 4D 50 4C 20 45 4E 56 : SOUND AMPL ENV
000110: 45 4C 4F 50 45 20 20 20 20 20 20 20 20 20 20 20 ELOPE
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
000140: 43 42 43 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 CBC.... Se
000150: 74 20 75 70 20 61 6E 20 61 6D 70 6C 69 74 75 64 t up an amplitud
000160: 65 20 65 6E 76 65 6C 6F 70 65 2E 0D 0A 0D 0A 20 e envelope.....
000170: 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D Action:...
000180: 0A 20 20 20 20 20 20 20 53 65 74 20 75 70 20 6F . Set up o
000190: 6E 65 20 6F 66 20 74 68 65 20 31 35 20 75 73 65 ne of the 15 use
0001A0: 72 20 70 72 6F 67 72 61 6D 6D 61 62 6C 65 20 61 r programmable a
0001B0: 6D 70 6C 69 74 75 64 65 20 28 76 6F 6C 75 6D 65 mplitude (volume
0001C0: 29 20 65 6E 76 65 6C 6F 70 65 73 2E 0D 0A 0D 0A ) envelopes.....
0001D0: 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E Entry con
0001E0: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 ditions:....
0001F0: 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 61 6E A contains an
Size : 512 (Real : 512)
000000: 20 65 6E 76 65 6C 6F 70 65 20 6E 75 6D 62 65 72 envelope number
000010: 2E 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 6E ... HL con
000020: 74 61 69 6E 73 20 74 68 65 20 61 64 64 72 65 73 tains the addres
000030: 73 20 6F 66 20 61 6E 20 61 6D 70 6C 69 74 75 64 s of an amplitud
000040: 65 20 64 61 74 61 20 62 6C 6F 63 6B 2E 0D 0A 0D e data block....
000050: 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E . Exit con
000060: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 ditions:....
000070: 20 20 20 49 66 20 65 6E 76 65 6C 6F 70 65 20 68 If envelope h
000080: 61 73 20 62 65 65 6E 20 73 65 74 20 4F 4B 3A 0D as been set OK:.
000090: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
0000A0: 20 20 20 43 61 72 72 79 20 74 72 75 65 2E 0D 0A Carry true...
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 HL contains the
0000D0: 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 20 64 address of the d
0000E0: 61 74 61 20 62 6C 6F 63 6B 20 2B 20 31 36 2E 0D ata block + 16..
0000F0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000100: 20 41 20 61 6E 64 20 42 43 20 63 6F 72 72 75 70 A and BC corrup
000110: 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 t..... If
000120: 74 68 65 20 65 6E 76 65 6C 6F 70 65 20 6E 75 6D the envelope num
000130: 62 65 72 20 69 73 20 69 6E 76 61 6C 69 64 3A 0D ber is invalid:.
000140: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000150: 20 20 20 43 61 72 72 79 20 66 61 6C 73 65 2E 0D Carry false..
000160: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000170: 20 41 2C 20 42 20 61 6E 64 20 48 4C 20 70 72 65 A, B and HL pre
000180: 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 served.....
000190: 20 20 41 6C 77 61 79 73 3A 0D 0A 0D 0A 20 20 20 Always:....
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 44 45 20 DE
0001B0: 61 6E 64 20 6F 74 68 65 72 20 66 6C 61 67 73 20 and other flags
0001C0: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
0001D0: 20 20 20 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 All ot
0001E0: 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 her registers pr
0001F0: 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 eserved.....
Size : 512 (Real : 512)
000000: 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 Notes:....
000010: 20 20 20 20 54 68 65 20 65 6E 76 65 6C 6F 70 65 The envelope
000020: 20 74 6F 20 73 65 74 20 75 70 20 69 73 20 73 70 to set up is sp
000030: 65 63 69 66 69 65 64 20 62 79 20 61 20 6E 75 6D ecified by a num
000040: 62 65 72 20 69 6E 20 74 68 65 20 72 61 6E 67 65 ber in the range
000050: 20 31 2E 2E 31 35 2E 20 20 4E 0D 0A 20 20 20 20 1..15. N..
000060: 20 20 20 65 6E 76 65 6C 6F 70 65 20 69 73 20 73 envelope is s
000070: 65 74 20 75 70 20 69 66 20 61 20 6E 75 6D 62 65 et up if a numbe
000080: 72 20 6F 75 74 73 69 64 65 20 74 68 69 73 20 72 r outside this r
000090: 61 6E 67 65 20 69 73 20 70 61 73 73 65 64 2E 0D ange is passed..
0000A0: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 61 6D ... The am
0000B0: 70 6C 69 74 75 64 65 20 64 61 74 61 20 62 6C 6F plitude data blo
0000C0: 63 6B 20 69 73 20 63 6F 70 69 65 64 20 69 6E 74 ck is copied int
0000D0: 6F 20 74 68 65 20 20 61 6D 70 6C 69 74 75 64 65 o the amplitude
0000E0: 20 20 65 6E 76 65 6C 6F 70 65 2E 20 20 54 68 65 envelope. The
0000F0: 0D 0A 20 20 20 20 20 20 20 64 61 74 61 20 62 6C .. data bl
000100: 6F 63 6B 20 6D 61 79 20 6C 69 65 20 69 6E 20 52 ock may lie in R
000110: 4F 4D 20 6F 72 20 69 6E 20 52 41 4D 2E 20 49 74 OM or in RAM. It
000120: 20 6D 61 79 20 20 6E 6F 74 20 20 6C 69 65 20 20 may not lie
000130: 69 6E 20 20 52 41 4D 20 20 68 69 64 64 65 6E 0D in RAM hidden.
000140: 0A 20 20 20 20 20 20 20 75 6E 64 65 72 6E 65 61 . undernea
000150: 74 68 20 61 20 52 4F 4D 2E 0D 0A 0D 0A 20 20 20 th a ROM.....
000160: 20 20 20 20 54 68 65 20 61 6D 70 6C 69 74 75 64 The amplitud
000170: 65 20 64 61 74 61 20 62 6C 6F 63 6B 20 68 61 73 e data block has
000180: 20 74 68 65 20 66 6F 6C 6C 6F 77 69 6E 67 20 6C the following l
000190: 61 79 6F 75 74 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 ayout:......
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 65 Byte
0001B0: 20 30 3A 20 20 20 20 20 20 20 20 20 20 20 20 20 0:
0001C0: 43 6F 75 6E 74 20 6F 66 20 73 65 63 74 69 6F 6E Count of section
0001D0: 73 20 69 6E 20 74 68 65 20 65 6E 76 65 6C 6F 70 s in the envelop
0001E0: 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 e...
0001F0: 20 20 20 20 42 79 74 65 73 20 31 2E 2E 33 3A 20 Bytes 1..3:
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 46 69 72 73 74 20 73 65 First se
000010: 63 74 69 6F 6E 20 6F 66 20 74 68 65 20 65 6E 76 ction of the env
000020: 65 6C 6F 70 65 2E 0D 0A 20 20 20 20 20 20 20 20 elope...
000030: 20 20 20 20 20 20 20 20 42 79 74 65 73 20 34 2E Bytes 4.
000040: 2E 36 3A 20 20 20 20 20 20 20 20 20 53 65 63 6F .6: Seco
000050: 6E 64 20 73 65 63 74 69 6F 6E 20 6F 66 20 74 68 nd section of th
000060: 65 20 65 6E 76 65 6C 6F 70 65 2E 0D 0A 20 20 20 e envelope...
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 Byt
000080: 65 73 20 37 2E 2E 39 3A 20 20 20 20 20 20 20 20 es 7..9:
000090: 20 54 68 69 72 64 20 73 65 63 74 69 6F 6E 20 6F Third section o
0000A0: 66 20 74 68 65 20 65 6E 76 65 6C 6F 70 65 2E 0D f the envelope..
0000B0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0000C0: 20 42 79 74 65 73 20 31 30 2E 2E 31 32 3A 20 20 Bytes 10..12:
0000D0: 20 20 20 20 20 46 6F 75 72 74 68 20 73 65 63 74 Fourth sect
0000E0: 69 6F 6E 20 6F 66 20 74 68 65 20 65 6E 76 65 6C ion of the envel
0000F0: 6F 70 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 ope...
000100: 20 20 20 20 20 20 42 79 74 65 73 20 31 33 2E 2E Bytes 13..
000110: 31 35 3A 20 20 20 20 20 20 20 46 69 66 74 68 20 15: Fifth
000120: 73 65 63 74 69 6F 6E 20 6F 66 20 74 68 65 20 65 section of the e
000130: 6E 76 65 6C 6F 70 65 2E 0D 0A 0D 0A 0D 0A 20 20 nvelope.......
000140: 20 20 20 20 20 54 68 65 20 66 69 72 73 74 20 62 The first b
000150: 79 74 65 20 6F 66 20 74 68 65 20 61 6D 70 6C 69 yte of the ampli
000160: 74 75 64 65 20 64 61 74 61 20 62 6C 6F 63 6B 20 tude data block
000170: 20 73 70 65 63 69 66 69 65 73 20 20 74 68 65 20 specifies the
000180: 20 6E 75 6D 62 65 72 20 20 6F 66 0D 0A 20 20 20 number of..
000190: 20 20 20 20 73 65 63 74 69 6F 6E 73 20 75 73 65 sections use
0001A0: 64 20 69 6E 20 74 68 65 20 65 6E 76 65 6C 6F 70 d in the envelop
0001B0: 65 2E 20 53 65 63 74 69 6F 6E 73 20 6E 6F 74 20 e. Sections not
0001C0: 75 73 65 64 20 6E 65 65 64 20 6E 6F 74 20 62 65 used need not be
0001D0: 20 20 73 65 74 20 20 75 70 2E 0D 0A 20 20 20 20 set up...
0001E0: 20 20 20 41 6E 20 65 6E 76 65 6C 6F 70 65 20 75 An envelope u
0001F0: 73 69 6E 67 20 6E 6F 20 73 65 63 74 69 6F 6E 73 sing no sections
Size : 512 (Real : 512)
000000: 20 68 61 73 20 61 20 73 70 65 63 69 61 6C 20 6D has a special m
000010: 65 61 6E 69 6E 67 20 2D 20 68 6F 6C 64 20 61 20 eaning - hold a
000020: 20 63 6F 6E 73 74 61 6E 74 0D 0A 20 20 20 20 20 constant..
000030: 20 20 76 6F 6C 75 6D 65 20 6C 61 73 74 69 6E 67 volume lasting
000040: 20 66 6F 72 20 32 20 73 65 63 6F 6E 64 73 2E 0D for 2 seconds..
000050: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000060: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000070: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
0000A0: 31 35 2E 31 37 36 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.176..........
0000B0: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 6E .... The n
0000C0: 75 6D 62 65 72 20 6F 66 20 73 65 63 74 69 6F 6E umber of section
0000D0: 73 20 74 6F 20 75 73 65 20 69 73 20 6E 6F 74 20 s to use is not
0000E0: 63 68 65 63 6B 65 64 2C 20 69 66 20 61 20 6E 75 checked, if a nu
0000F0: 6D 62 65 72 20 6F 75 74 73 69 64 65 20 20 74 68 mber outside th
000100: 65 0D 0A 20 20 20 20 20 20 20 72 61 6E 67 65 20 e.. range
000110: 30 2E 2E 35 20 69 73 20 73 75 70 70 6C 69 65 64 0..5 is supplied
000120: 20 74 68 65 6E 20 74 68 69 73 20 77 69 6C 6C 20 then this will
000130: 68 61 76 65 20 75 6E 70 72 65 64 69 63 74 61 62 have unpredictab
000140: 6C 65 20 65 66 66 65 63 74 73 2E 20 54 68 69 73 le effects. This
000150: 0D 0A 20 20 20 20 20 20 20 73 68 6F 75 6C 64 20 .. should
000160: 62 65 20 61 76 6F 69 64 65 64 2E 0D 0A 0D 0A 20 be avoided.....
000170: 20 20 20 20 20 20 45 61 63 68 20 73 65 63 74 69 Each secti
000180: 6F 6E 20 6F 66 20 74 68 65 20 61 6D 70 6C 69 74 on of the amplit
000190: 75 64 65 20 64 61 74 61 20 62 6C 6F 63 6B 20 63 ude data block c
0001A0: 61 6E 20 73 70 65 63 69 66 79 20 65 69 74 68 65 an specify eithe
0001B0: 72 20 61 20 68 61 72 64 77 61 72 65 0D 0A 20 20 r a hardware..
0001C0: 20 20 20 20 20 6F 72 20 61 20 73 6F 66 74 77 61 or a softwa
0001D0: 72 65 20 65 6E 76 65 6C 6F 70 65 2E 20 54 68 69 re envelope. Thi
0001E0: 73 20 69 73 20 69 6E 64 69 63 61 74 65 64 20 62 s is indicated b
0001F0: 79 20 74 68 65 20 20 66 69 72 73 74 20 20 62 79 y the first by
Size : 512 (Real : 512)
000000: 74 65 20 20 6F 66 20 20 74 68 65 0D 0A 20 20 20 te of the..
000010: 20 20 20 20 73 65 63 74 69 6F 6E 2E 0D 0A 0D 0A section.....
000020: 20 20 20 20 20 20 20 41 20 73 6F 66 74 77 61 72 A softwar
000030: 65 20 65 6E 76 65 6C 6F 70 65 20 73 65 63 74 69 e envelope secti
000040: 6F 6E 20 69 73 20 6C 61 69 64 20 6F 75 74 20 61 on is laid out a
000050: 73 20 66 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A 20 20 s follows:....
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 By
000070: 74 65 20 30 3A 20 20 20 53 74 65 70 20 63 6F 75 te 0: Step cou
000080: 6E 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 nt...
000090: 20 20 20 20 20 42 79 74 65 20 31 3A 20 20 20 53 Byte 1: S
0000A0: 74 65 70 20 73 69 7A 65 2E 0D 0A 20 20 20 20 20 tep size...
0000B0: 20 20 20 20 20 20 20 20 20 20 20 42 79 74 65 20 Byte
0000C0: 32 3A 20 20 20 50 61 75 73 65 20 74 69 6D 65 2E 2: Pause time.
0000D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 .... The f
0000E0: 61 63 74 20 74 68 61 74 20 74 68 69 73 20 69 73 act that this is
0000F0: 20 20 61 20 20 73 6F 66 74 77 61 72 65 20 20 65 a software e
000100: 6E 76 65 6C 6F 70 65 20 20 73 65 63 74 69 6F 6E nvelope section
000110: 20 20 72 61 74 68 65 72 20 20 74 68 61 6E 20 20 rather than
000120: 61 0D 0A 20 20 20 20 20 20 20 68 61 72 64 77 61 a.. hardwa
000130: 72 65 20 65 6E 76 65 6C 6F 70 65 20 73 65 63 74 re envelope sect
000140: 69 6F 6E 20 69 73 20 69 6E 64 69 63 61 74 65 64 ion is indicated
000150: 20 62 79 20 62 79 74 65 20 30 20 6E 6F 74 20 68 by byte 0 not h
000160: 61 76 69 6E 67 20 62 69 74 20 37 20 73 65 74 2E aving bit 7 set.
000170: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 .... If th
000180: 65 20 73 74 65 70 20 63 6F 75 6E 74 20 69 73 20 e step count is
000190: 69 6E 20 74 68 65 20 72 61 6E 67 65 20 31 2E 2E in the range 1..
0001A0: 32 37 20 74 68 65 6E 20 74 68 65 20 73 74 65 70 27 then the step
0001B0: 20 73 69 7A 65 20 69 73 20 61 64 64 65 64 20 74 size is added t
0001C0: 6F 0D 0A 20 20 20 20 20 20 20 74 68 65 20 76 6F o.. the vo
0001D0: 6C 75 6D 65 20 74 68 61 74 20 6E 75 6D 62 65 72 lume that number
0001E0: 20 6F 66 20 74 69 6D 65 73 20 77 69 74 68 20 61 of times with a
0001F0: 20 77 61 69 74 20 65 71 75 61 6C 20 74 6F 20 74 wait equal to t
Size : 512 (Real : 512)
000000: 68 65 20 70 61 75 73 65 20 74 69 6D 65 20 69 6E he pause time in
000010: 0D 0A 20 20 20 20 20 20 20 31 2F 31 30 30 73 20 .. 1/100s
000020: 6F 66 20 61 20 73 65 63 6F 6E 64 20 61 66 74 65 of a second afte
000030: 72 20 65 61 63 68 20 61 64 64 69 74 69 6F 6E 2E r each addition.
000040: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 .... If th
000050: 65 20 73 74 65 70 20 63 6F 75 6E 74 20 69 73 20 e step count is
000060: 7A 65 72 6F 20 74 68 65 20 73 74 65 70 20 73 69 zero the step si
000070: 7A 65 20 69 73 20 74 61 6B 65 6E 20 20 74 6F 20 ze is taken to
000080: 20 62 65 20 20 61 6E 20 20 61 62 73 6F 6C 75 74 be an absolut
000090: 65 0D 0A 20 20 20 20 20 20 20 76 6F 6C 75 6D 65 e.. volume
0000A0: 20 73 65 74 74 69 6E 67 2E 20 41 20 73 69 6E 67 setting. A sing
0000B0: 6C 65 20 77 61 69 74 20 6F 66 20 74 68 65 20 70 le wait of the p
0000C0: 61 75 73 65 20 74 69 6D 65 20 69 6E 20 31 2F 31 ause time in 1/1
0000D0: 30 30 73 20 6F 66 20 61 20 20 73 65 63 6F 6E 64 00s of a second
0000E0: 0D 0A 20 20 20 20 20 20 20 69 73 20 6D 61 64 65 .. is made
0000F0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 66 ....... Af
000100: 74 65 72 20 63 61 6C 63 75 6C 61 74 69 6E 67 20 ter calculating
000110: 74 68 65 20 6E 65 77 20 76 6F 6C 75 6D 65 20 74 the new volume t
000120: 68 69 73 20 69 73 20 6D 61 72 6B 65 64 20 77 69 his is marked wi
000130: 74 68 20 23 30 46 20 74 6F 20 6D 61 6B 65 20 20 th #0F to make
000140: 73 75 72 65 0D 0A 20 20 20 20 20 20 20 69 74 20 sure.. it
000150: 69 73 20 6C 65 67 61 6C 2E 20 54 68 75 73 2C 20 is legal. Thus,
000160: 61 6C 6C 20 61 72 69 74 68 6D 65 74 69 63 20 6F all arithmetic o
000170: 6E 20 74 68 65 20 76 6F 6C 75 6D 65 20 69 73 20 n the volume is
000180: 63 61 72 72 69 65 64 20 6F 75 74 20 20 6D 6F 64 carried out mod
000190: 75 6C 6F 0D 0A 20 20 20 20 20 20 20 31 36 2E 0D ulo.. 16..
0001A0: 0A 0D 0A 20 20 20 20 20 20 20 41 20 70 61 75 73 ... A paus
0001B0: 65 20 74 69 6D 65 20 6F 66 20 30 20 69 73 20 74 e time of 0 is t
0001C0: 61 6B 65 6E 20 74 6F 20 6D 65 61 6E 20 32 35 36 aken to mean 256
0001D0: 20 31 2F 31 30 30 73 20 6F 66 20 61 20 73 65 63 1/100s of a sec
0001E0: 6F 6E 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ond..... A
0001F0: 20 68 61 72 64 77 61 72 65 20 65 6E 76 65 6C 6F hardware envelo
Size : 512 (Real : 512)
000000: 70 65 20 73 65 63 74 69 6F 6E 20 69 73 20 6C 61 pe section is la
000010: 69 64 20 6F 75 74 20 61 73 20 66 6F 6C 6C 6F 77 id out as follow
000020: 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 s:....
000030: 20 20 20 20 20 20 42 79 74 65 20 30 3A 20 20 20 Byte 0:
000040: 20 20 20 20 45 6E 76 65 6C 6F 70 65 20 73 68 61 Envelope sha
000050: 70 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 pe...
000060: 20 20 20 20 20 42 79 74 65 20 31 2E 2E 32 3A 20 Byte 1..2:
000070: 20 20 20 45 6E 76 65 6C 6F 70 65 20 70 65 72 69 Envelope peri
000080: 6F 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 od..... Th
000090: 65 20 66 61 63 74 20 74 68 61 74 20 74 68 69 73 e fact that this
0000A0: 20 69 73 20 20 61 20 20 68 61 72 64 77 61 72 65 is a hardware
0000B0: 20 20 65 6E 76 65 6C 6F 70 65 20 20 73 65 63 74 envelope sect
0000C0: 69 6F 6E 20 20 72 61 74 68 65 72 20 20 74 68 61 ion rather tha
0000D0: 6E 20 20 61 0D 0A 20 20 20 20 20 20 20 73 6F 66 n a.. sof
0000E0: 74 77 61 72 65 20 65 6E 76 65 6C 6F 70 65 20 73 tware envelope s
0000F0: 65 63 74 69 6F 6E 20 69 73 20 69 6E 64 69 63 61 ection is indica
000100: 74 65 64 20 62 79 20 62 79 74 65 20 30 20 68 61 ted by byte 0 ha
000110: 76 69 6E 67 20 62 69 74 20 37 20 73 65 74 2E 0D ving bit 7 set..
000120: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 65 6E ... The en
000130: 76 65 6C 6F 70 65 20 73 68 61 70 65 20 28 6D 61 velope shape (ma
000140: 73 6B 65 64 20 77 69 74 68 20 23 37 46 29 20 69 sked with #7F) i
000150: 73 20 73 65 6E 74 20 74 6F 20 20 72 65 67 69 73 s sent to regis
000160: 74 65 72 20 20 31 33 20 20 6F 66 20 20 74 68 65 ter 13 of the
000170: 0D 0A 20 20 20 20 20 20 20 73 6F 75 6E 64 20 67 .. sound g
000180: 65 6E 65 72 61 74 6F 72 2E 20 54 68 69 73 20 73 enerator. This s
000190: 65 74 20 74 68 65 20 20 73 68 61 70 65 20 20 6F et the shape o
0001A0: 66 20 20 74 68 65 20 20 68 61 72 64 77 61 72 65 f the hardware
0001B0: 20 20 65 6E 76 65 6C 6F 70 65 20 20 61 6E 64 0D envelope and.
0001C0: 0A 20 20 20 20 20 20 20 77 68 65 74 68 65 72 20 . whether
0001D0: 69 74 20 72 65 70 65 61 74 73 20 28 73 65 65 20 it repeats (see
0001E0: 41 70 70 65 6E 64 69 78 20 49 58 20 66 6F 72 20 Appendix IX for
0001F0: 64 65 74 61 69 6C 73 29 2E 0D 0A 0D 0A 20 20 20 details).....
Size : 512 (Real : 512)
000000: 20 20 20 20 54 68 65 20 65 6E 76 65 6C 6F 70 65 The envelope
000010: 20 70 65 72 69 6F 64 20 69 73 20 73 65 6E 74 20 period is sent
000020: 74 6F 20 20 72 65 67 69 73 74 65 72 73 20 20 31 to registers 1
000030: 31 20 20 61 6E 64 20 20 31 32 20 20 6F 66 20 20 1 and 12 of
000040: 74 68 65 20 20 73 6F 75 6E 64 0D 0A 20 20 20 20 the sound..
000050: 20 20 20 67 65 6E 65 72 61 74 6F 72 2E 20 54 68 generator. Th
000060: 65 73 65 20 73 65 74 20 74 68 65 20 6C 65 6E 67 ese set the leng
000070: 74 68 20 6F 66 20 74 68 65 20 68 61 72 64 77 61 th of the hardwa
000080: 72 65 20 65 6E 76 65 6C 6F 70 65 20 28 73 65 65 re envelope (see
000090: 20 41 70 70 65 6E 64 69 78 0D 0A 20 20 20 20 20 Appendix..
0000A0: 20 20 49 58 20 66 6F 72 20 64 65 74 61 69 6C 73 IX for details
0000B0: 29 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 )..... The
0000C0: 20 73 65 63 74 69 6F 6E 20 61 66 74 65 72 20 61 section after a
0000D0: 20 68 61 72 64 77 61 72 65 20 73 65 63 74 69 6F hardware sectio
0000E0: 6E 20 73 68 6F 75 6C 64 20 62 65 20 61 20 70 61 n should be a pa
0000F0: 75 73 65 20 6C 6F 6E 67 20 65 6E 6F 75 67 68 20 use long enough
000100: 20 74 6F 0D 0A 20 20 20 20 20 20 20 61 6C 6C 6F to.. allo
000110: 77 20 74 68 65 20 68 61 72 64 77 61 72 65 20 65 w the hardware e
000120: 6E 76 65 6C 6F 70 65 20 74 6F 20 6F 70 65 72 61 nvelope to opera
000130: 74 65 2E 20 41 20 20 70 61 75 73 65 20 20 63 61 te. A pause ca
000140: 6E 20 20 62 65 20 20 63 6F 6E 73 74 72 75 63 74 n be construct
000150: 65 64 0D 0A 20 20 20 20 20 20 20 75 73 69 6E 67 ed.. using
000160: 20 61 20 73 6F 66 74 77 61 72 65 20 65 6E 76 65 a software enve
000170: 6C 6F 70 65 20 77 69 74 68 20 61 20 73 74 65 70 lope with a step
000180: 20 73 69 7A 65 20 6F 66 20 30 20 61 6E 64 20 20 size of 0 and
000190: 77 69 74 68 20 20 74 68 65 20 20 72 65 70 65 61 with the repea
0001A0: 74 0D 0A 20 20 20 20 20 20 20 63 6F 75 6E 74 20 t.. count
0001B0: 61 6E 64 20 70 61 75 73 65 20 74 69 6D 65 20 6A and pause time j
0001C0: 75 67 67 6C 69 6E 67 20 74 6F 20 67 69 76 65 20 uggling to give
0001D0: 74 68 65 20 72 69 67 68 74 20 74 6F 74 61 6C 20 the right total
0001E0: 74 69 6D 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 time.....
0001F0: 54 68 65 72 65 20 69 73 20 6E 6F 20 70 72 6F 74 There is no prot
Size : 512 (Real : 512)
000000: 65 63 74 69 6F 6E 20 61 67 61 69 6E 73 74 20 63 ection against c
000010: 68 61 6E 67 69 6E 67 20 61 6E 20 65 6E 76 65 6C hanging an envel
000020: 6F 70 65 20 77 68 69 6C 73 74 20 20 69 74 20 20 ope whilst it
000030: 69 73 20 20 69 6E 0D 0A 20 20 20 20 20 20 20 75 is in.. u
000040: 73 65 2E 20 54 68 69 73 20 63 6F 75 6C 64 20 68 se. This could h
000050: 61 76 65 20 75 6E 70 72 65 64 69 63 74 61 62 6C ave unpredictabl
000060: 65 20 65 66 66 65 63 74 73 20 61 6E 64 20 73 68 e effects and sh
000070: 6F 75 6C 64 20 62 65 20 61 76 6F 69 64 65 64 2E ould be avoided.
000080: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000090: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
0000A0: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
0000B0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
0000D0: 20 31 35 2E 31 37 37 0D 0A 0D 0A 0D 0A 0D 0A 0D 15.177.........
0000E0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
0000F0: 6C 65 6E 67 74 68 20 6F 66 20 74 68 65 20 73 6F length of the so
000100: 75 6E 64 20 63 61 6E 20 20 65 69 74 68 65 72 20 und can either
000110: 20 62 65 20 20 64 65 74 65 72 6D 69 6E 65 64 20 be determined
000120: 20 62 79 20 20 74 68 65 20 20 64 75 72 61 74 69 by the durati
000130: 6F 6E 0D 0A 20 20 20 20 20 20 20 73 75 70 70 6C on.. suppl
000140: 69 65 64 20 77 68 65 6E 20 74 68 65 20 73 6F 75 ied when the sou
000150: 6E 64 20 69 73 20 71 75 65 75 65 64 20 6F 72 20 nd is queued or
000160: 62 79 20 74 68 65 20 65 6E 76 65 6C 6F 70 65 20 by the envelope
000170: 74 65 72 6D 69 6E 61 74 69 6E 67 20 20 28 73 65 terminating (se
000180: 65 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 20 e.. SOUND
000190: 51 55 45 55 45 29 2E 20 49 66 20 61 20 64 75 72 QUEUE). If a dur
0001A0: 61 74 69 6F 6E 20 69 73 20 73 65 74 20 74 68 61 ation is set tha
0001B0: 74 20 69 73 20 73 68 6F 72 74 65 72 20 74 68 61 t is shorter tha
0001C0: 6E 20 20 74 68 65 20 20 65 6E 76 65 6C 6F 70 65 n the envelope
0001D0: 0D 0A 20 20 20 20 20 20 20 74 68 65 6E 20 74 68 .. then th
0001E0: 65 20 65 6E 76 65 6C 6F 70 65 20 69 73 20 74 72 e envelope is tr
0001F0: 75 6E 63 61 74 65 64 2E 20 49 66 20 74 68 65 20 uncated. If the
Size : 512 (Real : 512)
000000: 64 75 72 61 74 69 6F 6E 20 20 69 73 20 20 6C 6F duration is lo
000010: 6E 67 65 72 20 20 74 68 61 6E 20 20 74 68 65 0D nger than the.
000020: 0A 20 20 20 20 20 20 20 65 6E 76 65 6C 6F 70 65 . envelope
000030: 20 74 68 65 6E 20 20 74 68 65 20 20 66 69 6E 61 then the fina
000040: 6C 20 20 76 6F 6C 75 6D 65 20 20 69 73 20 20 73 l volume is s
000050: 75 73 74 61 69 6E 65 64 20 20 75 6E 74 69 6C 20 ustained until
000060: 20 74 68 65 20 20 64 75 72 61 74 69 6F 6E 0D 0A the duration..
000070: 20 20 20 20 20 20 20 65 78 70 69 72 65 73 2E 0D expires..
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000090: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
0000A0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 4F 55 ...... SOU
0000B0: 4E 44 20 41 20 41 44 44 52 45 53 53 0D 0A 20 20 ND A ADDRESS..
0000C0: 20 20 20 20 20 53 4F 55 4E 44 20 54 4F 4E 45 20 SOUND TONE
0000D0: 45 4E 56 45 4C 4F 50 45 0D 0A 0D 0A 0D 0A 0D 0A ENVELOPE........
0000E0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000F0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000100: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000110: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000120: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000130: 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 .. AMSTRAD
000140: 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 CPC464/664/6128
000150: 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 FIRMWARE
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 20 20 20 70 61 67 65 20 31 35 2E 31 37 38 0D page 15.178.
000180: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
000190: 20 20 20 20 31 34 39 3A 20 53 4F 55 4E 44 20 54 149: SOUND T
0001A0: 4F 4E 45 20 45 4E 56 45 4C 4F 50 45 20 20 20 20 ONE ENVELOPE
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 20 20 23 42 43 42 46 0D 0A 0D 0A 20 20 #BCBF....
0001E0: 20 20 20 20 20 53 65 74 20 75 70 20 61 20 74 6F Set up a to
0001F0: 6E 65 20 65 6E 76 65 6C 6F 70 65 2E 0D 0A 0D 0A ne envelope.....
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A Action:..
000010: 0D 0A 20 20 20 20 20 20 20 53 65 74 20 75 70 20 .. Set up
000020: 6F 6E 65 20 6F 66 20 74 68 65 20 31 35 20 75 73 one of the 15 us
000030: 65 72 20 70 72 6F 67 72 61 6D 6D 61 62 6C 65 20 er programmable
000040: 74 6F 6E 65 20 65 6E 76 65 6C 6F 70 65 73 2E 0D tone envelopes..
000050: 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 ... Entry
000060: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
000070: 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 A contains
000080: 20 61 6E 20 65 6E 76 65 6C 6F 70 65 20 6E 75 6D an envelope num
000090: 62 65 72 2E 0D 0A 20 20 20 20 20 20 20 48 4C 20 ber... HL
0000A0: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 contains the add
0000B0: 72 65 73 73 20 6F 66 20 61 20 74 6F 6E 65 20 64 ress of a tone d
0000C0: 61 74 61 20 62 6C 6F 63 6B 2E 0D 0A 0D 0A 0D 0A ata block.......
0000D0: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
0000E0: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 nditions:....
0000F0: 20 20 20 20 49 66 20 74 68 65 20 65 6E 76 65 6C If the envel
000100: 6F 70 65 20 68 61 73 20 62 65 65 6E 20 73 65 74 ope has been set
000110: 20 75 70 20 4F 4B 3A 0D 0A 0D 0A 20 20 20 20 20 up OK:....
000120: 20 20 20 20 20 20 20 20 20 20 20 43 61 72 72 79 Carry
000130: 20 74 72 75 65 2E 0D 0A 20 20 20 20 20 20 20 20 true...
000140: 20 20 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 HL conta
000150: 69 6E 73 20 74 68 65 20 61 64 64 72 65 73 73 20 ins the address
000160: 6F 66 20 74 68 65 20 64 61 74 61 20 62 6C 6F 63 of the data bloc
000170: 6B 20 2B 20 31 36 2E 0D 0A 20 20 20 20 20 20 20 k + 16...
000180: 20 20 20 20 20 20 20 20 20 41 20 61 6E 64 20 42 A and B
000190: 43 20 63 6F 72 72 75 70 74 2E 0D 0A 0D 0A 20 20 C corrupt.....
0001A0: 20 20 20 20 20 49 66 20 74 68 65 20 65 6E 76 65 If the enve
0001B0: 6C 6F 70 65 20 6E 75 6D 62 65 72 20 69 73 20 69 lope number is i
0001C0: 6E 76 61 6C 69 64 3A 0D 0A 0D 0A 20 20 20 20 20 nvalid:....
0001D0: 20 20 20 20 20 20 20 20 20 20 20 43 61 72 72 79 Carry
0001E0: 20 66 61 6C 73 65 2E 0D 0A 20 20 20 20 20 20 20 false...
0001F0: 20 20 20 20 20 20 20 20 20 41 2C 20 42 43 20 61 A, BC a
Size : 512 (Real : 512)
000000: 6E 64 20 48 4C 20 70 72 65 73 65 72 76 65 64 2E nd HL preserved.
000010: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C 77 61 79 .... Alway
000020: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 s:......
000030: 20 20 20 20 20 20 20 20 44 45 20 61 6E 64 20 6F DE and o
000040: 74 68 65 72 20 66 6C 61 67 73 20 63 6F 72 72 75 ther flags corru
000050: 70 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 pt...
000060: 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 All other r
000070: 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 egisters preserv
000080: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
000090: 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 Notes:......
0000A0: 20 20 20 54 68 65 20 65 6E 76 65 6C 6F 70 65 20 The envelope
0000B0: 74 6F 20 73 65 74 20 75 70 20 69 73 20 73 70 65 to set up is spe
0000C0: 63 69 66 69 65 64 20 62 79 20 61 20 6E 75 6D 62 cified by a numb
0000D0: 65 72 20 69 6E 20 74 68 65 20 72 61 6E 67 65 20 er in the range
0000E0: 31 2E 2E 31 35 2E 20 4E 6F 0D 0A 20 20 20 20 20 1..15. No..
0000F0: 20 20 65 6E 76 65 6C 6F 70 65 20 69 73 20 73 65 envelope is se
000100: 74 20 75 70 20 69 66 20 61 20 6E 75 6D 62 65 72 t up if a number
000110: 20 6F 75 74 73 69 64 65 20 74 68 69 73 20 72 61 outside this ra
000120: 6E 67 65 20 69 73 20 70 61 73 73 65 64 2E 0D 0A nge is passed...
000130: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 74 .... The t
000140: 6F 6E 65 20 64 61 74 61 20 62 6C 6F 63 6B 20 69 one data block i
000150: 73 20 63 6F 70 69 65 64 20 69 6E 74 6F 20 74 68 s copied into th
000160: 65 20 74 6F 6E 65 20 65 6E 76 65 6C 6F 70 65 2E e tone envelope.
000170: 20 54 68 65 20 20 64 61 74 61 20 20 62 6C 6F 63 The data bloc
000180: 6B 0D 0A 20 20 20 20 20 20 20 6D 61 79 20 6C 69 k.. may li
000190: 65 20 69 6E 20 52 4F 4D 20 6F 72 20 69 6E 20 52 e in ROM or in R
0001A0: 41 4D 2E 20 49 74 20 6D 61 79 20 6E 6F 74 20 6C AM. It may not l
0001B0: 69 65 20 69 6E 20 52 41 4D 20 75 6E 64 65 72 6E ie in RAM undern
0001C0: 65 61 74 68 20 61 20 52 4F 4D 2E 0D 0A 0D 0A 0D eath a ROM......
0001D0: 0A 20 20 20 20 20 20 20 54 68 65 20 74 6F 6E 65 . The tone
0001E0: 20 64 61 74 61 20 62 6C 6F 63 6B 20 68 61 73 20 data block has
0001F0: 74 68 65 20 66 6F 6C 6C 6F 77 69 6E 67 20 6C 61 the following la
Size : 512 (Real : 512)
000000: 79 6F 75 74 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 yout:......
000010: 20 20 20 20 20 20 20 20 20 20 20 42 79 74 65 20 Byte
000020: 30 3A 20 20 20 20 20 20 20 20 20 20 20 20 20 43 0: C
000030: 6F 75 6E 74 20 6F 66 20 73 65 63 74 69 6F 6E 73 ount of sections
000040: 20 69 6E 20 74 68 65 20 65 6E 76 65 6C 6F 70 65 in the envelope
000050: 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000060: 20 20 20 42 79 74 65 73 20 31 2E 2E 33 3A 20 20 Bytes 1..3:
000070: 20 20 20 20 20 20 20 46 69 72 73 74 20 73 65 63 First sec
000080: 74 69 6F 6E 20 6F 66 20 74 68 65 20 65 6E 76 65 tion of the enve
000090: 6C 6F 70 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 lope...
0000A0: 20 20 20 20 20 20 20 42 79 74 65 73 20 34 2E 2E Bytes 4..
0000B0: 36 3A 20 20 20 20 20 20 20 20 20 53 65 63 6F 6E 6: Secon
0000C0: 64 20 73 65 63 74 69 6F 6E 20 6F 66 20 74 68 65 d section of the
0000D0: 20 65 6E 76 65 6C 6F 70 65 2E 0D 0A 20 20 20 20 envelope...
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 65 Byte
0000F0: 73 20 37 2E 2E 39 3A 20 20 20 20 20 20 20 20 20 s 7..9:
000100: 54 68 69 72 64 20 73 65 63 74 69 6F 6E 20 6F 66 Third section of
000110: 20 74 68 65 20 65 6E 76 65 6C 6F 70 65 2E 0D 0A the envelope...
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 42 79 74 65 73 20 31 30 2E 2E 31 32 3A 20 20 20 Bytes 10..12:
000140: 20 20 20 20 46 6F 75 72 74 68 20 73 65 63 74 69 Fourth secti
000150: 6F 6E 20 6F 66 20 74 68 65 20 65 6E 76 65 6C 6F on of the envelo
000160: 70 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 pe...
000170: 20 20 20 20 20 42 79 74 65 73 20 31 33 2E 2E 31 Bytes 13..1
000180: 35 3A 20 20 20 20 20 20 20 46 69 66 74 68 20 73 5: Fifth s
000190: 65 63 74 69 6F 6E 20 6F 66 20 74 68 65 20 65 6E ection of the en
0001A0: 76 65 6C 6F 70 65 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D velope..........
0001B0: 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 . AMSTRAD
0001C0: 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 CPC464/664/6128
0001D0: 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 FIRMWARE
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 70 61 67 65 20 31 35 2E 31 37 39 0D 0A page 15.179..
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 54 68 65 20 66 69 72 73 74 20 62 79 74 The first byt
000020: 65 20 6F 66 20 74 68 65 20 74 6F 6E 65 20 64 61 e of the tone da
000030: 74 61 20 62 6C 6F 63 6B 20 28 6D 61 73 6B 65 64 ta block (masked
000040: 20 77 69 74 68 20 23 37 46 29 20 73 70 65 63 69 with #7F) speci
000050: 66 69 65 73 20 20 74 68 65 0D 0A 20 20 20 20 20 fies the..
000060: 20 20 6E 75 6D 62 65 72 20 6F 66 20 73 65 63 74 number of sect
000070: 69 6F 6E 73 20 75 73 65 64 20 69 6E 20 74 68 65 ions used in the
000080: 20 65 6E 76 65 6C 6F 70 65 2E 20 53 65 63 74 69 envelope. Secti
000090: 6F 6E 73 20 6E 6F 74 20 75 73 65 64 20 6E 65 65 ons not used nee
0000A0: 64 20 6E 6F 74 20 62 65 0D 0A 20 20 20 20 20 20 d not be..
0000B0: 20 73 65 74 20 75 70 2E 20 41 6E 20 65 6E 76 65 set up. An enve
0000C0: 6C 6F 70 65 20 75 73 69 6E 67 20 6E 6F 20 73 65 lope using no se
0000D0: 63 74 69 6F 6E 73 20 77 69 6C 6C 20 6E 6F 74 20 ctions will not
0000E0: 61 6C 74 65 72 20 74 68 65 20 74 6F 6E 65 20 28 alter the tone (
0000F0: 69 2E 65 2E 20 6E 6F 0D 0A 20 20 20 20 20 20 20 i.e. no..
000100: 65 6E 76 65 6C 6F 70 69 6E 67 29 2E 20 54 68 65 enveloping). The
000110: 20 6E 75 6D 62 65 72 20 6F 66 20 73 65 63 74 69 number of secti
000120: 6F 6E 73 20 74 6F 20 75 73 65 20 69 73 20 6E 6F ons to use is no
000130: 74 20 63 68 65 63 6B 65 64 2C 20 69 66 20 61 20 t checked, if a
000140: 6E 75 6D 62 65 72 0D 0A 20 20 20 20 20 20 20 6F number.. o
000150: 75 74 73 69 64 65 20 74 68 65 20 72 61 6E 67 65 utside the range
000160: 20 30 2E 2E 35 20 69 73 20 73 75 70 70 6C 69 65 0..5 is supplie
000170: 64 20 74 68 65 6E 20 74 68 69 73 20 77 69 6C 6C d then this will
000180: 20 20 68 61 76 65 20 20 75 6E 70 72 65 64 69 63 have unpredic
000190: 74 61 62 6C 65 0D 0A 20 20 20 20 20 20 20 65 66 table.. ef
0001A0: 66 65 63 74 73 2E 20 54 68 69 73 20 73 68 6F 75 fects. This shou
0001B0: 6C 64 20 62 65 20 61 76 6F 69 64 65 64 2E 0D 0A ld be avoided...
0001C0: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 74 6F 70 .. The top
0001D0: 20 62 69 74 2C 20 62 69 74 20 37 2C 20 6F 66 20 bit, bit 7, of
0001E0: 74 68 65 20 63 6F 75 6E 74 20 20 69 73 20 20 75 the count is u
0001F0: 73 65 64 20 20 74 6F 20 20 69 6E 64 69 63 61 74 sed to indicat
Size : 512 (Real : 512)
000000: 65 20 20 61 20 20 72 65 70 65 61 74 69 6E 67 0D e a repeating.
000010: 0A 20 20 20 20 20 20 20 65 6E 76 65 6C 6F 70 65 . envelope
000020: 2E 20 49 66 20 74 68 69 73 20 62 69 74 20 69 73 . If this bit is
000030: 20 20 73 65 74 20 20 74 68 65 6E 20 20 77 68 65 set then whe
000040: 6E 20 20 74 68 65 20 20 6C 61 73 74 20 20 73 65 n the last se
000050: 63 74 69 6F 6E 20 20 6F 66 20 20 74 68 65 0D 0A ction of the..
000060: 20 20 20 20 20 20 20 65 6E 76 65 6C 6F 70 65 20 envelope
000070: 66 69 6E 69 73 68 65 73 20 74 68 65 20 66 69 72 finishes the fir
000080: 73 74 20 77 69 6C 6C 20 62 65 20 75 73 65 64 20 st will be used
000090: 61 67 61 69 6E 2E 0D 0A 0D 0A 20 20 20 20 20 20 again.....
0000A0: 20 45 61 63 68 20 73 65 63 74 69 6F 6E 20 6F 66 Each section of
0000B0: 20 74 68 65 20 74 6F 6E 65 20 64 61 74 61 20 62 the tone data b
0000C0: 6C 6F 63 6B 20 69 73 20 6C 61 69 64 20 6F 75 74 lock is laid out
0000D0: 20 61 73 20 66 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A as follows:....
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 42 79 74 65 20 30 3A 20 20 20 53 74 65 70 20 63 Byte 0: Step c
000100: 6F 75 6E 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 ount...
000110: 20 20 20 20 20 20 20 42 79 74 65 20 31 3A 20 20 Byte 1:
000120: 20 53 74 65 70 20 73 69 7A 65 2E 0D 0A 20 20 20 Step size...
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 Byt
000140: 65 20 32 3A 20 20 20 50 61 75 73 65 20 74 69 6D e 2: Pause tim
000150: 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 e..... If
000160: 74 68 65 20 73 74 65 70 20 63 6F 75 6E 74 20 6C the step count l
000170: 69 65 73 20 69 6E 20 74 68 65 20 72 61 6E 67 65 ies in the range
000180: 20 23 30 30 2E 2E 23 45 46 20 74 68 65 6E 20 20 #00..#EF then
000190: 74 68 65 20 20 73 65 63 74 69 6F 6E 20 20 69 73 the section is
0001A0: 20 20 61 0D 0A 20 20 20 20 20 20 20 72 65 6C 61 a.. rela
0001B0: 74 69 76 65 20 73 65 63 74 69 6F 6E 2E 20 54 68 tive section. Th
0001C0: 65 20 73 74 65 70 20 73 69 7A 65 20 69 73 20 73 e step size is s
0001D0: 69 67 6E 20 65 78 74 65 6E 64 65 64 20 28 62 69 ign extended (bi
0001E0: 74 20 37 20 69 73 20 20 63 6F 70 69 65 64 20 20 t 7 is copied
0001F0: 74 6F 0D 0A 20 20 20 20 20 20 20 62 69 74 73 20 to.. bits
Size : 512 (Real : 512)
000000: 38 2E 2E 31 35 29 20 61 6E 64 20 69 73 20 61 64 8..15) and is ad
000010: 64 65 64 20 74 6F 20 74 68 65 20 63 75 72 72 65 ded to the curre
000020: 6E 74 20 20 74 6F 6E 65 20 20 70 65 72 69 6F 64 nt tone period
000030: 20 20 74 68 65 20 20 6E 75 6D 62 65 72 20 20 6F the number o
000040: 66 0D 0A 20 20 20 20 20 20 20 74 69 6D 65 73 20 f.. times
000050: 73 70 65 63 69 66 69 65 64 20 62 79 20 74 68 65 specified by the
000060: 20 73 74 65 70 20 63 6F 75 6E 74 2E 20 41 66 74 step count. Aft
000070: 65 72 20 65 61 63 68 20 61 64 64 69 74 69 6F 6E er each addition
000080: 20 61 20 77 61 69 74 20 20 6F 66 20 20 74 68 65 a wait of the
000090: 0D 0A 20 20 20 20 20 20 20 70 61 75 73 65 20 74 .. pause t
0000A0: 69 6D 65 20 69 6E 20 31 2F 31 30 30 73 20 6F 66 ime in 1/100s of
0000B0: 20 61 20 73 65 63 6F 6E 64 20 69 73 20 6D 61 64 a second is mad
0000C0: 65 2E 20 54 68 65 20 73 6F 75 6E 64 20 63 68 69 e. The sound chi
0000D0: 70 20 6F 6E 6C 79 20 75 73 65 73 20 74 68 65 0D p only uses the.
0000E0: 0A 0D 0A 20 20 20 20 20 20 20 6C 6F 77 65 72 20 ... lower
0000F0: 31 32 20 62 69 74 73 20 6F 66 20 74 68 65 20 74 12 bits of the t
000100: 6F 6E 65 20 70 65 72 69 6F 64 20 73 6F 20 20 61 one period so a
000110: 6C 6C 20 20 61 72 69 74 68 6D 65 74 69 63 20 20 ll arithmetic
000120: 69 73 20 20 63 61 72 72 69 65 64 20 20 6F 75 74 is carried out
000130: 0D 0A 20 20 20 20 20 20 20 6D 6F 64 75 6C 6F 20 .. modulo
000140: 23 31 30 30 30 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 #1000.......
000150: 20 20 20 41 20 73 74 65 70 20 63 6F 75 6E 74 20 A step count
000160: 6F 66 20 30 20 69 73 20 74 61 6B 65 6E 20 74 6F of 0 is taken to
000170: 20 6D 65 61 6E 20 31 20 73 74 65 70 20 77 68 69 mean 1 step whi
000180: 6C 73 74 20 61 20 70 61 75 73 65 20 74 69 6D 65 lst a pause time
000190: 20 6F 66 20 30 20 20 69 73 0D 0A 20 20 20 20 20 of 0 is..
0001A0: 20 20 74 61 6B 65 6E 20 74 6F 20 6D 65 61 6E 20 taken to mean
0001B0: 32 35 36 20 31 2F 31 30 30 73 20 6F 66 20 61 20 256 1/100s of a
0001C0: 73 65 63 6F 6E 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 second.......
0001D0: 20 20 20 20 49 66 20 74 68 65 20 73 74 65 70 20 If the step
0001E0: 63 6F 75 6E 74 20 6C 69 65 73 20 69 6E 20 74 68 count lies in th
0001F0: 65 20 72 61 6E 67 65 20 23 46 30 2E 2E 23 46 46 e range #F0..#FF
Size : 512 (Real : 512)
000000: 20 74 68 65 6E 20 74 68 65 20 20 73 65 63 74 69 then the secti
000010: 6F 6E 20 20 69 73 20 20 61 6E 0D 0A 20 20 20 20 on is an..
000020: 20 20 20 61 62 73 6F 6C 75 74 65 20 73 65 63 74 absolute sect
000030: 69 6F 6E 2E 20 54 68 65 20 6C 65 61 73 74 20 73 ion. The least s
000040: 69 67 6E 69 66 69 63 61 6E 74 20 66 6F 75 72 20 ignificant four
000050: 62 69 74 73 20 6F 66 20 20 74 68 65 20 20 73 74 bits of the st
000060: 65 70 20 20 63 6F 75 6E 74 0D 0A 20 20 20 20 20 ep count..
000070: 20 20 61 72 65 20 74 61 6B 65 6E 20 74 6F 20 62 are taken to b
000080: 65 20 74 68 65 20 6D 6F 73 74 20 73 69 67 6E 69 e the most signi
000090: 66 69 63 61 6E 74 20 62 79 74 65 20 6F 66 20 74 ficant byte of t
0000A0: 68 65 20 74 6F 6E 65 20 70 65 72 69 6F 64 20 20 he tone period
0000B0: 61 6E 64 20 20 74 68 65 0D 0A 20 20 20 20 20 20 and the..
0000C0: 20 73 74 65 70 20 73 69 7A 65 20 69 73 20 74 61 step size is ta
0000D0: 6B 65 6E 20 74 6F 20 62 65 20 74 68 65 20 6C 65 ken to be the le
0000E0: 61 73 74 20 73 69 67 6E 69 66 69 63 61 6E 74 20 ast significant
0000F0: 62 79 74 65 2E 20 54 68 69 73 20 74 6F 6E 65 20 byte. This tone
000100: 20 70 65 72 69 6F 64 0D 0A 20 20 20 20 20 20 20 period..
000110: 69 73 20 73 65 74 20 69 6D 6D 65 64 69 61 74 65 is set immediate
000120: 6C 79 20 61 6E 64 20 69 73 20 66 6F 6C 6C 6F 77 ly and is follow
000130: 65 64 20 62 79 20 61 20 70 61 75 73 65 20 77 68 ed by a pause wh
000140: 6F 73 65 20 6C 65 6E 67 74 68 20 69 73 20 20 73 ose length is s
000150: 65 74 20 20 62 79 0D 0A 20 20 20 20 20 20 20 74 et by.. t
000160: 68 65 20 70 61 75 73 65 20 74 69 6D 65 20 69 6E he pause time in
000170: 20 31 2F 31 30 30 73 20 6F 66 20 61 20 73 65 63 1/100s of a sec
000180: 6F 6E 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ond.......
000190: 20 54 68 65 72 65 20 69 73 20 6E 6F 20 70 72 6F There is no pro
0001A0: 74 65 63 74 69 6F 6E 20 61 67 61 69 6E 73 74 20 tection against
0001B0: 63 68 61 6E 67 69 6E 67 20 61 6E 20 65 6E 76 65 changing an enve
0001C0: 6C 6F 70 65 20 77 68 69 6C 73 74 20 20 69 74 20 lope whilst it
0001D0: 20 69 73 20 20 69 6E 0D 0A 20 20 20 20 20 20 20 is in..
0001E0: 75 73 65 2E 20 54 68 69 73 20 63 6F 75 6C 64 20 use. This could
0001F0: 68 61 76 65 20 75 6E 70 72 65 64 69 63 74 61 62 have unpredictab
Size : 512 (Real : 512)
000000: 6C 65 20 65 66 66 65 63 74 73 20 61 6E 64 20 73 le effects and s
000010: 68 6F 75 6C 64 20 62 65 20 61 76 6F 69 64 65 64 hould be avoided
000020: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 ....... If
000030: 20 74 68 65 20 74 6F 6E 65 20 65 6E 76 65 6C 6F the tone envelo
000040: 70 65 20 66 69 6E 69 73 68 65 73 20 62 65 66 6F pe finishes befo
000050: 72 65 20 74 68 65 20 65 6E 64 20 6F 66 20 74 68 re the end of th
000060: 65 20 73 6F 75 6E 64 20 28 61 73 20 73 65 74 20 e sound (as set
000070: 77 68 65 6E 0D 0A 20 20 20 20 20 20 20 74 68 65 when.. the
000080: 20 73 6F 75 6E 64 20 77 61 73 20 71 75 65 75 65 sound was queue
000090: 64 29 20 74 68 65 6E 20 74 68 65 20 66 69 6E 61 d) then the fina
0000A0: 6C 20 20 74 6F 6E 65 20 20 69 73 20 20 68 65 6C l tone is hel
0000B0: 64 2E 20 20 69 2E 65 2E 20 20 54 68 65 20 20 74 d. i.e. The t
0000C0: 6F 6E 65 0D 0A 20 20 20 20 20 20 20 65 6E 76 65 one.. enve
0000D0: 6C 6F 70 65 20 64 6F 65 73 20 6E 6F 74 20 61 66 lope does not af
0000E0: 66 65 63 74 20 74 68 65 20 6C 65 6E 67 74 68 20 fect the length
0000F0: 6F 66 20 74 68 65 20 73 6F 75 6E 64 2E 0D 0A 0D of the sound....
000100: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 ..... Rela
000110: 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A ted entries:....
000120: 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 20 41 .. SOUND A
000130: 4D 50 4C 20 45 4E 56 45 4C 4F 50 45 0D 0A 20 20 MPL ENVELOPE..
000140: 20 20 20 20 20 53 4F 55 4E 44 20 54 20 41 44 44 SOUND T ADD
000150: 52 45 53 53 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A RESS............
000160: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
000170: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
000180: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 70 61 67 65 20 31 35 2E 31 38 30 0D 0A 0D page 15.180...
0001B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
0001C0: 20 20 31 35 30 3A 20 53 4F 55 4E 44 20 41 20 41 150: SOUND A A
0001D0: 44 44 52 45 53 53 20 20 20 20 20 20 20 20 20 20 DDRESS
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 20 20 20 23 42 43 43 32 0D 0A 0D 0A 0D 0A 20 20 #BCC2......
000010: 20 20 20 20 20 47 65 74 20 74 68 65 20 61 64 64 Get the add
000020: 72 65 73 73 20 6F 66 20 61 6E 20 61 6D 70 6C 69 ress of an ampli
000030: 74 75 64 65 20 65 6E 76 65 6C 6F 70 65 2E 0D 0A tude envelope...
000040: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F .... Actio
000050: 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 n:...... A
000060: 73 6B 20 77 68 65 72 65 20 74 68 65 20 64 61 74 sk where the dat
000070: 61 20 61 72 65 61 20 66 6F 72 20 61 6E 20 61 6D a area for an am
000080: 70 6C 69 74 75 64 65 20 65 6E 76 65 6C 6F 70 65 plitude envelope
000090: 20 69 73 20 73 74 6F 72 65 64 2E 0D 0A 0D 0A 0D is stored......
0000A0: 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F . Entry co
0000B0: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
0000C0: 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 A contains
0000D0: 20 61 6E 20 65 6E 76 65 6C 6F 70 65 20 6E 75 6D an envelope num
0000E0: 62 65 72 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ber.......
0000F0: 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 Exit conditions
000100: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 :...... If
000110: 20 74 68 65 20 65 6E 76 65 6C 6F 70 65 20 77 61 the envelope wa
000120: 73 20 66 6F 75 6E 64 20 4F 4B 3A 0D 0A 0D 0A 0D s found OK:.....
000130: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000140: 20 43 61 72 72 79 20 74 72 75 65 2E 0D 0A 20 20 Carry true...
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 4C HL
000160: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 contains the ad
000170: 64 72 65 73 73 20 6F 66 20 74 68 65 20 61 6D 70 dress of the amp
000180: 6C 69 74 75 64 65 20 65 6E 76 65 6C 6F 70 65 2E litude envelope.
000190: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
0001A0: 20 20 42 43 20 63 6F 6E 74 61 69 6E 73 20 74 68 BC contains th
0001B0: 65 20 6C 65 6E 67 74 68 20 6F 66 20 61 6E 20 65 e length of an e
0001C0: 6E 76 65 6C 6F 70 65 20 28 31 36 20 62 79 74 65 nvelope (16 byte
0001D0: 73 29 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 s).......
0001E0: 49 66 20 74 68 65 20 65 6E 76 65 6C 6F 70 65 20 If the envelope
0001F0: 6E 75 6D 62 65 72 20 77 61 73 20 69 6E 76 61 6C number was inval
Size : 512 (Real : 512)
000000: 69 64 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 id:......
000010: 20 20 20 20 20 20 20 20 20 43 61 72 72 79 20 66 Carry f
000020: 61 6C 73 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 alse...
000030: 20 20 20 20 20 20 20 48 4C 20 63 6F 72 72 75 70 HL corrup
000040: 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 t...
000050: 20 20 20 20 42 43 20 70 72 65 73 65 72 76 65 64 BC preserved
000060: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C ....... Al
000070: 77 61 79 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ways:......
000080: 20 20 20 20 20 20 20 20 20 20 20 41 20 61 6E 64 A and
000090: 20 6F 74 68 65 72 20 66 6C 61 67 73 20 63 6F 72 other flags cor
0000A0: 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 rupt...
0000B0: 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 All other
0000C0: 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 65 registers prese
0000D0: 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 rved.......
0000E0: 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 Notes:......
0000F0: 20 20 20 20 20 54 68 65 20 65 6E 76 65 6C 6F 70 The envelop
000100: 65 20 69 73 20 6C 61 69 64 20 6F 75 74 20 61 73 e is laid out as
000110: 20 64 65 73 63 72 69 62 65 64 20 69 6E 20 53 4F described in SO
000120: 55 4E 44 20 41 4D 50 4C 20 45 4E 56 45 4C 4F 50 UND AMPL ENVELOP
000130: 45 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 E.........
000140: 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 Related entries
000150: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E :.... SOUN
000160: 44 20 41 4D 50 4C 20 45 4E 56 45 4C 4F 50 45 0D D AMPL ENVELOPE.
000170: 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 20 54 20 . SOUND T
000180: 41 44 44 52 45 53 53 0D 0A 0D 0A 0D 0A 0D 0A 0D ADDRESS.........
000190: 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 . AMSTRAD
0001A0: 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 CPC464/664/6128
0001B0: 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 FIRMWARE
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 70 61 67 65 20 31 35 2E 31 38 31 0D 0A page 15.181..
0001E0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
0001F0: 20 20 20 31 35 31 3A 20 53 4F 55 4E 44 20 54 20 151: SOUND T
Size : 512 (Real : 512)
000000: 41 44 44 52 45 53 53 20 20 20 20 20 20 20 20 20 ADDRESS
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 23 42 43 43 35 0D 0A 0D 0A 0D 0A 20 #BCC5......
000040: 20 20 20 20 20 20 47 65 74 20 74 68 65 20 61 64 Get the ad
000050: 64 72 65 73 73 20 6F 66 20 61 20 74 6F 6E 65 20 dress of a tone
000060: 65 6E 76 65 6C 6F 70 65 2E 0D 0A 0D 0A 0D 0A 20 envelope.......
000070: 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D Action:...
000080: 0A 0D 0A 20 20 20 20 20 20 20 41 73 6B 20 77 68 ... Ask wh
000090: 65 72 65 20 74 68 65 20 64 61 74 61 20 61 72 65 ere the data are
0000A0: 61 20 66 6F 72 20 74 68 65 20 74 6F 6E 65 20 65 a for the tone e
0000B0: 6E 76 65 6C 6F 70 65 20 69 73 20 73 74 6F 72 65 nvelope is store
0000C0: 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 d....... E
0000D0: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
0000E0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 ...... A c
0000F0: 6F 6E 74 61 69 6E 73 20 61 6E 20 65 6E 76 65 6C ontains an envel
000100: 6F 70 65 20 6E 75 6D 62 65 72 2E 0D 0A 0D 0A 0D ope number......
000110: 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E . Exit con
000120: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 ditions:......
000130: 20 20 20 20 20 49 66 20 74 68 65 20 65 6E 76 65 If the enve
000140: 6C 6F 70 65 20 77 61 73 20 66 6F 75 6E 64 20 4F lope was found O
000150: 4B 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 K:......
000160: 20 20 20 20 20 20 20 20 43 61 72 72 79 20 74 72 Carry tr
000170: 75 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 ue...
000180: 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 HL contains
000190: 20 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 the address of
0001A0: 74 68 65 20 74 6F 6E 65 20 65 6E 76 65 6C 6F 70 the tone envelop
0001B0: 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 e.......
0001C0: 20 20 20 20 20 20 20 20 42 43 20 63 6F 6E 74 61 BC conta
0001D0: 69 6E 73 20 74 68 65 20 6C 65 6E 67 74 68 20 6F ins the length o
0001E0: 66 20 61 6E 20 65 6E 76 65 6C 6F 70 65 20 28 31 f an envelope (1
0001F0: 36 20 62 79 74 65 73 29 2E 0D 0A 0D 0A 0D 0A 20 6 bytes).......
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 49 66 20 74 68 65 20 65 6E 76 If the env
000010: 65 6C 6F 70 65 20 6E 75 6D 62 65 72 20 77 61 73 elope number was
000020: 20 69 6E 76 61 6C 69 64 3A 0D 0A 0D 0A 0D 0A 20 invalid:......
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 C
000040: 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 20 20 20 arry false...
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 48 4C 20 HL
000060: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
000070: 20 20 20 20 20 20 20 20 20 20 42 43 20 70 72 65 BC pre
000080: 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 served.......
000090: 20 20 20 20 41 6C 77 61 79 73 3A 0D 0A 0D 0A 20 Always:....
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 A
0000B0: 20 61 6E 64 20 6F 74 68 65 72 20 66 6C 61 67 73 and other flags
0000C0: 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 corrupt...
0000D0: 20 20 20 20 20 20 20 20 20 20 20 41 6C 6C 20 6F All o
0000E0: 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 ther registers p
0000F0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
000100: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
000110: 20 20 20 20 20 20 20 54 68 65 20 65 6E 76 65 6C The envel
000120: 6F 70 65 20 6E 75 6D 62 65 72 20 6D 75 73 74 20 ope number must
000130: 6C 69 65 20 69 6E 20 74 68 65 20 72 61 6E 67 65 lie in the range
000140: 20 31 2E 2E 31 35 2E 0D 0A 0D 0A 20 20 20 20 20 1..15.....
000150: 20 20 54 68 65 20 74 6F 6E 65 20 65 6E 76 65 6C The tone envel
000160: 6F 70 65 20 69 73 20 6C 61 69 64 20 6F 75 74 20 ope is laid out
000170: 61 73 20 64 65 73 63 72 69 62 65 64 20 69 6E 20 as described in
000180: 53 4F 55 4E 44 20 54 4F 4E 45 20 45 4E 56 45 4C SOUND TONE ENVEL
000190: 4F 50 45 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 52 OPE..... R
0001A0: 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D elated entries:.
0001B0: 0A 0D 0A 20 20 20 20 20 20 20 53 4F 55 4E 44 20 ... SOUND
0001C0: 41 20 41 44 44 52 45 53 53 0D 0A 20 20 20 20 20 A ADDRESS..
0001D0: 20 20 53 4F 55 4E 44 20 54 4F 4E 45 20 45 4E 56 SOUND TONE ENV
0001E0: 45 4C 4F 50 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ELOPE..........
0001F0: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
Size : 512 (Real : 512)
000000: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
000010: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 70 61 67 65 20 31 35 2E 31 38 32 0D 0A 0D 0A page 15.182....
000040: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000050: 20 31 35 32 3A 20 4B 4C 20 43 48 4F 4B 45 20 4F 152: KL CHOKE O
000060: 46 46 20 20 20 20 20 20 20 20 20 20 20 20 20 20 FF
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 23 42 43 43 38 0D 0A 0D 0A 20 20 20 20 20 #BCC8....
0000A0: 20 20 52 65 73 65 74 20 74 68 65 20 4B 65 72 6E Reset the Kern
0000B0: 65 6C 20 2D 20 63 6C 65 61 72 73 20 61 6C 6C 20 el - clears all
0000C0: 65 76 65 6E 74 20 71 75 65 75 65 73 20 65 74 63 event queues etc
0000D0: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 ..... Acti
0000E0: 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 on:.... Th
0000F0: 69 73 20 65 6E 74 72 79 20 63 6F 6D 70 6C 65 74 is entry complet
000100: 65 6C 79 20 63 6C 65 61 72 73 20 61 6C 6C 20 65 ely clears all e
000110: 76 65 6E 74 20 71 75 65 75 65 73 2C 20 74 68 65 vent queues, the
000120: 20 76 61 72 69 6F 75 73 20 20 74 69 6D 65 72 20 various timer
000130: 20 61 6E 64 0D 0A 20 20 20 20 20 20 20 66 72 61 and.. fra
000140: 6D 65 20 66 6C 79 62 61 63 6B 20 6C 69 73 74 73 me flyback lists
000150: 20 61 6E 64 20 73 6F 20 6F 6E 2E 20 54 68 65 20 and so on. The
000160: 65 66 66 65 63 74 20 69 73 20 74 6F 20 64 69 73 effect is to dis
000170: 70 6F 73 65 20 6F 66 20 61 6E 79 20 70 65 6E 64 pose of any pend
000180: 69 6E 67 0D 0A 20 20 20 20 20 20 20 73 79 6E 63 ing.. sync
000190: 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 73 20 61 hronous events a
0001A0: 6E 64 20 74 6F 20 68 61 6C 74 20 61 6C 6C 20 74 nd to halt all t
0001B0: 69 6D 65 72 20 72 65 6C 61 74 65 64 20 66 75 6E imer related fun
0001C0: 63 74 69 6F 6E 73 20 6F 74 68 65 72 20 20 74 68 ctions other th
0001D0: 61 6E 0D 0A 20 20 20 20 20 20 20 73 6F 75 6E 64 an.. sound
0001E0: 20 67 65 6E 65 72 61 74 69 6F 6E 20 61 6E 64 20 generation and
0001F0: 6B 65 79 62 6F 61 72 64 20 73 63 61 6E 6E 69 6E keyboard scannin
Size : 512 (Real : 512)
000000: 67 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 g..... Ent
000010: 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A ry conditions:..
000020: 0D 0A 20 20 20 20 20 20 20 4E 6F 20 63 6F 6E 64 .. No cond
000030: 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 20 20 20 20 20 itions.....
000040: 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E Exit condition
000050: 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 42 20 63 s:.... B c
000060: 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 4F 4D 20 ontains the ROM
000070: 73 65 6C 65 63 74 20 61 64 64 72 65 73 73 20 6F select address o
000080: 66 20 74 68 65 20 63 75 72 72 65 6E 74 20 20 66 f the current f
000090: 6F 72 65 67 72 6F 75 6E 64 20 20 52 4F 4D 20 20 oreground ROM
0000A0: 28 69 66 0D 0A 20 20 20 20 20 20 20 61 6E 79 29 (if.. any)
0000B0: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 44 45 20 63 ..... DE c
0000C0: 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 72 ontains the addr
0000D0: 65 73 73 20 20 61 74 20 20 77 68 69 63 68 20 20 ess at which
0000E0: 74 68 65 20 20 63 75 72 72 65 6E 74 20 20 66 6F the current fo
0000F0: 72 65 67 72 6F 75 6E 64 20 20 52 4F 4D 20 20 77 reground ROM w
000100: 61 73 0D 0A 20 20 20 20 20 20 20 65 6E 74 65 72 as.. enter
000110: 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 43 20 ed..... C
000120: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 4F 4D contains the ROM
000130: 20 73 65 6C 65 63 74 20 61 64 64 72 65 73 73 20 select address
000140: 66 6F 72 20 61 20 52 41 4D 20 66 6F 72 65 67 72 for a RAM foregr
000150: 6F 75 6E 64 20 70 72 6F 67 72 61 6D 2E 0D 0A 0D ound program....
000160: 0A 20 20 20 20 20 20 20 41 46 20 61 6E 64 20 48 . AF and H
000170: 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 L corrupt...
000180: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000190: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
0001A0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ....... No
0001B0: 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 tes:......
0001C0: 20 49 66 20 74 68 65 20 63 75 72 72 65 6E 74 20 If the current
0001D0: 66 6F 72 65 67 72 6F 75 6E 64 20 70 72 6F 67 72 foreground progr
0001E0: 61 6D 20 20 69 73 20 20 69 6E 20 20 52 41 4D 20 am is in RAM
0001F0: 20 74 68 65 6E 20 20 74 68 65 20 20 52 4F 4D 20 then the ROM
Size : 512 (Real : 512)
000000: 20 73 65 6C 65 63 74 0D 0A 20 20 20 20 20 20 20 select..
000010: 61 64 64 72 65 73 73 20 61 6E 64 20 65 6E 74 72 address and entr
000020: 79 20 70 6F 69 6E 74 20 72 65 74 75 72 6E 65 64 y point returned
000030: 20 61 72 65 20 62 6F 74 68 20 7A 65 72 6F 2E 20 are both zero.
000040: 69 2E 65 2E 20 54 68 65 20 20 64 65 66 61 75 6C i.e. The defaul
000050: 74 20 20 52 4F 4D 0D 0A 20 20 20 20 20 20 20 28 t ROM.. (
000060: 52 4F 4D 20 30 29 20 61 74 20 69 74 73 20 65 6E ROM 0) at its en
000070: 74 72 79 20 61 64 64 72 65 73 73 2E 0D 0A 0D 0A try address.....
000080: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 43 48 4F 4B .. KL CHOK
000090: 45 20 4F 46 46 20 66 6F 72 6D 73 20 70 61 72 74 E OFF forms part
0000A0: 20 6F 66 20 74 68 65 20 63 6C 6F 73 65 20 64 6F of the close do
0000B0: 77 6E 20 72 65 71 75 69 72 65 64 20 62 65 66 6F wn required befo
0000C0: 72 65 20 20 61 20 20 6E 65 77 20 20 52 41 4D 0D re a new RAM.
0000D0: 0A 20 20 20 20 20 20 20 66 6F 72 65 67 72 6F 75 . foregrou
0000E0: 6E 64 20 70 72 6F 67 72 61 6D 20 69 73 20 6C 6F nd program is lo
0000F0: 61 64 65 64 2C 20 61 73 20 69 73 20 72 65 71 75 aded, as is requ
000100: 69 72 65 64 20 62 79 20 4D 43 20 42 4F 4F 54 20 ired by MC BOOT
000110: 50 52 4F 47 52 41 4D 2E 0D 0A 0D 0A 20 20 20 20 PROGRAM.....
000120: 20 20 20 54 68 65 20 63 6C 6F 73 65 20 64 6F 77 The close dow
000130: 6E 20 6D 75 73 74 20 65 6E 73 75 72 65 20 74 68 n must ensure th
000140: 61 74 20 74 68 65 72 65 20 61 72 65 20 6E 6F 20 at there are no
000150: 69 6E 74 65 72 72 75 70 74 20 6F 72 20 6F 74 68 interrupt or oth
000160: 65 72 20 65 76 65 6E 74 73 0D 0A 20 20 20 20 20 er events..
000170: 20 20 61 63 74 69 76 65 20 61 6E 64 20 75 73 69 active and usi
000180: 6E 67 20 6D 65 6D 6F 72 79 20 77 68 69 63 68 20 ng memory which
000190: 20 6D 69 67 68 74 20 20 62 65 20 20 64 61 6D 61 might be dama
0001A0: 67 65 64 20 20 62 79 20 20 6C 6F 61 64 69 6E 67 ged by loading
0001B0: 20 20 61 20 20 6E 65 77 0D 0A 20 20 20 20 20 20 a new..
0001C0: 20 70 72 6F 67 72 61 6D 20 69 6E 74 6F 20 6D 65 program into me
0001D0: 6D 6F 72 79 2E 20 49 6E 20 74 68 65 20 63 6F 6D mory. In the com
0001E0: 70 6C 65 74 65 20 63 6C 6F 73 65 20 64 6F 77 6E plete close down
0001F0: 20 4D 43 20 42 4F 4F 54 20 50 52 4F 47 52 41 4D MC BOOT PROGRAM
Size : 512 (Real : 512)
000000: 20 64 6F 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 does:....
000010: 20 53 4F 55 4E 44 20 52 45 53 45 54 20 20 20 20 SOUND RESET
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 74 6F to
000030: 20 6B 69 6C 6C 20 6F 66 66 20 73 6F 75 6E 64 20 kill off sound
000040: 67 65 6E 65 72 61 74 69 6F 6E 0D 0A 0D 0A 20 20 generation....
000050: 20 20 20 20 20 61 6E 20 4F 55 54 20 74 6F 20 49 an OUT to I
000060: 2F 4F 20 70 6F 72 74 20 23 46 38 46 46 20 20 20 /O port #F8FF
000070: 20 20 74 6F 20 72 65 73 65 74 20 61 6E 79 20 65 to reset any e
000080: 78 74 65 72 6E 61 6C 20 69 6E 74 65 72 72 75 70 xternal interrup
000090: 74 20 73 6F 75 72 63 65 73 2E 0D 0A 0D 0A 20 20 t sources.....
0000A0: 20 20 20 20 20 4B 4C 20 43 48 4F 4B 45 20 4F 46 KL CHOKE OF
0000B0: 46 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 F
0000C0: 20 20 74 6F 20 6B 69 6C 6C 20 6F 66 66 20 65 76 to kill off ev
0000D0: 65 6E 74 73 20 65 74 63 2E 0D 0A 0D 0A 20 20 20 ents etc.....
0000E0: 20 20 20 20 4B 4D 20 52 45 53 45 54 20 20 20 20 KM RESET
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 74 6F 20 72 65 73 65 74 20 61 6E 79 20 20 6B to reset any k
000110: 65 79 62 6F 61 72 64 20 20 69 6E 64 69 72 65 63 eyboard indirec
000120: 74 69 6F 6E 73 20 20 61 6E 64 0D 0A 20 20 20 20 tions and..
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 74 68 65 20 62 72 65 61 6B 20 65 76 65 6E 74 2E the break event.
000160: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 58 54 20 52 .... TXT R
000170: 45 53 45 54 20 20 20 20 20 20 20 20 20 20 20 20 ESET
000180: 20 20 20 20 20 20 20 20 74 6F 20 72 65 73 65 74 to reset
000190: 20 61 6E 79 20 54 65 78 74 20 56 44 55 20 69 6E any Text VDU in
0001A0: 64 69 72 65 63 74 69 6F 6E 73 2E 0D 0A 0D 0A 20 directions.....
0001B0: 20 20 20 20 20 20 53 43 52 20 52 45 53 45 54 20 SCR RESET
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 74 6F 20 72 65 73 65 74 20 61 6E 79 20 to reset any
0001E0: 73 63 72 65 65 6E 20 69 6E 64 69 72 65 63 74 69 screen indirecti
0001F0: 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ons.........
Size : 512 (Real : 512)
000000: 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 AMSTRAD CPC46
000010: 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 4/664/6128 FIRMW
000020: 41 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 ARE
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 pa
000040: 67 65 20 31 35 2E 31 38 33 0D 0A 0D 0A 0D 0A 0D ge 15.183.......
000050: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
000060: 65 20 76 61 6C 75 65 73 20 72 65 74 75 72 6E 65 e values returne
000070: 64 20 62 79 20 4B 4C 20 43 48 4F 4B 45 20 4F 46 d by KL CHOKE OF
000080: 46 20 61 72 65 20 75 73 65 64 20 62 79 20 4D 43 F are used by MC
000090: 20 42 4F 4F 54 20 50 52 4F 47 52 41 4D 20 69 66 BOOT PROGRAM if
0000A0: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 70 72 6F the.. pro
0000B0: 67 72 61 6D 20 6C 6F 61 64 20 66 61 69 6C 73 2E gram load fails.
0000C0: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 ........ T
0000D0: 68 69 73 20 69 6E 66 6F 72 6D 61 74 69 6F 6E 20 his information
0000E0: 69 73 20 20 69 6E 63 6C 75 64 65 64 20 20 66 6F is included fo
0000F0: 72 20 20 74 68 65 20 20 72 65 61 64 65 72 27 73 r the reader's
000100: 20 20 69 6E 74 65 72 65 73 74 2E 20 20 4D 43 20 interest. MC
000110: 20 42 4F 4F 54 0D 0A 20 20 20 20 20 20 20 50 52 BOOT.. PR
000120: 4F 47 52 41 4D 20 69 73 20 74 68 65 20 20 72 65 OGRAM is the re
000130: 63 6F 6D 6D 65 6E 64 65 64 20 20 6D 65 61 6E 73 commended means
000140: 20 20 6F 66 20 20 6C 6F 61 64 69 6E 67 20 20 61 of loading a
000150: 6E 64 20 20 65 6E 74 65 72 69 6E 67 20 20 61 20 nd entering a
000160: 20 52 41 4D 0D 0A 20 20 20 20 20 20 20 66 6F 72 RAM.. for
000170: 65 67 72 6F 75 6E 64 20 70 72 6F 67 72 61 6D 2E eground program.
000180: 20 4D 43 20 53 54 41 52 54 20 50 52 4F 47 52 41 MC START PROGRA
000190: 4D 20 20 69 73 20 20 20 74 68 65 20 20 72 65 63 M is the rec
0001A0: 6F 6D 6D 65 6E 64 65 64 20 20 6D 65 61 6E 73 20 ommended means
0001B0: 20 6F 66 0D 0A 20 20 20 20 20 20 20 65 6E 74 65 of.. ente
0001C0: 72 69 6E 67 20 61 20 52 4F 4D 20 66 6F 72 65 67 ring a ROM foreg
0001D0: 72 6F 75 6E 64 20 70 72 6F 67 72 61 6D 2C 20 6F round program, o
0001E0: 72 20 61 20 52 41 4D 20 66 6F 72 65 67 72 6F 75 r a RAM foregrou
0001F0: 6E 64 20 20 70 72 6F 67 72 61 6D 20 20 77 68 69 nd program whi
Size : 512 (Real : 512)
000000: 63 68 0D 0A 20 20 20 20 20 20 20 68 61 73 20 61 ch.. has a
000010: 6C 72 65 61 64 79 20 62 65 65 6E 20 6C 6F 61 64 lready been load
000020: 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ed.........
000030: 20 20 4B 4C 20 43 48 4F 4B 45 20 4F 46 46 20 64 KL CHOKE OFF d
000040: 69 73 61 62 6C 65 73 20 69 6E 74 65 72 72 75 70 isables interrup
000050: 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ts.............
000060: 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E Related en
000070: 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tries:......
000080: 20 20 20 4D 43 20 42 4F 4F 54 20 50 52 4F 47 52 MC BOOT PROGR
000090: 41 4D 0D 0A 20 20 20 20 20 20 20 4D 43 20 53 54 AM.. MC ST
0000A0: 41 52 54 20 50 52 4F 47 52 41 4D 0D 0A 0D 0A 0D ART PROGRAM.....
0000B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000E0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000F0: 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 ... AMSTRA
000100: 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 D CPC464/664/612
000110: 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 8 FIRMWARE
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 70 61 67 65 20 31 35 2E 31 38 34 page 15.184
000140: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000150: 20 20 20 20 20 31 35 33 3A 20 4B 4C 20 52 4F 4D 153: KL ROM
000160: 20 57 41 4C 4B 20 20 20 20 20 20 20 20 20 20 20 WALK
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000190: 20 20 20 20 20 20 23 42 43 43 42 0D 0A 0D 0A 20 #BCCB....
0001A0: 20 20 20 20 20 20 46 69 6E 64 20 61 6E 64 20 69 Find and i
0001B0: 6E 69 74 69 61 6C 69 7A 65 20 61 6C 6C 20 62 61 nitialize all ba
0001C0: 63 6B 67 72 6F 75 6E 64 20 52 4F 4D 73 2E 0D 0A ckground ROMs...
0001D0: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
0001E0: 0D 0A 0D 0A 20 20 20 20 20 20 20 42 61 63 6B 67 .... Backg
0001F0: 72 6F 75 6E 64 20 52 4F 4D 73 20 70 72 6F 76 69 round ROMs provi
Size : 512 (Real : 512)
000000: 64 65 20 73 75 70 70 6F 72 74 20 66 6F 72 20 65 de support for e
000010: 78 70 61 6E 73 69 6F 6E 20 68 61 72 64 77 61 72 xpansion hardwar
000020: 65 20 6F 72 20 61 75 67 6D 65 6E 74 20 20 74 68 e or augment th
000030: 65 0D 0A 20 20 20 20 20 20 20 73 6F 66 74 77 61 e.. softwa
000040: 72 65 20 66 61 63 69 6C 69 74 69 65 73 20 6F 66 re facilities of
000050: 20 74 68 65 20 6D 61 63 68 69 6E 65 2E 20 49 66 the machine. If
000060: 20 74 68 65 20 66 61 63 69 6C 69 74 69 65 73 20 the facilities
000070: 70 72 6F 76 69 64 65 64 20 62 79 20 20 74 68 65 provided by the
000080: 0D 0A 20 20 20 20 20 20 20 62 61 63 6B 67 72 6F .. backgro
000090: 75 6E 64 20 52 4F 4D 73 20 61 72 65 20 74 6F 20 und ROMs are to
0000A0: 20 62 65 20 20 61 76 61 69 6C 61 62 6C 65 2C 20 be available,
0000B0: 20 74 68 65 20 20 66 6F 72 65 67 72 6F 75 6E 64 the foreground
0000C0: 20 20 70 72 6F 67 72 61 6D 20 20 6D 75 73 74 0D program must.
0000D0: 0A 20 20 20 20 20 20 20 69 6E 69 74 69 61 6C 69 . initiali
0000E0: 7A 65 20 74 68 65 6D 2E 20 54 68 69 73 20 72 6F ze them. This ro
0000F0: 75 74 69 6E 65 20 66 69 6E 64 73 20 20 61 6E 64 utine finds and
000100: 20 20 69 6E 69 74 69 61 6C 69 7A 65 73 20 20 61 initializes a
000110: 6C 6C 20 20 62 61 63 6B 67 72 6F 75 6E 64 0D 0A ll background..
000120: 20 20 20 20 20 20 20 52 4F 4D 73 2E 0D 0A 0D 0A ROMs.....
000130: 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E Entry con
000140: 64 69 74 69 6F 6E 73 3A 0D 0A 20 20 20 20 20 20 ditions:..
000150: 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 61 64 64 DE contains add
000160: 72 65 73 73 20 20 6F 66 20 20 74 68 65 20 20 66 ress of the f
000170: 69 72 73 74 20 20 75 73 61 62 6C 65 20 20 62 79 irst usable by
000180: 74 65 20 20 6F 66 20 20 6D 65 6D 6F 72 79 20 20 te of memory
000190: 28 6C 6F 77 65 73 74 0D 0A 20 20 20 20 20 20 20 (lowest..
0001A0: 61 64 64 72 65 73 73 29 2E 0D 0A 20 20 20 20 20 address)...
0001B0: 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 61 64 HL contains ad
0001C0: 64 72 65 73 73 20 6F 66 20 20 74 68 65 20 20 6C dress of the l
0001D0: 61 73 74 20 20 75 73 61 62 6C 65 20 20 62 79 74 ast usable byt
0001E0: 65 73 20 20 6F 66 20 20 6D 65 6D 6F 72 79 20 20 es of memory
0001F0: 28 68 69 67 68 65 73 74 0D 0A 20 20 20 20 20 20 (highest..
Size : 512 (Real : 512)
000000: 20 61 64 64 72 65 73 73 29 2E 0D 0A 0D 0A 20 20 address).....
000010: 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 Exit condit
000020: 69 6F 6E 73 3A 0D 0A 20 20 20 20 20 20 20 44 45 ions:.. DE
000030: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 contains the ad
000040: 64 72 65 73 73 20 6F 66 20 74 68 65 20 6E 65 77 dress of the new
000050: 20 66 69 72 73 74 20 75 73 61 62 6C 65 20 62 79 first usable by
000060: 74 65 20 6F 66 20 6D 65 6D 6F 72 79 2E 0D 0A 20 te of memory...
000070: 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E HL contain
000080: 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 s the address of
000090: 20 74 68 65 20 6E 65 77 20 6C 61 73 74 20 75 73 the new last us
0000A0: 61 62 6C 65 20 62 79 74 65 20 6F 66 20 6D 65 6D able byte of mem
0000B0: 6F 72 79 2E 0D 0A 20 20 20 20 20 20 20 41 46 20 ory... AF
0000C0: 61 6E 64 20 42 43 20 63 6F 72 72 75 70 74 2E 0D and BC corrupt..
0000D0: 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 . All othe
0000E0: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
0000F0: 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 erved.....
000100: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 Notes:....
000110: 20 20 57 68 65 6E 20 61 20 66 6F 72 65 67 72 6F When a foregro
000120: 75 6E 64 20 52 4F 4D 20 70 72 6F 67 72 61 6D 20 und ROM program
000130: 69 73 20 65 6E 74 65 72 65 64 20 69 74 20 69 73 is entered it is
000140: 20 70 61 73 73 65 64 20 74 68 65 20 61 64 64 72 passed the addr
000150: 65 73 73 65 73 20 6F 66 0D 0A 20 20 20 20 20 20 esses of..
000160: 20 74 68 65 20 66 69 72 73 74 20 61 6E 64 20 6C the first and l
000170: 61 73 74 20 62 79 74 65 73 20 69 6E 20 6D 65 6D ast bytes in mem
000180: 6F 72 79 20 77 68 69 63 68 20 69 74 20 6D 61 79 ory which it may
000190: 20 75 73 65 2E 20 54 68 65 20 20 61 72 65 20 20 use. The are
0001A0: 6F 75 74 73 69 64 65 0D 0A 20 20 20 20 20 20 20 outside..
0001B0: 74 68 69 73 20 69 73 20 75 73 65 64 20 74 6F 20 this is used to
0001C0: 73 74 6F 72 65 20 66 69 72 6D 77 61 72 65 20 76 store firmware v
0001D0: 61 72 69 61 62 6C 65 73 2C 20 74 68 65 20 20 73 ariables, the s
0001E0: 74 61 63 6B 2C 20 20 74 68 65 20 20 6A 75 6D 70 tack, the jump
0001F0: 62 6C 6F 63 6B 73 0D 0A 20 20 20 20 20 20 20 61 blocks.. a
Size : 512 (Real : 512)
000000: 6E 64 20 74 68 65 20 73 63 72 65 65 6E 20 6D 65 nd the screen me
000010: 6D 6F 72 79 2E 20 46 72 6F 6D 20 74 68 65 20 20 mory. From the
000020: 61 72 65 61 20 20 61 76 61 69 6C 61 62 6C 65 20 area available
000030: 20 66 6F 72 20 20 74 68 65 20 20 66 6F 72 65 67 for the foreg
000040: 72 6F 75 6E 64 0D 0A 20 20 20 20 20 20 20 70 72 round.. pr
000050: 6F 67 72 61 6D 20 74 6F 20 75 73 65 2C 20 74 68 ogram to use, th
000060: 65 20 61 72 65 61 73 20 66 6F 72 20 20 62 61 63 e areas for bac
000070: 6B 67 72 6F 75 6E 64 20 20 70 72 6F 67 72 61 6D kground program
000080: 73 20 20 74 6F 20 20 75 73 65 20 20 6D 75 73 74 s to use must
000090: 20 20 62 65 0D 0A 20 20 20 20 20 20 20 61 6C 6C be.. all
0000A0: 6F 63 61 74 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 ocated.....
0000B0: 20 20 54 68 65 20 66 6F 72 65 67 72 6F 75 6E 64 The foreground
0000C0: 20 70 72 6F 67 72 61 6D 20 73 68 6F 75 6C 64 20 program should
0000D0: 69 6E 69 74 69 61 6C 69 7A 65 20 62 61 63 6B 67 initialize backg
0000E0: 72 6F 75 6E 64 20 52 4F 4D 73 20 61 74 20 20 61 round ROMs at a
0000F0: 6E 20 20 65 61 72 6C 79 0D 0A 20 20 20 20 20 20 n early..
000100: 20 73 74 61 67 65 2C 20 62 65 66 6F 72 65 20 69 stage, before i
000110: 74 20 75 73 65 73 20 74 68 65 20 6D 65 6D 6F 72 t uses the memor
000120: 79 20 69 74 20 69 73 20 67 69 76 65 6E 2E 20 49 y it is given. I
000130: 74 20 6D 61 79 20 63 68 6F 6F 73 65 20 77 68 65 t may choose whe
000140: 74 68 65 72 20 74 6F 0D 0A 20 20 20 20 20 20 20 ther to..
000150: 65 6E 61 62 6C 65 20 62 61 63 6B 67 72 6F 75 6E enable backgroun
000160: 64 20 52 4F 4D 73 20 6F 72 20 6E 6F 74 2E 20 4B d ROMs or not. K
000170: 4C 20 49 4E 49 54 20 42 41 43 4B 20 6D 61 79 20 L INIT BACK may
000180: 62 65 20 75 73 65 64 20 74 6F 20 20 69 6E 69 74 be used to init
000190: 69 61 6C 69 7A 65 0D 0A 20 20 20 20 20 20 20 61 ialize.. a
0001A0: 20 70 61 72 74 69 63 75 6C 61 72 20 62 61 63 6B particular back
0001B0: 67 72 6F 75 6E 64 20 52 4F 4D 20 6F 72 20 74 68 ground ROM or th
0001C0: 69 73 20 72 6F 75 74 69 6E 65 20 6D 61 79 20 62 is routine may b
0001D0: 65 20 75 73 65 64 20 74 6F 20 20 69 6E 69 74 69 e used to initi
0001E0: 61 6C 69 7A 65 0D 0A 20 20 20 20 20 20 20 61 6C alize.. al
0001F0: 6C 20 61 76 61 69 6C 61 62 6C 65 20 62 61 63 6B l available back
Size : 512 (Real : 512)
000000: 67 72 6F 75 6E 64 20 52 4F 4D 73 2E 0D 0A 0D 0A ground ROMs.....
000010: 20 20 20 20 20 20 20 4B 4C 20 52 4F 4D 20 57 41 KL ROM WA
000020: 4C 4B 20 69 6E 73 70 65 63 74 73 20 74 68 65 20 LK inspects the
000030: 52 4F 4D 73 20 61 74 20 52 4F 4D 20 73 65 6C 65 ROMs at ROM sele
000040: 63 74 20 61 64 64 72 65 73 73 65 73 20 69 6E 20 ct addresses in
000050: 74 68 65 20 72 61 6E 67 65 20 31 2E 2E 0D 0A 20 the range 1....
000060: 20 20 20 20 20 20 37 20 20 69 6E 20 20 56 31 2E 7 in V1.
000070: 30 20 20 66 69 72 6D 77 61 72 65 20 20 61 6E 64 0 firmware and
000080: 20 20 30 2E 2E 31 35 20 20 69 6E 20 20 56 31 2E 0..15 in V1.
000090: 31 20 20 66 69 72 6D 77 61 72 65 2E 20 20 54 68 1 firmware. Th
0000A0: 65 20 20 20 70 6F 77 65 72 2D 75 70 0D 0A 20 20 e power-up..
0000B0: 20 20 20 20 20 69 6E 69 74 69 61 6C 69 7A 61 74 initializat
0000C0: 69 6F 6E 20 65 6E 74 72 79 20 6F 66 20 65 61 63 ion entry of eac
0000D0: 68 20 62 61 63 6B 67 72 6F 75 6E 64 20 52 4F 4D h background ROM
0000E0: 20 66 6F 75 6E 64 20 69 73 20 63 61 6C 6C 65 64 found is called
0000F0: 20 28 75 6E 6C 65 73 73 20 69 74 0D 0A 20 20 20 (unless it..
000100: 20 20 20 20 69 73 20 74 68 65 20 63 75 72 72 65 is the curre
000110: 6E 74 20 66 6F 72 65 67 72 6F 75 6E 64 20 20 52 nt foreground R
000120: 4F 4D 20 20 69 6E 20 20 56 31 2E 31 20 20 66 69 OM in V1.1 fi
000130: 72 6D 77 61 72 65 29 2E 20 20 54 68 69 73 20 20 rmware). This
000140: 65 6E 74 72 79 20 20 6D 61 79 0D 0A 20 20 20 20 entry may..
000150: 20 20 20 61 6C 6C 6F 63 61 74 65 20 73 6F 6D 65 allocate some
000160: 20 6D 65 6D 6F 72 79 20 66 6F 72 20 74 68 65 20 memory for the
000170: 62 61 63 6B 67 72 6F 75 6E 64 20 52 4F 4D 27 73 background ROM's
000180: 20 74 6F 20 75 73 65 20 62 79 20 61 64 6A 75 73 to use by adjus
000190: 74 69 6E 67 20 20 74 68 65 0D 0A 20 20 20 20 20 ting the..
0001A0: 20 20 76 61 6C 75 65 73 20 20 69 6E 20 20 44 45 values in DE
0001B0: 20 20 61 6E 64 20 20 48 4C 20 20 62 65 66 6F 72 and HL befor
0001C0: 65 20 20 72 65 74 75 72 6E 69 6E 67 2E 20 20 4F e returning. O
0001D0: 6E 63 65 20 20 74 68 65 20 20 52 4F 4D 20 20 68 nce the ROM h
0001E0: 61 73 20 20 62 65 65 6E 0D 0A 20 20 20 20 20 20 as been..
0001F0: 20 69 6E 69 74 69 61 6C 69 7A 65 64 20 74 68 65 initialized the
Size : 512 (Real : 512)
000000: 20 4B 65 72 6E 65 6C 20 20 61 64 64 73 20 20 69 Kernel adds i
000010: 74 20 20 74 6F 20 20 74 68 65 20 20 6C 69 73 74 t to the list
000020: 20 20 6F 66 20 20 65 78 74 65 72 6E 61 6C 20 20 of external
000030: 63 6F 6D 6D 61 6E 64 0D 0A 20 20 20 20 20 20 20 command..
000040: 73 65 72 76 65 72 73 2C 20 61 6E 64 20 6E 6F 74 servers, and not
000050: 65 73 20 74 68 65 20 62 61 73 65 20 6F 66 20 74 es the base of t
000060: 68 65 20 61 72 65 61 20 77 68 69 63 68 20 74 68 he area which th
000070: 65 20 52 4F 4D 20 68 61 73 20 61 6C 6C 6F 63 61 e ROM has alloca
000080: 74 65 64 20 61 74 0D 0A 20 20 20 20 20 20 20 74 ted at.. t
000090: 68 65 20 74 6F 70 20 6F 66 20 6D 65 6D 6F 72 79 he top of memory
0000A0: 20 28 69 66 20 61 6E 79 29 2E 20 53 75 62 73 65 (if any). Subse
0000B0: 71 75 65 6E 74 20 46 41 52 20 43 41 4C 4C 73 20 quent FAR CALLs
0000C0: 74 6F 20 65 6E 74 72 69 65 73 20 69 6E 20 74 68 to entries in th
0000D0: 65 20 52 4F 4D 0D 0A 20 20 20 20 20 20 20 77 69 e ROM.. wi
0000E0: 6C 6C 20 61 75 74 6F 6D 61 74 69 63 61 6C 6C 79 ll automatically
0000F0: 20 73 65 74 20 74 68 65 20 49 59 20 69 6E 64 65 set the IY inde
000100: 78 20 72 65 67 69 73 74 65 72 20 20 74 6F 20 20 x register to
000110: 70 6F 69 6E 74 20 20 61 74 20 20 74 68 65 20 20 point at the
000120: 52 4F 4D 73 0D 0A 20 20 20 20 20 20 20 75 70 70 ROMs.. upp
000130: 65 72 20 6D 65 6D 6F 72 79 20 61 72 65 61 2E 0D er memory area..
000140: 0A 0D 0A 20 20 20 20 20 20 20 53 65 65 20 73 65 ... See se
000150: 63 74 69 6F 6E 20 31 30 2E 34 20 66 6F 72 20 61 ction 10.4 for a
000160: 20 66 75 6C 6C 20 64 65 73 63 72 69 70 74 69 6F full descriptio
000170: 6E 20 6F 66 20 62 61 63 6B 67 72 6F 75 6E 64 20 n of background
000180: 52 4F 4D 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 ROMs.....
000190: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
0001A0: 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 46 49 .... KL FI
0001B0: 4E 44 20 43 4F 4D 4D 41 4E 44 0D 0A 20 20 20 20 ND COMMAND..
0001C0: 20 20 20 4B 4C 20 49 4E 49 54 20 42 41 43 4B 0D KL INIT BACK.
0001D0: 0A 20 20 20 20 20 20 20 4B 4C 20 4C 4F 47 20 45 . KL LOG E
0001E0: 58 54 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 XT.... AMS
0001F0: 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F TRAD CPC464/664/
Size : 512 (Real : 512)
000000: 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 6128 FIRMWARE
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 2E page 15.
000030: 31 38 35 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 185.............
000040: 0A 20 20 20 20 20 20 20 31 35 34 3A 20 4B 4C 20 . 154: KL
000050: 49 4E 49 54 20 42 41 43 4B 20 20 20 20 20 20 20 INIT BACK
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 23 42 43 43 45 0D 0A #BCCE..
000090: 0D 0A 20 20 20 20 20 20 20 49 6E 69 74 69 61 6C .. Initial
0000A0: 69 7A 65 20 61 20 70 61 72 74 69 63 75 6C 61 72 ize a particular
0000B0: 20 62 61 63 6B 67 72 6F 75 6E 64 20 52 4F 4D 2E background ROM.
0000C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F .... Actio
0000D0: 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 42 61 63 n:.... Bac
0000E0: 6B 67 72 6F 75 6E 64 20 52 4F 4D 73 20 70 72 6F kground ROMs pro
0000F0: 76 69 64 65 20 73 75 70 70 6F 72 74 20 66 6F 72 vide support for
000100: 20 65 78 70 61 6E 73 69 6F 6E 20 68 61 72 64 77 expansion hardw
000110: 61 72 65 20 6F 72 20 61 75 67 6D 65 6E 74 20 20 are or augment
000120: 74 68 65 0D 0A 20 20 20 20 20 20 20 73 6F 66 74 the.. soft
000130: 77 61 72 65 20 66 61 63 69 6C 69 74 69 65 73 20 ware facilities
000140: 6F 66 20 74 68 65 20 6D 61 63 68 69 6E 65 2E 20 of the machine.
000150: 49 66 20 74 68 65 20 66 61 63 69 6C 69 74 69 65 If the facilitie
000160: 73 20 70 72 6F 76 69 64 65 64 20 62 79 20 20 74 s provided by t
000170: 68 65 0D 0A 20 20 20 20 20 20 20 62 61 63 6B 67 he.. backg
000180: 72 6F 75 6E 64 20 52 4F 4D 73 20 61 72 65 20 20 round ROMs are
000190: 74 6F 20 20 62 65 20 20 61 76 61 69 6C 61 62 6C to be availabl
0001A0: 65 20 20 74 68 65 20 20 66 6F 72 65 67 72 6F 75 e the foregrou
0001B0: 6E 64 20 20 70 72 6F 67 72 61 6D 20 20 6D 75 73 nd program mus
0001C0: 74 0D 0A 20 20 20 20 20 20 20 69 6E 69 74 69 61 t.. initia
0001D0: 6C 69 7A 65 20 74 68 65 6D 2E 20 54 68 69 73 20 lize them. This
0001E0: 72 6F 75 74 69 6E 65 20 73 65 6C 65 63 74 73 20 routine selects
0001F0: 20 61 6E 64 20 20 69 6E 69 74 69 61 6C 69 7A 65 and initialize
Size : 512 (Real : 512)
000000: 73 20 20 61 20 20 70 61 72 74 69 63 75 6C 61 72 s a particular
000010: 0D 0A 20 20 20 20 20 20 20 62 61 63 6B 67 72 6F .. backgro
000020: 75 6E 64 20 52 4F 4D 2E 0D 0A 0D 0A 20 20 20 20 und ROM.....
000030: 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 Entry conditi
000040: 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 ons:.... C
000050: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 4F contains the RO
000060: 4D 20 73 65 6C 65 63 74 20 61 64 64 72 65 73 73 M select address
000070: 20 6F 66 20 74 68 65 20 52 4F 4D 20 74 6F 20 69 of the ROM to i
000080: 6E 69 74 69 61 6C 69 7A 65 2E 0D 0A 20 20 20 20 nitialize...
000090: 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 61 DE contains a
0000A0: 64 64 72 65 73 73 20 20 6F 66 20 20 74 68 65 20 ddress of the
0000B0: 20 66 69 72 73 74 20 20 75 73 61 62 6C 65 20 20 first usable
0000C0: 62 79 74 65 20 20 6F 66 20 20 6D 65 6D 6F 72 79 byte of memory
0000D0: 20 20 28 6C 6F 77 65 73 74 0D 0A 20 20 20 20 20 (lowest..
0000E0: 20 20 61 64 64 72 65 73 73 29 2E 0D 0A 20 20 20 address)...
0000F0: 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 HL contains
000100: 61 64 64 72 65 73 73 20 20 6F 66 20 20 74 68 65 address of the
000110: 20 20 6C 61 73 74 20 20 75 73 61 62 6C 65 20 20 last usable
000120: 62 79 74 65 20 20 6F 66 20 20 6D 65 6D 6F 72 79 byte of memory
000130: 20 20 28 68 69 67 68 65 73 74 0D 0A 20 20 20 20 (highest..
000140: 20 20 20 61 64 64 72 65 73 73 29 2E 0D 0A 0D 0A address).....
000150: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
000160: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 nditions:....
000170: 20 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 DE contains
000180: 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 the address of t
000190: 68 65 20 6E 65 77 20 66 69 72 73 74 20 75 73 61 he new first usa
0001A0: 62 6C 65 20 62 79 74 65 20 6F 66 20 6D 65 6D 6F ble byte of memo
0001B0: 72 79 2E 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 ry... HL c
0001C0: 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 72 ontains the addr
0001D0: 65 73 73 20 6F 66 20 74 68 65 20 6E 65 77 20 6C ess of the new l
0001E0: 61 73 74 20 75 73 61 62 6C 65 20 62 79 74 65 20 ast usable byte
0001F0: 6F 66 20 6D 65 6D 6F 72 79 2E 0D 0A 0D 0A 20 20 of memory.....
Size : 512 (Real : 512)
000000: 20 20 20 20 20 41 46 20 61 6E 64 20 42 20 63 6F AF and B co
000010: 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 rrupt... A
000020: 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 ll other registe
000030: 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D rs preserved....
000040: 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A . Notes:..
000050: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 52 4F 4D .. The ROM
000060: 20 73 65 6C 65 63 74 20 61 64 64 72 65 73 73 20 select address
000070: 6D 75 73 74 20 62 65 20 69 6E 20 74 68 65 20 72 must be in the r
000080: 61 6E 67 65 20 31 2E 2E 37 20 69 6E 20 56 31 2E ange 1..7 in V1.
000090: 30 20 61 6E 64 20 30 2E 2E 31 35 20 20 69 6E 0D 0 and 0..15 in.
0000A0: 0A 20 20 20 20 20 20 20 56 31 2E 31 20 66 69 72 . V1.1 fir
0000B0: 6D 77 61 72 65 20 61 6E 64 20 74 68 65 20 52 4F mware and the RO
0000C0: 4D 20 61 74 20 74 68 69 73 20 61 64 64 72 65 73 M at this addres
0000D0: 73 20 6D 75 73 74 20 62 65 20 61 20 62 61 63 6B s must be a back
0000E0: 67 72 6F 75 6E 64 20 52 4F 4D 20 20 6F 72 0D 0A ground ROM or..
0000F0: 20 20 20 20 20 20 20 74 68 65 20 72 65 71 75 65 the reque
000100: 73 74 20 77 69 6C 6C 20 62 65 20 69 67 6E 6F 72 st will be ignor
000110: 65 64 2E 20 49 6E 20 56 31 2E 31 20 20 66 69 72 ed. In V1.1 fir
000120: 6D 77 61 72 65 20 20 74 68 65 20 20 72 65 71 75 mware the requ
000130: 65 73 74 20 20 77 69 6C 6C 20 20 62 65 0D 0A 20 est will be..
000140: 20 20 20 20 20 20 69 67 6E 6F 72 65 64 20 69 66 ignored if
000150: 20 74 68 65 20 52 4F 4D 20 69 73 20 74 68 65 20 the ROM is the
000160: 63 75 72 72 65 6E 74 20 66 6F 72 65 67 72 6F 75 current foregrou
000170: 6E 64 20 52 4F 4D 2E 0D 0A 0D 0A 20 20 20 20 20 nd ROM.....
000180: 20 20 57 68 65 6E 20 74 68 65 20 66 6F 72 65 67 When the foreg
000190: 72 6F 75 6E 64 20 70 72 6F 67 72 61 6D 20 69 73 round program is
0001A0: 20 65 6E 74 65 72 65 64 20 69 74 20 69 73 20 70 entered it is p
0001B0: 61 73 73 65 64 20 74 68 65 20 20 61 64 64 72 65 assed the addre
0001C0: 73 73 65 73 20 20 6F 66 0D 0A 20 20 20 20 20 20 sses of..
0001D0: 20 74 68 65 20 66 69 72 73 74 20 61 6E 64 20 6C the first and l
0001E0: 61 73 74 20 62 79 74 65 73 20 69 6E 20 6D 65 6D ast bytes in mem
0001F0: 6F 72 79 20 77 68 69 63 68 20 20 69 74 20 20 6D ory which it m
Size : 512 (Real : 512)
000000: 61 79 20 20 75 73 65 2E 20 20 54 68 65 20 20 61 ay use. The a
000010: 72 65 61 20 20 6F 66 0D 0A 20 20 20 20 20 20 20 rea of..
000020: 6D 65 6D 6F 72 79 20 6F 75 74 73 69 64 65 20 74 memory outside t
000030: 68 69 73 20 69 73 20 75 73 65 64 20 74 6F 20 73 his is used to s
000040: 74 6F 72 65 20 66 69 72 6D 77 61 72 65 20 20 76 tore firmware v
000050: 61 72 69 61 62 6C 65 73 2C 20 20 74 68 65 20 20 ariables, the
000060: 73 74 61 63 6B 2C 0D 0A 20 20 20 20 20 20 20 74 stack,.. t
000070: 68 65 20 6A 75 6D 70 62 6C 6F 63 6B 73 20 61 6E he jumpblocks an
000080: 64 20 74 68 65 20 73 63 72 65 65 6E 20 6D 65 6D d the screen mem
000090: 6F 72 79 2E 20 46 72 6F 6D 20 74 68 65 20 61 72 ory. From the ar
0000A0: 65 61 20 61 76 61 69 6C 61 62 6C 65 20 66 6F 72 ea available for
0000B0: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 66 6F the.. fo
0000C0: 72 65 67 72 6F 75 6E 64 20 70 72 6F 67 72 61 6D reground program
0000D0: 20 74 6F 20 75 73 65 2C 20 74 68 65 20 61 72 65 to use, the are
0000E0: 61 73 20 66 6F 72 20 62 61 63 6B 67 72 6F 75 6E as for backgroun
0000F0: 64 20 20 70 72 6F 67 72 61 6D 73 20 20 74 6F 20 d programs to
000100: 20 75 73 65 0D 0A 20 20 20 20 20 20 20 6D 75 73 use.. mus
000110: 74 20 62 65 20 61 6C 6C 6F 63 61 74 65 64 2E 0D t be allocated..
000120: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 6F ... The fo
000130: 72 65 67 72 6F 75 6E 64 20 70 72 6F 67 72 61 6D reground program
000140: 20 73 68 6F 75 6C 64 20 69 6E 69 74 69 61 6C 69 should initiali
000150: 7A 65 20 62 61 63 6B 67 72 6F 75 6E 64 20 52 4F ze background RO
000160: 4D 73 20 61 74 20 20 61 6E 20 20 65 61 72 6C 79 Ms at an early
000170: 0D 0A 20 20 20 20 20 20 20 73 74 61 67 65 2C 20 .. stage,
000180: 62 65 66 6F 72 65 20 69 74 20 75 73 65 73 20 74 before it uses t
000190: 68 65 20 6D 65 6D 6F 72 79 20 69 74 20 69 73 20 he memory it is
0001A0: 67 69 76 65 6E 2E 20 49 74 20 6D 61 79 20 63 68 given. It may ch
0001B0: 6F 6F 73 65 20 77 68 65 74 68 65 72 20 74 6F 0D oose whether to.
0001C0: 0A 20 20 20 20 20 20 20 65 6E 61 62 6C 65 20 62 . enable b
0001D0: 61 63 6B 67 72 6F 75 6E 64 20 52 4F 4D 73 20 6F ackground ROMs o
0001E0: 72 20 6E 6F 74 2E 20 4B 4C 20 52 4F 4D 20 57 41 r not. KL ROM WA
0001F0: 4C 4B 20 6D 61 79 20 62 65 20 75 73 65 64 20 20 LK may be used
Size : 512 (Real : 512)
000000: 74 6F 20 20 69 6E 69 74 69 61 6C 69 7A 65 0D 0A to initialize..
000010: 20 20 20 20 20 20 20 61 6C 6C 20 20 61 76 61 69 all avai
000020: 6C 61 62 6C 65 20 20 52 4F 4D 73 20 20 6F 72 20 lable ROMs or
000030: 20 74 68 69 73 20 20 72 6F 75 74 69 6E 65 20 20 this routine
000040: 6D 61 79 20 20 62 65 20 20 75 73 65 64 20 20 74 may be used t
000050: 6F 20 20 69 6E 69 74 69 61 6C 69 7A 65 0D 0A 20 o initialize..
000060: 20 20 20 20 20 20 70 61 72 74 69 63 75 6C 61 72 particular
000070: 20 52 4F 4D 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 ROMs.....
000080: 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 63 61 This routine ca
000090: 75 73 65 73 20 74 68 65 20 62 61 63 6B 67 72 6F uses the backgro
0000A0: 75 6E 64 20 52 4F 4D 27 73 20 70 6F 77 65 72 2D und ROM's power-
0000B0: 75 70 20 69 6E 69 74 69 61 6C 69 7A 61 74 69 6F up initializatio
0000C0: 6E 20 65 6E 74 72 79 0D 0A 20 20 20 20 20 20 20 n entry..
0000D0: 74 6F 20 62 65 20 63 61 6C 6C 65 64 2E 20 54 68 to be called. Th
0000E0: 69 73 20 65 6E 74 72 79 20 6D 61 79 20 61 6C 6C is entry may all
0000F0: 6F 63 61 74 65 20 73 6F 6D 65 20 6D 65 6D 6F 72 ocate some memor
000100: 79 20 66 6F 72 20 20 74 68 65 20 20 62 61 63 6B y for the back
000110: 67 72 6F 75 6E 64 0D 0A 20 20 20 20 20 20 20 52 ground.. R
000120: 4F 4D 27 73 20 75 73 65 20 62 79 20 61 64 6A 75 OM's use by adju
000130: 73 74 69 6E 67 20 74 68 65 20 76 61 6C 75 65 73 sting the values
000140: 20 69 6E 20 44 45 20 61 6E 64 20 48 4C 20 62 65 in DE and HL be
000150: 66 6F 72 65 20 72 65 74 75 72 6E 69 6E 67 2E 20 fore returning.
000160: 20 4F 6E 63 65 0D 0A 20 20 20 20 20 20 20 74 68 Once.. th
000170: 65 20 52 4F 4D 20 68 61 73 20 62 65 65 6E 20 69 e ROM has been i
000180: 6E 69 74 69 61 6C 69 7A 65 64 20 20 74 68 65 20 nitialized the
000190: 20 4B 65 72 6E 65 6C 20 20 61 64 64 73 20 20 69 Kernel adds i
0001A0: 74 20 20 74 6F 20 20 74 68 65 20 20 6C 69 73 74 t to the list
0001B0: 20 20 6F 66 0D 0A 20 20 20 20 20 20 20 65 78 74 of.. ext
0001C0: 65 72 6E 61 6C 20 63 6F 6D 6D 61 6E 64 20 73 65 ernal command se
0001D0: 72 76 65 72 73 2C 20 61 6E 64 20 6E 6F 74 65 73 rvers, and notes
0001E0: 20 74 68 65 20 62 61 73 65 20 6F 66 20 74 68 65 the base of the
0001F0: 20 61 72 65 61 20 77 68 69 63 68 20 74 68 65 20 area which the
Size : 512 (Real : 512)
000000: 52 4F 4D 0D 0A 20 20 20 20 20 20 20 68 61 73 20 ROM.. has
000010: 61 6C 6C 6F 63 61 74 65 64 20 74 6F 20 69 74 73 allocated to its
000020: 65 6C 66 20 61 74 20 74 68 65 20 74 6F 70 20 6F elf at the top o
000030: 66 20 6D 65 6D 6F 72 79 20 28 69 66 20 61 6E 79 f memory (if any
000040: 29 2E 20 53 75 62 73 65 71 75 65 6E 74 20 20 46 ). Subsequent F
000050: 41 52 0D 0A 20 20 20 20 20 20 20 43 41 4C 4C 73 AR.. CALLs
000060: 20 74 6F 20 65 6E 74 72 69 65 73 20 69 6E 20 74 to entries in t
000070: 68 65 20 20 52 4F 4D 20 20 77 69 6C 6C 20 20 61 he ROM will a
000080: 75 74 6F 6D 61 74 69 63 61 6C 6C 79 20 20 73 65 utomatically se
000090: 74 20 20 74 68 65 20 20 49 59 20 20 69 6E 64 65 t the IY inde
0000A0: 78 0D 0A 20 20 20 20 20 20 20 72 65 67 69 73 74 x.. regist
0000B0: 65 72 20 74 6F 20 70 6F 69 6E 74 20 61 74 20 74 er to point at t
0000C0: 68 65 20 52 4F 4D 27 73 20 75 70 70 65 72 20 6D he ROM's upper m
0000D0: 65 6D 6F 72 79 20 61 72 65 61 2E 0D 0A 0D 0A 0D emory area......
0000E0: 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 . AMSTRAD
0000F0: 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 CPC464/664/6128
000100: 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 FIRMWARE
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 70 61 67 65 20 31 35 2E 31 38 36 0D 0A page 15.186..
000130: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000140: 20 20 20 53 65 65 20 73 65 63 74 69 6F 6E 20 31 See section 1
000150: 30 2E 34 20 66 6F 72 20 61 20 66 75 6C 6C 20 64 0.4 for a full d
000160: 65 73 63 72 69 70 74 69 6F 6E 20 6F 66 20 62 61 escription of ba
000170: 63 6B 67 72 6F 75 6E 64 20 52 4F 4D 73 2E 0D 0A ckground ROMs...
000180: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C ...... Rel
000190: 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D ated entries:...
0001A0: 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 46 49 4E ... KL FIN
0001B0: 44 20 43 4F 4D 4D 41 4E 44 0D 0A 20 20 20 20 20 D COMMAND..
0001C0: 20 20 4B 4C 20 4C 4F 47 20 45 58 54 0D 0A 20 20 KL LOG EXT..
0001D0: 20 20 20 20 20 4B 4C 20 52 4F 4D 20 57 41 4C 4B KL ROM WALK
0001E0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0001F0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000010: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000020: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000030: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000040: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
000050: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
000060: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 31 38 page 15.18
000090: 37 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 7..............
0000A0: 20 20 20 20 20 20 31 35 35 3A 20 4B 4C 20 4C 4F 155: KL LO
0000B0: 47 20 45 58 54 20 20 20 20 20 20 20 20 20 20 20 G EXT
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000E0: 20 20 20 20 20 20 20 23 42 43 44 31 0D 0A 0D 0A #BCD1....
0000F0: 0D 0A 20 20 20 20 20 20 20 49 6E 74 72 6F 64 75 .. Introdu
000100: 63 65 20 61 6E 20 52 53 58 20 74 6F 20 74 68 65 ce an RSX to the
000110: 20 66 69 72 6D 77 61 72 65 2E 0D 0A 0D 0A 0D 0A firmware.......
000120: 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A Action:..
000130: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 53 58 73 20 .... RSXs
000140: 28 52 65 73 69 64 65 6E 74 20 53 79 73 74 65 6D (Resident System
000150: 20 45 78 74 65 6E 73 69 6F 6E 73 29 20 61 72 65 Extensions) are
000160: 20 73 69 6D 69 6C 61 72 20 74 6F 20 62 61 63 6B similar to back
000170: 67 72 6F 75 6E 64 20 52 4F 4D 73 2C 20 20 62 75 ground ROMs, bu
000180: 74 0D 0A 20 20 20 20 20 20 20 61 72 65 20 6C 6F t.. are lo
000190: 61 64 65 64 20 69 6E 74 6F 20 52 41 4D 2E 20 54 aded into RAM. T
0001A0: 68 69 73 20 72 6F 75 74 69 6E 65 20 6D 75 73 74 his routine must
0001B0: 20 62 65 20 63 61 6C 6C 65 64 20 74 6F 20 69 6E be called to in
0001C0: 63 6C 75 64 65 20 74 68 65 20 52 53 58 20 6F 6E clude the RSX on
0001D0: 0D 0A 20 20 20 20 20 20 20 74 68 65 20 4B 65 72 .. the Ker
0001E0: 6E 65 6C 27 73 20 6C 69 73 74 20 6F 66 20 65 78 nel's list of ex
0001F0: 74 65 72 6E 61 6C 20 63 6F 6D 6D 61 6E 64 20 73 ternal command s
Size : 512 (Real : 512)
000000: 65 72 76 65 72 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 ervers.......
000010: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000020: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000030: 20 20 42 43 20 63 6F 6E 74 61 69 6E 73 20 74 68 BC contains th
000040: 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 e address of the
000050: 20 52 53 58 27 73 20 63 6F 6D 6D 61 6E 64 20 74 RSX's command t
000060: 61 62 6C 65 2E 0D 0A 20 20 20 20 20 20 20 48 4C able... HL
000070: 20 63 6F 6E 74 61 69 6E 65 64 20 74 68 65 20 61 contained the a
000080: 64 64 72 65 73 73 20 6F 66 20 61 20 34 20 62 79 ddress of a 4 by
000090: 74 65 20 61 72 65 61 20 6F 66 20 52 41 4D 20 66 te area of RAM f
0000A0: 6F 72 20 74 68 65 20 4B 65 72 6E 65 6C 27 73 20 or the Kernel's
0000B0: 75 73 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 use.......
0000C0: 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 Exit conditions
0000D0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 45 :...... DE
0000E0: 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 corrupt...
0000F0: 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 All other regi
000100: 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E sters preserved.
000110: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 ...... Not
000120: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
000130: 42 6F 74 68 20 74 68 65 20 52 53 58 27 73 20 63 Both the RSX's c
000140: 6F 6D 6D 61 6E 64 20 74 61 62 6C 65 20 61 6E 64 ommand table and
000150: 20 74 68 65 20 4B 65 72 6E 65 6C 27 73 20 73 74 the Kernel's st
000160: 6F 72 61 67 65 20 61 72 65 61 20 6D 75 73 74 20 orage area must
000170: 6C 69 65 20 69 6E 0D 0A 20 20 20 20 20 20 20 74 lie in.. t
000180: 68 65 20 63 65 6E 74 72 61 6C 20 33 32 4B 20 6F he central 32K o
000190: 66 20 6D 65 6D 6F 72 79 2C 20 69 2E 65 2E 20 6E f memory, i.e. n
0001A0: 6F 74 20 75 6E 64 65 72 20 61 20 52 4F 4D 2E 0D ot under a ROM..
0001B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
0001C0: 66 6F 72 6D 61 74 20 6F 66 20 20 63 6F 6D 6D 61 format of comma
0001D0: 6E 64 20 74 61 62 6C 65 20 69 73 20 64 65 73 63 nd table is desc
0001E0: 72 69 62 65 64 20 69 6E 20 73 65 63 74 69 6F 6E ribed in section
0001F0: 20 31 30 2E 32 20 61 6E 64 20 52 53 58 73 20 61 10.2 and RSXs a
Size : 512 (Real : 512)
000000: 72 65 0D 0A 20 20 20 20 20 20 20 64 69 73 63 75 re.. discu
000010: 73 73 65 64 20 69 6E 20 73 65 63 74 69 6F 6E 20 ssed in section
000020: 31 30 2E 35 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 10.5.........
000030: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
000040: 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ies:......
000050: 20 4B 4C 20 46 49 4E 44 20 43 4F 4D 4D 41 4E 44 KL FIND COMMAND
000060: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 49 4E 49 54 .. KL INIT
000070: 20 42 41 43 4B 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D BACK...........
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000090: 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 ... AMSTRA
0000A0: 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 D CPC464/664/612
0000B0: 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 8 FIRMWARE
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 20 20 20 70 61 67 65 20 31 35 2E 31 38 38 page 15.188
0000E0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
0000F0: 20 20 20 20 20 31 35 36 3A 20 4B 4C 20 46 49 4E 156: KL FIN
000100: 44 20 43 4F 4D 4D 41 4E 44 20 20 20 20 20 20 20 D COMMAND
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 20 23 42 43 44 34 0D 0A 0D 0A 0D #BCD4.....
000140: 0A 20 20 20 20 20 20 20 53 65 61 72 63 68 20 66 . Search f
000150: 6F 72 20 61 6E 20 52 53 58 2C 20 62 61 63 6B 67 or an RSX, backg
000160: 72 6F 75 6E 64 20 52 4F 4D 20 20 6F 72 20 20 66 round ROM or f
000170: 6F 72 65 67 72 6F 75 6E 64 20 20 52 4F 4D 20 20 oreground ROM
000180: 74 6F 20 20 70 72 6F 63 65 73 73 20 20 61 0D 0A to process a..
000190: 20 20 20 20 20 20 20 63 6F 6D 6D 61 6E 64 2E 0D command..
0001A0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 ..... Acti
0001B0: 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C on:.... Al
0001C0: 6C 20 65 78 70 61 6E 73 69 6F 6E 20 52 4F 4D 73 l expansion ROMs
0001D0: 20 61 6E 64 20 52 53 58 73 20 68 61 76 65 20 63 and RSXs have c
0001E0: 6F 6D 6D 61 6E 64 20 74 61 62 6C 65 73 20 6F 66 ommand tables of
0001F0: 20 74 68 65 20 73 61 6D 65 20 66 6F 72 6D 2E 20 the same form.
Size : 512 (Real : 512)
000000: 54 68 69 73 0D 0A 20 20 20 20 20 20 20 72 6F 75 This.. rou
000010: 74 69 6E 65 20 73 65 61 72 63 68 65 73 20 61 6C tine searches al
000020: 6C 20 52 53 58 73 20 61 6E 64 20 62 61 63 6B 67 l RSXs and backg
000030: 72 6F 75 6E 64 20 52 4F 4D 73 20 6F 6E 20 74 68 round ROMs on th
000040: 65 20 4B 65 72 6E 65 6C 27 73 20 6C 69 73 74 20 e Kernel's list
000050: 20 6F 66 0D 0A 20 20 20 20 20 20 20 65 78 74 65 of.. exte
000060: 72 6E 61 6C 20 63 6F 6D 6D 61 6E 64 20 73 65 72 rnal command ser
000070: 76 65 72 73 20 6C 6F 6F 6B 69 6E 67 20 66 6F 72 vers looking for
000080: 20 61 20 6D 61 74 63 68 20 20 66 6F 72 20 20 74 a match for t
000090: 68 65 20 20 67 69 76 65 6E 20 20 63 6F 6D 6D 61 he given comma
0000A0: 6E 64 0D 0A 20 20 20 20 20 20 20 6E 61 6D 65 2E nd.. name.
0000B0: 20 49 66 20 74 68 65 20 6E 61 6D 65 20 69 73 20 If the name is
0000C0: 66 6F 75 6E 64 2C 20 74 68 65 6E 20 74 68 65 20 found, then the
0000D0: 27 66 61 72 20 61 64 64 72 65 73 73 27 20 6F 66 'far address' of
0000E0: 20 20 74 68 65 20 20 61 73 73 6F 63 69 61 74 65 the associate
0000F0: 64 0D 0A 20 20 20 20 20 20 20 72 6F 75 74 69 6E d.. routin
000100: 65 20 69 73 20 72 65 74 75 72 6E 65 64 2E 20 49 e is returned. I
000110: 66 20 74 68 65 20 63 6F 6D 6D 61 6E 64 20 69 73 f the command is
000120: 20 6E 6F 74 20 61 20 62 61 63 6B 67 72 6F 75 6E not a backgroun
000130: 64 20 6F 72 20 52 53 58 20 63 6F 6D 6D 61 6E 64 d or RSX command
000140: 0D 0A 20 20 20 20 20 20 20 74 68 65 6E 20 61 6C .. then al
000150: 6C 20 74 68 65 20 66 6F 72 65 67 72 6F 75 6E 64 l the foreground
000160: 20 52 4F 4D 73 20 74 68 61 74 20 63 61 6E 20 62 ROMs that can b
000170: 65 20 20 66 6F 75 6E 64 20 20 61 72 65 20 20 73 e found are s
000180: 65 61 72 63 68 65 64 20 20 66 6F 72 20 20 61 0D earched for a.
000190: 0A 20 20 20 20 20 20 20 66 6F 72 65 67 72 6F 75 . foregrou
0001A0: 6E 64 20 70 72 6F 67 72 61 6D 20 77 69 74 68 20 nd program with
0001B0: 74 68 65 20 67 69 76 65 6E 20 6E 61 6D 65 2E 20 the given name.
0001C0: 49 66 20 20 61 20 20 66 6F 72 65 67 72 6F 75 6E If a foregroun
0001D0: 64 20 20 70 72 6F 67 72 61 6D 20 20 69 73 0D 0A d program is..
0001E0: 20 20 20 20 20 20 20 66 6F 75 6E 64 20 74 68 65 found the
0001F0: 6E 20 74 68 65 20 73 79 73 74 65 6D 20 69 6D 6D n the system imm
Size : 512 (Real : 512)
000000: 65 64 69 61 74 65 6C 79 20 65 6E 74 65 72 73 20 ediately enters
000010: 69 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E it..... En
000020: 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D try conditions:.
000030: 0A 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 6E ... HL con
000040: 74 61 69 6E 73 20 74 68 65 20 61 64 64 72 65 73 tains the addres
000050: 73 20 6F 66 20 74 68 65 20 63 6F 6D 6D 61 6E 64 s of the command
000060: 20 6E 61 6D 65 20 74 6F 20 73 65 61 72 63 68 20 name to search
000070: 66 6F 72 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 for..... E
000080: 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D xit conditions:.
000090: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 61 6E 20 ... If an
0000A0: 52 53 58 20 6F 72 20 62 61 63 6B 67 72 6F 75 6E RSX or backgroun
0000B0: 64 20 52 4F 4D 20 63 6F 6D 6D 61 6E 64 20 77 61 d ROM command wa
0000C0: 73 20 66 6F 75 6E 64 3A 0D 0A 0D 0A 0D 0A 20 20 s found:......
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 61 Ca
0000E0: 72 72 79 20 74 72 75 65 2E 0D 0A 20 20 20 20 20 rry true...
0000F0: 20 20 20 20 20 20 20 20 20 20 20 43 20 63 6F 6E C con
000100: 74 61 69 6E 73 20 74 68 65 20 52 4F 4D 20 73 65 tains the ROM se
000110: 6C 65 63 74 20 61 64 64 72 65 73 73 2E 0D 0A 20 lect address...
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 H
000130: 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 L contains the a
000140: 64 64 72 65 73 73 20 6F 66 20 74 68 65 20 72 6F ddress of the ro
000150: 75 74 69 6E 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 utine.......
000160: 20 20 20 49 66 20 74 68 65 20 63 6F 6D 6D 61 6E If the comman
000170: 64 20 77 61 73 20 6E 6F 74 20 66 6F 75 6E 64 3A d was not found:
000180: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 ......
000190: 20 20 20 20 20 20 43 61 72 72 79 20 66 61 6C 73 Carry fals
0001A0: 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 e...
0001B0: 20 20 20 20 43 20 61 6E 64 20 48 4C 20 63 6F 72 C and HL cor
0001C0: 72 75 70 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 rupt.....
0001D0: 41 6C 77 61 79 73 0D 0A 0D 0A 0D 0A 20 20 20 20 Always......
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 41 2C 20 42 A, B
0001F0: 20 61 6E 64 20 44 45 20 63 6F 72 72 75 70 74 2E and DE corrupt.
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000010: 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 All other regi
000020: 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E sters preserved.
000030: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 ...... Not
000040: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
000050: 54 68 65 20 63 6F 6D 6D 61 6E 64 20 6E 61 6D 65 The command name
000060: 20 70 61 73 73 65 64 20 6D 75 73 74 20 62 65 20 passed must be
000070: 69 6E 20 52 41 4D 20 62 75 74 20 6D 61 79 20 6C in RAM but may l
000080: 69 65 20 75 6E 64 65 72 6E 65 61 74 68 20 20 61 ie underneath a
000090: 20 20 52 4F 4D 2E 0D 0A 20 20 20 20 20 20 20 54 ROM... T
0000A0: 68 65 20 6E 61 6D 65 20 6D 61 79 20 62 65 20 61 he name may be a
0000B0: 6E 79 20 6E 75 6D 62 65 72 20 6F 66 20 63 68 61 ny number of cha
0000C0: 72 61 63 74 65 72 73 20 6C 6F 6E 67 20 62 75 74 racters long but
0000D0: 20 6F 6E 6C 79 20 20 74 68 65 20 20 66 69 72 73 only the firs
0000E0: 74 20 20 31 36 0D 0A 20 20 20 20 20 20 20 63 68 t 16.. ch
0000F0: 61 72 61 63 74 65 72 73 20 61 72 65 20 73 69 67 aracters are sig
000100: 6E 69 66 69 63 61 6E 74 2E 20 41 6C 6C 20 20 61 nificant. All a
000110: 6C 70 68 61 62 65 74 69 63 20 20 63 68 61 72 61 lphabetic chara
000120: 63 74 65 72 73 20 20 69 6E 20 20 74 68 65 20 20 cters in the
000130: 6E 61 6D 65 0D 0A 20 20 20 20 20 20 20 73 68 6F name.. sho
000140: 75 6C 64 20 62 65 20 69 6E 20 75 70 70 65 72 20 uld be in upper
000150: 63 61 73 65 20 61 6E 64 20 74 68 65 20 6C 61 73 case and the las
000160: 74 20 63 68 61 72 61 63 74 65 72 20 6F 66 20 74 t character of t
000170: 68 65 20 6E 61 6D 65 20 73 68 6F 75 6C 64 20 68 he name should h
000180: 61 76 65 0D 0A 20 20 20 20 20 20 20 62 69 74 20 ave.. bit
000190: 37 20 73 65 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 7 set.......
0001A0: 20 20 20 54 68 65 20 52 4F 4D 20 73 65 6C 65 63 The ROM selec
0001B0: 74 20 61 6E 64 20 72 6F 75 74 69 6E 65 20 61 64 t and routine ad
0001C0: 64 72 65 73 73 65 73 20 72 65 74 75 72 6E 65 64 dresses returned
0001D0: 20 61 72 65 20 73 75 69 74 61 62 6C 65 20 66 6F are suitable fo
0001E0: 72 20 63 61 6C 6C 69 6E 67 0D 0A 20 20 20 20 20 r calling..
0001F0: 20 20 4B 4C 20 46 41 52 20 50 43 48 4C 2E 0D 0A KL FAR PCHL...
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
000010: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
000020: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 31 38 page 15.18
000050: 39 0D 0A 1A 39 0D 0A 1A 20 20 20 20 20 20 20 20 9...9...
000060: 20 20 20 20 42 69 74 20 33 3A 20 20 20 20 52 65 Bit 3: Re
000070: 6E 64 65 7A 76 6F 75 73 20 77 69 74 68 20 63 68 ndezvous with ch
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 54 68 65 20 6C 69 73 74 20 6F 66 20 65 The list of e
000020: 78 74 65 72 6E 61 6C 20 63 6F 6D 6D 61 6E 64 20 xternal command
000030: 73 65 72 76 65 72 73 20 69 73 20 67 65 6E 65 72 servers is gener
000040: 61 74 65 64 20 61 73 20 20 62 61 63 6B 67 72 6F ated as backgro
000050: 75 6E 64 20 20 52 4F 4D 73 0D 0A 20 20 20 20 20 und ROMs..
000060: 20 20 61 6E 64 20 52 53 58 73 20 61 72 65 20 69 and RSXs are i
000070: 6E 69 74 69 61 6C 69 7A 65 64 3A 69 7A 65 64 20 nitialized:ized
000080: 28 73 65 65 20 4B 4C 20 52 4F 4D 20 57 41 4C 4B (see KL ROM WALK
000090: 2C 20 4B 4C 20 49 4E 49 54 20 20 42 41 43 4B 20 , KL INIT BACK
0000A0: 20 61 6E 64 20 20 4B 4C 0D 0A 20 20 20 20 20 20 and KL..
0000B0: 20 4C 4F 47 20 45 58 54 29 2E 20 54 68 65 20 63 LOG EXT). The c
0000C0: 6F 6D 6D 61 6E 64 20 74 61 62 6C 65 73 20 61 72 ommand tables ar
0000D0: 65 20 73 63 61 6E 6E 65 64 20 69 6E 20 74 68 65 e scanned in the
0000E0: 20 6F 70 70 6F 73 69 74 65 20 6F 72 64 65 72 20 opposite order
0000F0: 74 6F 20 74 68 61 74 0D 0A 20 20 20 20 20 20 20 to that..
000100: 69 6E 20 77 68 69 63 68 20 74 68 65 20 63 6F 6D in which the com
000110: 6D 61 6E 64 20 73 65 72 76 65 72 73 20 77 65 72 mand servers wer
000120: 65 20 69 6E 74 72 6F 64 75 63 65 64 2E 20 54 68 e introduced. Th
000130: 75 73 2C 20 52 53 58 73 20 77 69 6C 6C 20 74 65 us, RSXs will te
000140: 6E 64 20 20 74 6F 0D 0A 20 20 20 20 20 20 20 74 nd to.. t
000150: 61 6B 65 20 70 72 65 63 65 64 65 6E 63 65 20 6F ake precedence o
000160: 76 65 72 20 62 61 63 6B 67 72 6F 75 6E 64 20 52 ver background R
000170: 4F 4D 73 2C 20 73 69 6E 63 65 20 20 52 53 58 27 OMs, since RSX'
000180: 73 20 20 61 72 65 2C 20 20 69 6E 20 20 67 65 6E s are, in gen
000190: 65 72 61 6C 2C 0D 0A 20 20 20 20 20 20 20 69 6E eral,.. in
0001A0: 69 74 69 61 6C 69 7A 65 64 20 20 61 66 74 65 72 itialized after
0001B0: 20 20 62 61 63 6B 67 72 6F 75 6E 64 20 20 52 4F background RO
0001C0: 4D 73 2E 20 20 42 61 63 6B 67 72 6F 75 6E 64 20 Ms. Background
0001D0: 20 52 4F 4D 73 20 20 61 72 65 20 20 6E 6F 72 6D ROMs are norm
0001E0: 61 6C 6C 79 0D 0A 20 20 20 20 20 20 20 69 6E 69 ally.. ini
0001F0: 74 69 61 6C 69 7A 65 64 20 69 6E 20 20 72 65 76 tialized in rev
Size : 512 (Real : 512)
000000: 65 72 73 65 20 20 6F 72 64 65 72 20 20 6F 66 20 erse order of
000010: 20 52 4F 4D 20 20 73 65 6C 65 63 74 20 20 61 64 ROM select ad
000020: 64 72 65 73 73 65 73 2C 20 20 73 6F 20 20 6C 6F dresses, so lo
000030: 77 65 72 0D 0A 20 20 20 20 20 20 20 6E 75 6D 62 wer.. numb
000040: 65 72 65 64 20 52 4F 4D 53 20 77 69 6C 6C 20 74 ered ROMS will t
000050: 61 6B 65 20 70 72 65 63 65 64 65 6E 63 65 20 6F ake precedence o
000060: 76 65 72 20 68 69 67 68 65 72 2E 0D 0A 0D 0A 0D ver higher......
000070: 0A 20 20 20 20 20 20 20 53 65 65 20 73 65 63 74 . See sect
000080: 69 6F 6E 20 31 30 2E 32 20 66 6F 72 20 61 20 64 ion 10.2 for a d
000090: 65 73 63 72 69 70 74 69 6F 6E 20 6F 66 20 20 74 escription of t
0000A0: 68 65 20 20 66 6F 72 6D 61 74 20 20 6F 66 20 20 he format of
0000B0: 65 78 70 61 6E 73 69 6F 6E 20 20 52 4F 4D 0D 0A expansion ROM..
0000C0: 20 20 20 20 20 20 20 63 6F 6D 6D 61 6E 64 20 74 command t
0000D0: 61 62 6C 65 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 ables.......
0000E0: 20 20 20 54 68 65 20 66 69 72 73 74 20 65 6E 74 The first ent
0000F0: 72 79 20 69 6E 20 61 20 62 61 63 6B 67 72 6F 75 ry in a backgrou
000100: 6E 64 20 52 4F 4D 27 73 20 20 63 6F 6D 6D 61 6E nd ROM's comman
000110: 64 20 20 6E 61 6D 65 20 20 74 61 62 6C 65 20 20 d name table
000120: 28 74 68 65 20 20 6F 6E 65 0D 0A 20 20 20 20 20 (the one..
000130: 20 20 61 73 73 6F 63 69 61 74 65 64 20 77 69 74 associated wit
000140: 68 20 74 68 65 20 70 6F 77 65 72 2D 75 70 20 65 h the power-up e
000150: 6E 74 72 79 29 20 6D 61 79 20 62 65 20 75 73 65 ntry) may be use
000160: 64 20 61 73 20 74 68 65 20 52 4F 4D 27 73 20 6E d as the ROM's n
000170: 61 6D 65 2E 20 20 4B 4C 0D 0A 20 20 20 20 20 20 ame. KL..
000180: 20 46 49 4E 44 20 43 4F 4D 4D 41 4E 44 20 6D 61 FIND COMMAND ma
000190: 79 20 62 65 20 75 73 65 64 2C 20 74 68 65 72 65 y be used, there
0001A0: 66 6F 72 65 2C 20 74 6F 20 66 69 6E 64 20 6F 75 fore, to find ou
0001B0: 74 20 77 68 65 74 68 65 72 20 61 20 20 70 61 72 t whether a par
0001C0: 74 69 63 75 6C 61 72 0D 0A 20 20 20 20 20 20 20 ticular..
0001D0: 62 61 63 6B 67 72 6F 75 6E 64 20 52 4F 4D 20 68 background ROM h
0001E0: 61 73 20 62 65 65 6E 20 69 6E 69 74 69 61 6C 69 as been initiali
0001F0: 7A 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 zed.......
Size : 512 (Real : 512)
000000: 20 57 68 65 6E 20 73 65 61 72 63 68 69 6E 67 20 When searching
000010: 66 6F 72 20 61 20 66 6F 72 65 67 72 6F 75 6E 64 for a foreground
000020: 20 70 72 6F 67 72 61 6D 2C 20 52 4F 4D 73 20 61 program, ROMs a
000030: 72 65 20 20 69 6E 73 70 65 63 74 65 64 20 20 73 re inspected s
000040: 74 61 72 74 69 6E 67 0D 0A 20 20 20 20 20 20 20 tarting..
000050: 77 69 74 68 20 52 4F 4D 20 30 20 61 6E 64 20 77 with ROM 0 and w
000060: 6F 72 6B 69 6E 67 20 75 70 77 61 72 64 73 2E 20 orking upwards.
000070: 20 54 68 65 20 20 73 65 61 72 63 68 20 20 63 65 The search ce
000080: 61 73 65 73 20 20 77 68 65 6E 20 20 74 68 65 20 ases when the
000090: 20 66 69 72 73 74 0D 0A 20 20 20 20 20 20 20 75 first.. u
0000A0: 6E 75 73 65 64 20 52 4F 4D 20 61 64 64 72 65 73 nused ROM addres
0000B0: 73 20 67 72 65 61 74 65 72 20 74 68 61 6E 20 30 s greater than 0
0000C0: 20 6F 6E 20 56 31 2E 30 20 66 69 72 6D 77 61 72 on V1.0 firmwar
0000D0: 65 20 61 6E 64 20 67 72 65 61 74 65 72 20 74 68 e and greater th
0000E0: 61 6E 20 31 35 0D 0A 20 20 20 20 20 20 20 6F 6E an 15.. on
0000F0: 20 56 31 2E 31 20 66 69 72 6D 77 61 72 65 20 69 V1.1 firmware i
000100: 73 20 66 6F 75 6E 64 2E 0D 0A 0D 0A 0D 0A 20 20 s found.......
000110: 20 20 20 20 20 54 68 65 20 6F 6E 2D 62 6F 61 72 The on-boar
000120: 64 20 42 41 53 49 43 20 6D 61 79 20 62 65 20 65 d BASIC may be e
000130: 6E 74 65 72 65 64 20 62 79 20 73 65 61 72 63 68 ntered by search
000140: 69 6E 67 20 66 6F 72 20 20 61 6E 64 20 20 69 6E ing for and in
000150: 76 6F 6B 69 6E 67 20 20 74 68 65 0D 0A 20 20 20 voking the..
000160: 20 20 20 20 63 6F 6D 6D 61 6E 64 20 27 42 41 53 command 'BAS
000170: 49 43 27 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 IC'.......
000180: 20 49 66 20 20 61 20 20 66 6F 72 65 67 72 6F 75 If a foregrou
000190: 6E 64 20 20 52 4F 4D 20 20 63 6F 6D 6D 61 6E 64 nd ROM command
0001A0: 20 20 69 73 20 20 20 66 6F 75 6E 64 20 20 20 74 is found t
0001B0: 68 65 20 20 20 52 4F 4D 20 20 20 69 73 20 20 20 he ROM is
0001C0: 65 6E 74 65 72 65 64 0D 0A 20 20 20 20 20 20 20 entered..
0001D0: 75 6E 63 6F 6E 64 69 74 69 6F 6E 61 6C 6C 79 20 unconditionally
0001E0: 74 68 69 73 20 72 6F 75 74 69 6E 65 20 6E 65 76 this routine nev
0001F0: 65 72 20 72 65 74 75 72 6E 73 2E 0D 0A 0D 0A 0D er returns......
Size : 512 (Real : 512)
000000: 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 ... Relate
000010: 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A d entries:......
000020: 20 20 20 20 20 20 20 4B 4C 20 49 4E 49 54 20 42 KL INIT B
000030: 41 43 4B 0D 0A 20 20 20 20 20 20 20 4B 4C 20 4C ACK.. KL L
000040: 4F 47 20 45 58 54 0D 0A 20 20 20 20 20 20 20 4B OG EXT.. K
000050: 4C 20 52 4F 4D 20 57 41 4C 4B 0D 0A 20 20 20 20 L ROM WALK..
000060: 20 20 20 4D 43 20 53 54 41 52 54 20 50 52 4F 47 MC START PROG
000070: 52 41 4D 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D RAM.............
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000090: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D ....... AM
0000A0: 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 STRAD CPC464/664
0000B0: 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 /6128 FIRMWARE
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 page 15
0000E0: 2E 31 39 30 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A .190............
0000F0: 0D 0A 20 20 20 20 20 20 20 31 35 37 3A 20 4B 4C .. 157: KL
000100: 20 4E 45 57 20 46 52 41 4D 45 20 46 4C 59 20 20 NEW FRAME FLY
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 20 20 20 20 20 23 42 43 44 37 0D #BCD7.
000140: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 6E 69 74 ..... Init
000150: 69 61 6C 69 7A 65 20 61 6E 64 20 70 75 74 20 61 ialize and put a
000160: 20 62 6C 6F 63 6B 20 6F 6E 74 6F 20 74 68 65 20 block onto the
000170: 66 72 61 6D 65 20 66 6C 79 62 61 63 6B 20 6C 69 frame flyback li
000180: 73 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 st.......
000190: 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 Action:......
0001A0: 20 20 20 20 54 68 65 20 4B 65 72 6E 65 6C 20 6D The Kernel m
0001B0: 61 69 6E 74 61 69 6E 73 20 61 20 6C 69 73 74 20 aintains a list
0001C0: 6F 66 20 65 76 65 6E 74 73 20 74 6F 20 62 65 20 of events to be
0001D0: 20 6B 69 63 6B 65 64 20 20 65 61 63 68 20 20 74 kicked each t
0001E0: 69 6D 65 20 20 66 72 61 6D 65 0D 0A 20 20 20 20 ime frame..
0001F0: 20 20 20 66 6C 79 62 61 63 6B 20 6F 63 63 75 72 flyback occur
Size : 512 (Real : 512)
000000: 73 2E 20 54 68 65 20 72 6F 75 74 69 6E 65 20 69 s. The routine i
000010: 6E 69 74 69 61 6C 69 7A 65 73 20 61 20 62 6C 6F nitializes a blo
000020: 63 6B 20 61 6E 64 20 20 61 64 64 73 20 20 69 74 ck and adds it
000030: 20 20 74 6F 20 20 74 68 65 0D 0A 20 20 20 20 20 to the..
000040: 20 20 6C 69 73 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 list.......
000050: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000060: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000070: 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 HL contains th
000080: 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 e address of the
000090: 20 66 72 61 6D 65 20 66 6C 79 62 61 63 6B 20 62 frame flyback b
0000A0: 6C 6F 63 6B 2E 0D 0A 20 20 20 20 20 20 20 42 20 lock... B
0000B0: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 65 76 65 contains the eve
0000C0: 6E 74 20 63 6C 61 73 73 2E 0D 0A 20 20 20 20 20 nt class...
0000D0: 20 20 43 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 C contains the
0000E0: 20 52 4F 4D 20 73 65 6C 65 63 74 20 61 64 64 72 ROM select addr
0000F0: 65 73 73 20 6F 66 20 74 68 65 20 65 76 65 6E 74 ess of the event
000100: 20 72 6F 75 74 69 6E 65 2E 0D 0A 20 20 20 20 20 routine...
000110: 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 68 DE contains th
000120: 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 e address of the
000130: 20 65 76 65 6E 74 20 72 6F 75 74 69 6E 65 2E 0D event routine..
000140: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 ..... Exit
000150: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000160: 0D 0A 20 20 20 20 20 20 20 41 46 2C 20 44 45 20 .. AF, DE
000170: 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D and HL corrupt..
000180: 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 . All othe
000190: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
0001A0: 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 erved.......
0001B0: 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 Notes:......
0001C0: 20 20 20 20 20 20 54 68 65 20 66 72 61 6D 65 20 The frame
0001D0: 66 6C 79 62 61 63 6B 20 62 6C 6F 63 6B 20 69 73 flyback block is
0001E0: 20 39 20 62 79 74 65 73 20 6C 6F 6E 67 20 61 6E 9 bytes long an
0001F0: 64 20 6D 75 73 74 20 6C 69 65 20 20 69 6E 20 20 d must lie in
Size : 512 (Real : 512)
000000: 74 68 65 20 20 63 65 6E 74 72 61 6C 0D 0A 20 20 the central..
000010: 20 20 20 20 20 33 32 4B 20 6F 66 20 52 41 4D 2E 32K of RAM.
000020: 20 54 68 65 20 6C 61 73 74 20 37 20 62 79 74 65 The last 7 byte
000030: 73 20 6F 66 20 74 68 65 20 66 72 61 6D 65 20 66 s of the frame f
000040: 6C 79 62 61 63 6B 20 62 6C 6F 63 6B 20 61 72 65 lyback block are
000050: 20 20 61 6E 20 20 65 76 65 6E 74 0D 0A 20 20 20 an event..
000060: 20 20 20 20 62 6C 6F 63 6B 20 77 68 69 63 68 20 block which
000070: 69 73 20 69 6E 69 74 69 61 6C 69 7A 65 64 20 74 is initialized t
000080: 6F 20 72 65 66 6C 65 63 74 20 74 68 65 20 70 61 o reflect the pa
000090: 72 61 6D 65 74 65 72 73 20 70 61 73 73 65 64 20 rameters passed
0000A0: 20 69 6E 20 20 42 2C 20 20 43 0D 0A 20 20 20 20 in B, C..
0000B0: 20 20 20 61 6E 64 20 44 45 20 28 73 65 65 20 4B and DE (see K
0000C0: 4C 20 49 4E 49 54 20 45 56 45 4E 54 29 2E 20 54 L INIT EVENT). T
0000D0: 68 65 20 65 78 61 63 74 20 6C 61 79 6F 75 74 20 he exact layout
0000E0: 6F 66 20 61 20 66 72 61 6D 65 20 66 6C 79 62 61 of a frame flyba
0000F0: 63 6B 20 20 62 6C 6F 63 6B 0D 0A 20 20 20 20 20 ck block..
000100: 20 20 69 73 20 64 65 73 63 72 69 62 65 64 20 69 is described i
000110: 6E 20 41 70 70 65 6E 64 69 78 20 58 2E 0D 0A 0D n Appendix X....
000120: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 72 ... The fr
000130: 61 6D 65 20 66 6C 79 62 61 63 6B 20 62 6C 6F 63 ame flyback bloc
000140: 6B 20 69 73 20 61 70 70 65 6E 64 65 64 20 74 6F k is appended to
000150: 20 74 68 65 20 66 72 61 6D 65 20 66 6C 79 62 61 the frame flyba
000160: 63 6B 20 6C 69 73 74 20 69 66 20 69 74 20 69 73 ck list if it is
000170: 0D 0A 20 20 20 20 20 20 20 6E 6F 74 20 61 6C 72 .. not alr
000180: 65 61 64 79 20 6F 6E 20 69 74 2E 0D 0A 0D 0A 0D eady on it......
000190: 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 . This rou
0001A0: 74 69 6E 65 20 65 6E 61 62 6C 65 73 20 69 6E 74 tine enables int
0001B0: 65 72 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A errupts.........
0001C0: 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 Related e
0001D0: 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 ntries:......
0001E0: 20 20 20 20 4B 4C 20 41 44 44 20 46 52 41 4D 45 KL ADD FRAME
0001F0: 20 46 4C 59 0D 0A 20 20 20 20 20 20 20 4B 4C 20 FLY.. KL
Size : 512 (Real : 512)
000000: 44 45 4C 20 46 52 41 4D 45 20 46 4C 59 0D 0A 20 DEL FRAME FLY..
000010: 20 20 20 20 20 20 4B 4C 20 49 4E 49 54 20 45 56 KL INIT EV
000020: 45 4E 54 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ENT............
000030: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
000040: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
000050: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 70 61 67 65 20 31 35 2E 31 39 31 0D 0A 0D 0A page 15.191....
000080: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000090: 20 31 35 38 3A 20 4B 4C 20 41 44 44 20 46 52 41 158: KL ADD FRA
0000A0: 4D 45 20 46 4C 59 20 20 20 20 20 20 20 20 20 20 ME FLY
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 23 42 43 44 41 0D 0A 0D 0A 0D 0A 20 20 20 #BCDA......
0000E0: 20 20 20 20 50 75 74 20 61 20 62 6C 6F 63 6B 20 Put a block
0000F0: 6F 6E 74 6F 20 74 68 65 20 66 72 61 6D 65 20 66 onto the frame f
000100: 6C 79 62 61 63 6B 20 6C 69 73 74 2E 0D 0A 0D 0A lyback list.....
000110: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
000120: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
000130: 20 4B 65 72 6E 65 6C 20 6D 61 69 6E 74 61 69 6E Kernel maintain
000140: 73 20 61 20 6C 69 73 74 20 6F 66 20 65 76 65 6E s a list of even
000150: 74 73 20 74 6F 20 62 65 20 20 6B 69 63 6B 65 64 ts to be kicked
000160: 20 20 65 61 63 68 20 20 74 69 6D 65 20 20 66 72 each time fr
000170: 61 6D 65 0D 0A 20 20 20 20 20 20 20 66 6C 79 62 ame.. flyb
000180: 61 63 6B 20 6F 63 63 75 72 73 2E 20 54 68 69 73 ack occurs. This
000190: 20 72 6F 75 74 69 6E 65 20 61 64 64 73 20 61 20 routine adds a
0001A0: 62 6C 6F 63 6B 20 74 6F 20 74 68 65 20 6C 69 73 block to the lis
0001B0: 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 t....... E
0001C0: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
0001D0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 4C 20 ...... HL
0001E0: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 contains the add
0001F0: 72 65 73 73 20 6F 66 20 74 68 65 20 66 72 61 6D ress of the fram
Size : 512 (Real : 512)
000000: 65 20 66 6C 79 62 61 63 6B 20 62 6C 6F 63 6B 2E e flyback block.
000010: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 ...... Exi
000020: 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D t conditions:...
000030: 0A 0D 0A 20 20 20 20 20 20 20 41 46 2C 20 44 45 ... AF, DE
000040: 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E and HL corrupt.
000050: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 .. All oth
000060: 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 er registers pre
000070: 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 served.......
000080: 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A Notes:......
000090: 20 20 20 20 20 20 20 54 68 65 20 66 72 61 6D 65 The frame
0000A0: 20 66 6C 79 62 61 63 6B 20 62 6C 6F 63 6B 20 69 flyback block i
0000B0: 73 20 39 20 62 79 74 65 73 20 6C 6F 6E 67 20 61 s 9 bytes long a
0000C0: 6E 64 20 69 74 20 6D 75 73 74 20 6C 69 65 20 69 nd it must lie i
0000D0: 6E 20 74 68 65 20 63 65 6E 74 72 61 6C 0D 0A 20 n the central..
0000E0: 20 20 20 20 20 20 33 32 4B 20 6F 66 20 52 41 4D 32K of RAM
0000F0: 2E 20 54 68 65 20 6C 61 73 74 20 37 20 62 79 74 . The last 7 byt
000100: 65 73 20 6F 66 20 74 68 65 20 66 72 61 6D 65 20 es of the frame
000110: 66 6C 79 62 61 63 6B 20 62 6C 6F 63 6B 20 61 72 flyback block ar
000120: 65 20 20 61 6E 20 20 65 76 65 6E 74 0D 0A 20 20 e an event..
000130: 20 20 20 20 20 62 6C 6F 63 6B 20 20 77 68 69 63 block whic
000140: 68 20 20 6D 75 73 74 20 20 62 65 20 20 69 6E 69 h must be ini
000150: 74 69 61 6C 69 7A 65 64 20 20 73 65 70 61 72 61 tialized separa
000160: 74 65 6C 79 20 20 62 65 66 6F 72 65 20 20 63 61 tely before ca
000170: 6C 6C 69 6E 67 20 20 74 68 69 73 0D 0A 20 20 20 lling this..
000180: 20 20 20 20 72 6F 75 74 69 6E 65 2E 20 54 68 65 routine. The
000190: 20 65 78 61 63 74 20 6C 61 79 6F 75 74 20 6F 66 exact layout of
0001A0: 20 61 20 66 72 61 6D 65 20 66 6C 79 62 61 63 6B a frame flyback
0001B0: 20 20 62 6C 6F 63 6B 20 20 69 73 20 20 64 65 73 block is des
0001C0: 63 72 69 62 65 64 20 20 69 6E 0D 0A 20 20 20 20 cribed in..
0001D0: 20 20 20 41 70 70 65 6E 64 69 78 20 58 2E 0D 0A Appendix X...
0001E0: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 62 .... The b
0001F0: 6C 6F 63 6B 20 69 73 20 61 70 70 65 6E 64 65 64 lock is appended
Size : 512 (Real : 512)
000000: 20 74 6F 20 74 68 65 20 66 72 61 6D 65 20 66 6C to the frame fl
000010: 79 62 61 63 6B 20 6C 69 73 74 20 69 66 20 69 74 yback list if it
000020: 20 69 73 20 20 6E 6F 74 20 20 61 6C 72 65 61 64 is not alread
000030: 79 0D 0A 20 20 20 20 20 20 20 6F 6E 20 69 74 2E y.. on it.
000040: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
000050: 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 73 routine enables
000060: 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D 0A interrupts.....
000070: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 .... Relat
000080: 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D ed entries:.....
000090: 0A 20 20 20 20 20 20 20 4B 4C 20 44 45 4C 20 46 . KL DEL F
0000A0: 52 41 4D 45 20 46 4C 59 0D 0A 20 20 20 20 20 20 RAME FLY..
0000B0: 20 4B 4C 20 49 4E 49 54 20 45 56 45 4E 54 0D 0A KL INIT EVENT..
0000C0: 20 20 20 20 20 20 20 4B 4C 20 4E 45 57 20 46 52 KL NEW FR
0000D0: 41 4D 45 20 46 4C 59 0D 0A 0D 0A 0D 0A 0D 0A 0D AME FLY.........
0000E0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
0000F0: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
000100: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
000110: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
000130: 65 20 31 35 2E 31 39 32 0D 0A 0D 0A 0D 0A 0D 0A e 15.192........
000140: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 35 39 ...... 159
000150: 3A 20 4B 4C 20 44 45 4C 20 46 52 41 4D 45 20 46 : KL DEL FRAME F
000160: 4C 59 20 20 20 20 20 20 20 20 20 20 20 20 20 20 LY
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
000190: 43 44 44 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 CDD......
0001A0: 52 65 6D 6F 76 65 20 61 20 62 6C 6F 63 6B 20 66 Remove a block f
0001B0: 72 6F 6D 20 74 68 65 20 66 72 61 6D 65 20 66 6C rom the frame fl
0001C0: 79 62 61 63 6B 20 6C 69 73 74 2E 0D 0A 0D 0A 0D yback list......
0001D0: 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D . Action:.
0001E0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
0001F0: 4B 65 72 6E 65 6C 20 6D 61 69 6E 74 61 69 6E 73 Kernel maintains
Size : 512 (Real : 512)
000000: 20 61 20 6C 69 73 74 20 6F 66 20 65 76 65 6E 74 a list of event
000010: 73 20 74 6F 20 62 65 20 20 6B 69 63 6B 65 64 20 s to be kicked
000020: 20 65 61 63 68 20 20 74 69 6D 65 20 20 66 72 61 each time fra
000030: 6D 65 0D 0A 20 20 20 20 20 20 20 66 6C 79 62 61 me.. flyba
000040: 63 6B 20 6F 63 63 75 72 73 2E 20 54 68 69 73 20 ck occurs. This
000050: 72 6F 75 74 69 6E 65 20 72 65 6D 6F 76 65 73 20 routine removes
000060: 61 20 62 6C 6F 63 6B 20 66 72 6F 6D 20 74 68 65 a block from the
000070: 20 6C 69 73 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 list.......
000080: 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 Entry conditi
000090: 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ons:......
0000A0: 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 HL contains the
0000B0: 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 20 address of the
0000C0: 66 72 61 6D 65 20 66 6C 79 62 61 63 6B 20 62 6C frame flyback bl
0000D0: 6F 63 6B 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ock.......
0000E0: 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 Exit conditions
0000F0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 :...... AF
000100: 2C 20 44 45 20 61 6E 64 20 48 4C 20 63 6F 72 72 , DE and HL corr
000110: 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C upt... All
000120: 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 other registers
000130: 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D preserved......
000140: 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A . Notes:..
000150: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 .... This
000160: 72 6F 75 74 69 6E 65 20 64 6F 65 73 20 6E 6F 74 routine does not
000170: 68 69 6E 67 20 69 66 20 74 68 65 20 62 6C 6F 63 hing if the bloc
000180: 6B 20 69 73 20 6E 6F 74 20 6F 6E 20 74 68 65 20 k is not on the
000190: 6C 69 73 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 list.......
0001A0: 20 20 52 65 6D 6F 76 69 6E 67 20 61 20 62 6C 6F Removing a blo
0001B0: 63 6B 20 66 72 6F 6D 20 74 68 65 20 6C 69 73 74 ck from the list
0001C0: 20 6F 6E 6C 79 20 70 72 65 76 65 6E 74 73 20 74 only prevents t
0001D0: 68 65 20 20 65 76 65 6E 74 20 20 62 65 69 6E 67 he event being
0001E0: 20 20 6B 69 63 6B 65 64 0D 0A 20 20 20 20 20 20 kicked..
0001F0: 20 61 67 61 69 6E 2E 20 49 74 20 64 6F 65 73 20 again. It does
Size : 512 (Real : 512)
000000: 6E 6F 74 20 61 66 66 65 63 74 20 61 6E 79 20 6F not affect any o
000010: 75 74 73 74 61 6E 64 69 6E 67 20 66 72 61 6D 65 utstanding frame
000020: 20 66 6C 79 62 61 63 6B 20 65 76 65 6E 74 73 2E flyback events.
000030: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 ...... Thi
000040: 73 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 s routine enable
000050: 73 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D s interrupts....
000060: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 ..... Rela
000070: 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A ted entries:....
000080: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 41 44 44 20 .. KL ADD
000090: 46 52 41 4D 45 20 46 4C 59 0D 0A 20 20 20 20 20 FRAME FLY..
0000A0: 20 20 4B 4C 20 4E 45 57 20 46 52 41 4D 45 20 46 KL NEW FRAME F
0000B0: 4C 59 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A LY..............
0000C0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000D0: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
0000E0: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
0000F0: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 70 61 67 65 20 31 35 2E 31 39 33 0D 0A 0D page 15.193...
000120: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000130: 20 20 31 36 30 3A 20 4B 4C 20 4E 45 57 20 46 41 160: KL NEW FA
000140: 53 54 20 54 49 43 4B 45 52 20 20 20 20 20 20 20 ST TICKER
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 20 20 23 42 43 45 30 0D 0A 0D 0A 0D 0A 20 20 #BCE0......
000180: 20 20 20 20 20 49 6E 69 74 69 61 6C 69 7A 65 20 Initialize
000190: 61 6E 64 20 70 75 74 20 61 20 62 6C 6F 63 6B 20 and put a block
0001A0: 6F 6E 74 6F 20 74 68 65 20 66 61 73 74 20 74 69 onto the fast ti
0001B0: 63 6B 65 72 20 6C 69 73 74 2E 0D 0A 0D 0A 0D 0A cker list.......
0001C0: 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A Action:..
0001D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 4B .... The K
0001E0: 65 72 6E 65 6C 20 6D 61 69 6E 74 61 69 6E 73 20 ernel maintains
0001F0: 61 20 6C 69 73 74 20 6F 66 20 65 76 65 6E 74 73 a list of events
Size : 512 (Real : 512)
000000: 20 20 74 6F 20 20 62 65 20 20 6B 69 63 6B 65 64 to be kicked
000010: 20 20 65 61 63 68 20 20 74 69 6D 65 20 20 74 68 each time th
000020: 65 0D 0A 20 20 20 20 20 20 20 31 2F 33 30 30 74 e.. 1/300t
000030: 68 20 6F 66 20 61 20 73 65 63 6F 6E 64 20 74 69 h of a second ti
000040: 6D 65 72 20 69 6E 74 65 72 72 75 70 74 20 6F 63 mer interrupt oc
000050: 63 75 72 73 2E 20 54 68 69 73 20 69 73 20 6B 6E curs. This is kn
000060: 6F 77 6E 20 61 73 20 74 68 65 20 20 66 61 73 74 own as the fast
000070: 0D 0A 20 20 20 20 20 20 20 74 69 63 6B 65 72 20 .. ticker
000080: 6C 69 73 74 2E 20 54 68 69 73 20 72 6F 75 74 69 list. This routi
000090: 6E 65 20 69 6E 69 74 69 61 6C 69 7A 65 73 20 61 ne initializes a
0000A0: 20 62 6C 6F 63 6B 20 61 6E 64 20 61 64 64 73 20 block and adds
0000B0: 69 74 20 74 6F 20 74 68 65 20 6C 69 73 74 2E 0D it to the list..
0000C0: 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 ... Entry
0000D0: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
0000E0: 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E HL contain
0000F0: 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 s the address of
000100: 20 74 68 65 20 66 61 73 74 20 74 69 63 6B 65 72 the fast ticker
000110: 20 62 6C 6F 63 6B 2E 0D 0A 20 20 20 20 20 20 20 block...
000120: 42 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 65 B contains the e
000130: 76 65 6E 74 20 63 6C 61 73 73 2E 0D 0A 20 20 20 vent class...
000140: 20 20 20 20 43 20 63 6F 6E 74 61 69 6E 73 20 74 C contains t
000150: 68 65 20 52 4F 4D 20 73 65 6C 65 63 74 20 61 64 he ROM select ad
000160: 64 72 65 73 73 20 6F 66 20 74 68 65 20 65 76 65 dress of the eve
000170: 6E 74 20 72 6F 75 74 69 6E 65 2E 0D 0A 20 20 20 nt routine...
000180: 20 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 DE contains
000190: 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 the address of t
0001A0: 68 65 20 65 76 65 6E 74 20 72 6F 75 74 69 6E 65 he event routine
0001B0: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 ..... Exit
0001C0: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
0001D0: 20 20 20 20 20 20 20 41 46 2C 20 44 45 20 61 6E AF, DE an
0001E0: 64 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 d HL corrupt...
0001F0: 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 All other
Size : 512 (Real : 512)
000000: 72 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 registers preser
000010: 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E ved..... N
000020: 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 otes:......
000030: 20 20 54 68 65 20 66 61 73 74 20 74 69 63 6B 65 The fast ticke
000040: 72 20 62 6C 6F 63 6B 20 69 73 20 39 20 62 79 74 r block is 9 byt
000050: 65 73 20 6C 6F 6E 67 20 61 6E 64 20 6D 75 73 74 es long and must
000060: 20 6C 69 65 20 69 6E 20 74 68 65 20 63 65 6E 74 lie in the cent
000070: 72 61 6C 20 20 33 32 4B 0D 0A 20 20 20 20 20 20 ral 32K..
000080: 20 6F 66 20 52 41 4D 2E 20 54 68 65 20 6C 61 73 of RAM. The las
000090: 74 20 37 20 62 79 74 65 73 20 6F 66 20 74 68 65 t 7 bytes of the
0000A0: 20 66 61 73 74 20 74 69 63 6B 65 72 20 62 6C 6F fast ticker blo
0000B0: 63 6B 20 61 72 65 20 61 6E 20 20 65 76 65 6E 74 ck are an event
0000C0: 20 20 62 6C 6F 63 6B 0D 0A 20 20 20 20 20 20 20 block..
0000D0: 77 68 69 63 68 20 6D 75 73 74 20 62 65 20 69 6E which must be in
0000E0: 69 74 69 61 6C 69 7A 65 64 20 74 6F 20 72 65 66 itialized to ref
0000F0: 6C 65 63 74 20 74 68 65 20 70 61 72 61 6D 65 74 lect the paramet
000100: 65 72 73 20 70 61 73 73 65 64 20 69 6E 20 42 2C ers passed in B,
000110: 20 43 20 61 6E 64 0D 0A 20 20 20 20 20 20 20 44 C and.. D
000120: 45 20 28 73 65 65 20 4B 4C 20 49 4E 49 54 20 45 E (see KL INIT E
000130: 56 45 4E 54 29 2E 20 54 68 65 20 65 78 61 63 74 VENT). The exact
000140: 20 6C 61 79 6F 75 74 20 6F 66 20 61 20 20 66 61 layout of a fa
000150: 73 74 20 20 74 69 63 6B 65 72 20 20 62 6C 6F 63 st ticker bloc
000160: 6B 20 20 69 73 0D 0A 20 20 20 20 20 20 20 64 65 k is.. de
000170: 73 63 72 69 62 65 64 20 69 6E 20 41 70 70 65 6E scribed in Appen
000180: 64 69 78 20 58 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 dix X.......
000190: 20 20 20 54 68 65 20 66 61 73 74 20 74 69 63 6B The fast tick
0001A0: 65 72 20 62 6C 6F 63 6B 20 69 73 20 61 70 70 65 er block is appe
0001B0: 6E 64 65 64 20 74 6F 20 74 68 65 20 66 61 73 74 nded to the fast
0001C0: 20 74 69 63 6B 65 72 20 6C 69 73 74 20 69 66 20 ticker list if
0001D0: 69 74 20 69 73 20 6E 6F 74 0D 0A 20 20 20 20 20 it is not..
0001E0: 20 20 61 6C 72 65 61 64 79 20 6F 6E 20 69 74 2E already on it.
0001F0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
Size : 512 (Real : 512)
000000: 20 66 61 73 74 20 74 69 63 6B 65 72 20 66 61 63 fast ticker fac
000010: 69 6C 69 74 79 20 69 73 20 6E 6F 74 20 69 6E 74 ility is not int
000020: 65 6E 64 65 64 20 66 6F 72 20 67 65 6E 65 72 61 ended for genera
000030: 6C 20 75 73 65 2E 20 48 6F 77 65 76 65 72 2C 20 l use. However,
000040: 20 69 74 0D 0A 20 20 20 20 20 20 20 64 6F 65 73 it.. does
000050: 20 61 6C 6C 6F 77 20 72 65 6C 61 74 69 76 65 6C allow relativel
000060: 79 20 20 73 68 6F 72 74 20 20 74 69 6D 65 73 20 y short times
000070: 20 74 6F 20 20 62 65 20 20 6D 65 61 73 75 72 65 to be measure
000080: 64 20 20 67 69 76 69 6E 67 20 20 67 72 65 61 74 d giving great
000090: 65 72 0D 0A 20 20 20 20 20 20 20 72 65 73 6F 6C er.. resol
0000A0: 75 74 69 6F 6E 20 74 68 61 6E 20 74 68 65 20 67 ution than the g
0000B0: 65 6E 65 72 61 6C 20 74 69 63 6B 65 72 20 66 61 eneral ticker fa
0000C0: 63 69 6C 69 74 69 65 73 2E 0D 0A 0D 0A 0D 0A 20 cilities.......
0000D0: 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 This routi
0000E0: 6E 65 20 65 6E 61 62 6C 65 73 20 69 6E 74 65 72 ne enables inter
0000F0: 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 rupts.........
000100: 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 Related ent
000110: 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ries:......
000120: 20 20 4B 4C 20 41 44 44 20 46 41 53 54 20 54 49 KL ADD FAST TI
000130: 43 4B 45 52 0D 0A 20 20 20 20 20 20 20 4B 4C 20 CKER.. KL
000140: 41 44 44 20 54 49 43 4B 45 52 0D 0A 20 20 20 20 ADD TICKER..
000150: 20 20 20 4B 4C 20 44 45 4C 20 46 41 53 54 20 54 KL DEL FAST T
000160: 49 43 4B 45 52 0D 0A 20 20 20 20 20 20 20 4B 4C ICKER.. KL
000170: 20 49 4E 49 54 20 45 56 45 4E 54 0D 0A 20 20 20 INIT EVENT..
000180: 20 20 20 20 4B 4C 20 54 49 4D 45 20 50 4C 45 41 KL TIME PLEA
000190: 53 45 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 SE........
0001A0: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
0001B0: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
0001C0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
0001E0: 20 31 35 2E 31 39 34 0D 0A 0D 0A 0D 0A 0D 0A 0D 15.194.........
0001F0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 36 31 3A ..... 161:
Size : 512 (Real : 512)
000000: 20 4B 4C 20 41 44 44 20 46 41 53 54 20 54 49 43 KL ADD FAST TIC
000010: 4B 45 52 20 20 20 20 20 20 20 20 20 20 20 20 20 KER
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 43 #BC
000040: 45 33 0D 0A 0D 0A 20 20 20 20 20 20 20 50 75 74 E3.... Put
000050: 20 61 20 62 6C 6F 63 6B 20 6F 6E 74 6F 20 74 68 a block onto th
000060: 65 20 66 61 73 74 20 74 69 63 6B 65 72 20 6C 69 e fast ticker li
000070: 73 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 st..... Ac
000080: 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 tion:......
000090: 20 20 54 68 65 20 4B 65 72 6E 65 6C 20 6D 61 69 The Kernel mai
0000A0: 6E 74 61 69 6E 73 20 61 20 6C 69 73 74 20 6F 66 ntains a list of
0000B0: 20 65 76 65 6E 74 73 20 20 74 6F 20 20 62 65 20 events to be
0000C0: 20 6B 69 63 6B 65 64 20 20 65 61 63 68 20 20 74 kicked each t
0000D0: 69 6D 65 20 20 74 68 65 0D 0A 20 20 20 20 20 20 ime the..
0000E0: 20 31 2F 33 30 30 74 68 20 6F 66 20 61 20 73 65 1/300th of a se
0000F0: 63 6F 6E 64 20 74 69 6D 65 72 20 69 6E 74 65 72 cond timer inter
000100: 72 75 70 74 20 6F 63 63 75 72 73 2E 20 54 68 69 rupt occurs. Thi
000110: 73 20 69 73 20 6B 6E 6F 77 6E 20 61 73 20 74 68 s is known as th
000120: 65 20 20 66 61 73 74 0D 0A 20 20 20 20 20 20 20 e fast..
000130: 74 69 63 6B 65 72 20 6C 69 73 74 2E 20 54 68 69 ticker list. Thi
000140: 73 20 72 6F 75 74 69 6E 65 20 61 64 64 73 20 61 s routine adds a
000150: 20 62 6C 6F 63 6B 20 74 6F 20 74 68 65 20 6C 69 block to the li
000160: 73 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 st.......
000170: 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 Entry conditions
000180: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 4C :...... HL
000190: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 contains the ad
0001A0: 64 72 65 73 73 20 6F 66 20 74 68 65 20 66 61 73 dress of the fas
0001B0: 74 20 74 69 63 6B 65 72 20 62 6C 6F 63 6B 2E 0D t ticker block..
0001C0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 ..... Exit
0001D0: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
0001E0: 0D 0A 20 20 20 20 20 20 20 41 46 2C 20 44 45 20 .. AF, DE
0001F0: 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D and HL corrupt..
Size : 512 (Real : 512)
000000: 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 . All othe
000010: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
000020: 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 erved.......
000030: 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 Notes:......
000040: 20 20 20 20 20 20 54 68 65 20 66 61 73 74 20 74 The fast t
000050: 69 63 6B 65 72 20 62 6C 6F 63 6B 20 69 73 20 39 icker block is 9
000060: 20 62 79 74 65 73 20 6C 6F 6E 67 20 61 6E 64 20 bytes long and
000070: 6D 75 73 74 20 6C 69 65 20 69 6E 20 74 68 65 20 must lie in the
000080: 63 65 6E 74 72 61 6C 20 20 33 32 4B 0D 0A 20 20 central 32K..
000090: 20 20 20 20 20 6F 66 20 52 41 4D 2E 20 54 68 65 of RAM. The
0000A0: 20 6C 61 73 74 20 37 20 62 79 74 65 73 20 6F 66 last 7 bytes of
0000B0: 20 74 68 65 20 66 61 73 74 20 74 69 63 6B 65 72 the fast ticker
0000C0: 20 62 6C 6F 63 6B 20 61 72 65 20 61 6E 20 20 65 block are an e
0000D0: 76 65 6E 74 20 20 62 6C 6F 63 6B 0D 0A 20 20 20 vent block..
0000E0: 20 20 20 20 77 68 69 63 68 20 6D 75 73 74 20 62 which must b
0000F0: 65 20 69 6E 69 74 69 61 6C 69 7A 65 64 20 20 62 e initialized b
000100: 65 66 6F 72 65 20 20 63 61 6C 6C 69 6E 67 20 20 efore calling
000110: 74 68 69 73 20 20 72 6F 75 74 69 6E 65 2E 20 20 this routine.
000120: 54 68 65 20 20 65 78 61 63 74 0D 0A 20 20 20 20 The exact..
000130: 20 20 20 6C 61 79 6F 75 74 20 6F 66 20 61 20 66 layout of a f
000140: 61 73 74 20 74 69 63 6B 65 72 20 62 6C 6F 63 6B ast ticker block
000150: 20 69 73 20 64 65 73 63 72 69 62 65 64 20 69 6E is described in
000160: 20 41 70 70 65 6E 64 69 78 20 58 2E 0D 0A 0D 0A Appendix X.....
000170: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 61 73 .. The fas
000180: 74 20 74 69 63 6B 65 72 20 62 6C 6F 63 6B 20 69 t ticker block i
000190: 73 20 61 70 70 65 6E 64 65 64 20 74 6F 20 74 68 s appended to th
0001A0: 65 20 66 61 73 74 20 74 69 63 6B 65 72 20 6C 69 e fast ticker li
0001B0: 73 74 20 69 66 20 69 74 20 69 73 20 6E 6F 74 0D st if it is not.
0001C0: 0A 20 20 20 20 20 20 20 61 6C 72 65 61 64 79 20 . already
0001D0: 6F 6E 20 69 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 on it.......
0001E0: 20 20 20 54 68 65 20 66 61 73 74 20 74 69 63 6B The fast tick
0001F0: 65 72 20 66 61 63 69 6C 69 74 79 20 69 73 20 6E er facility is n
Size : 512 (Real : 512)
000000: 6F 74 20 69 6E 74 65 6E 64 65 64 20 66 6F 72 20 ot intended for
000010: 67 65 6E 65 72 61 6C 20 75 73 65 2E 20 48 6F 77 general use. How
000020: 65 76 65 72 2C 20 20 69 74 0D 0A 20 20 20 20 20 ever, it..
000030: 20 20 64 6F 65 73 20 61 6C 6C 6F 77 20 72 65 6C does allow rel
000040: 61 74 69 76 65 6C 79 20 20 73 68 6F 72 74 20 20 atively short
000050: 74 69 6D 65 73 20 20 74 6F 20 20 62 65 20 20 6D times to be m
000060: 65 61 73 75 72 65 64 20 20 67 69 76 69 6E 67 20 easured giving
000070: 20 67 72 65 61 74 65 72 0D 0A 20 20 20 20 20 20 greater..
000080: 20 72 65 73 6F 6C 75 74 69 6F 6E 20 74 68 61 6E resolution than
000090: 20 74 68 65 20 67 65 6E 65 72 61 6C 20 74 69 63 the general tic
0000A0: 6B 65 72 20 66 61 63 69 6C 69 74 69 65 73 2E 0D ker facilities..
0000B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ..... This
0000C0: 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 73 routine enables
0000D0: 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D 0A interrupts.....
0000E0: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 .... Relat
0000F0: 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D ed entries:.....
000100: 0A 20 20 20 20 20 20 20 4B 4C 20 41 44 44 20 54 . KL ADD T
000110: 49 43 4B 45 52 0D 0A 20 20 20 20 20 20 20 4B 4C ICKER.. KL
000120: 20 44 45 4C 20 46 41 53 54 20 54 49 43 4B 45 52 DEL FAST TICKER
000130: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 49 4E 49 54 .. KL INIT
000140: 20 45 56 45 4E 54 0D 0A 20 20 20 20 20 20 20 4B EVENT.. K
000150: 4C 20 4E 45 57 20 46 41 53 54 20 54 49 43 4B 45 L NEW FAST TICKE
000160: 52 0D 0A 20 20 20 20 20 20 20 4B 4C 20 54 49 4D R.. KL TIM
000170: 45 20 50 4C 45 41 53 45 0D 0A 0D 0A 0D 0A 0D 0A E PLEASE........
000180: 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 .. AMSTRAD
000190: 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 CPC464/664/6128
0001A0: 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 FIRMWARE
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 20 20 70 61 67 65 20 31 35 2E 31 39 35 0D page 15.195.
0001D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
0001E0: 20 20 20 20 31 36 32 3A 20 4B 4C 20 44 45 4C 20 162: KL DEL
0001F0: 46 41 53 54 20 54 49 43 4B 45 52 20 20 20 20 20 FAST TICKER
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 23 42 43 45 36 0D 0A 0D 0A 0D 0A #BCE6......
000030: 20 20 20 20 20 20 20 52 65 6D 6F 76 65 20 61 20 Remove a
000040: 62 6C 6F 63 6B 20 66 72 6F 6D 20 74 68 65 20 66 block from the f
000050: 61 73 74 20 74 69 63 6B 65 72 20 6C 69 73 74 2E ast ticker list.
000060: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 ...... Act
000070: 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ion:......
000080: 20 54 68 65 20 4B 65 72 6E 65 6C 20 6D 61 69 6E The Kernel main
000090: 74 61 69 6E 73 20 61 20 6C 69 73 74 20 6F 66 20 tains a list of
0000A0: 65 76 65 6E 74 73 20 20 74 6F 20 20 62 65 20 20 events to be
0000B0: 6B 69 63 6B 65 64 20 20 65 61 63 68 20 20 74 69 kicked each ti
0000C0: 6D 65 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 me the..
0000D0: 31 2F 33 30 30 74 68 20 6F 66 20 61 20 73 65 63 1/300th of a sec
0000E0: 6F 6E 64 20 74 69 6D 65 72 20 69 6E 74 65 72 72 ond timer interr
0000F0: 75 70 74 20 6F 63 63 75 72 73 2E 20 54 68 69 73 upt occurs. This
000100: 20 69 73 20 6B 6E 6F 77 6E 20 61 73 20 74 68 65 is known as the
000110: 20 20 66 61 73 74 0D 0A 20 20 20 20 20 20 20 74 fast.. t
000120: 69 63 6B 65 72 20 6C 69 73 74 2E 20 54 68 69 73 icker list. This
000130: 20 72 6F 75 74 69 6E 65 20 72 65 6D 6F 76 65 73 routine removes
000140: 20 61 20 62 6C 6F 63 6B 20 66 72 6F 6D 20 74 68 a block from th
000150: 65 20 6C 69 73 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 e list.......
000160: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000170: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000180: 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 HL contains th
000190: 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 e address of the
0001A0: 20 66 61 73 74 20 74 69 63 6B 65 72 20 62 6C 6F fast ticker blo
0001B0: 63 6B 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ck.......
0001C0: 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A Exit conditions:
0001D0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 2C ...... AF,
0001E0: 20 44 45 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 DE and HL corru
0001F0: 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 pt... All
Size : 512 (Real : 512)
000000: 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 other registers
000010: 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A preserved.......
000020: 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D Notes:...
000030: 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 ... This r
000040: 6F 75 74 69 6E 65 20 64 6F 65 73 20 6E 6F 74 68 outine does noth
000050: 69 6E 67 20 69 66 20 74 68 65 20 62 6C 6F 63 6B ing if the block
000060: 20 69 73 20 6E 6F 74 20 6F 6E 20 74 68 65 20 6C is not on the l
000070: 69 73 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ist.......
000080: 20 52 65 6D 6F 76 69 6E 67 20 61 20 62 6C 6F 63 Removing a bloc
000090: 6B 20 66 72 6F 6D 20 74 68 65 20 6C 69 73 74 20 k from the list
0000A0: 6F 6E 6C 79 20 20 70 72 65 76 65 6E 74 73 20 20 only prevents
0000B0: 74 68 65 20 20 65 76 65 6E 74 20 20 66 72 6F 6D the event from
0000C0: 20 20 62 65 69 6E 67 0D 0A 20 20 20 20 20 20 20 being..
0000D0: 6B 69 63 6B 65 64 20 61 67 61 69 6E 2E 20 49 74 kicked again. It
0000E0: 20 64 6F 65 73 20 6E 6F 74 20 61 66 66 65 63 74 does not affect
0000F0: 20 61 6E 79 20 6F 75 74 73 74 61 6E 64 69 6E 67 any outstanding
000100: 20 66 61 73 74 20 74 69 63 6B 65 72 20 65 76 65 fast ticker eve
000110: 6E 74 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 nts.......
000120: 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 65 6E This routine en
000130: 61 62 6C 65 73 20 69 6E 74 65 72 72 75 70 74 73 ables interrupts
000140: 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000150: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
000160: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ...... KL
000170: 41 44 44 20 46 41 53 54 20 54 49 43 4B 45 52 0D ADD FAST TICKER.
000180: 0A 20 20 20 20 20 20 20 4B 4C 20 44 45 4C 20 54 . KL DEL T
000190: 49 43 4B 45 52 0D 0A 20 20 20 20 20 20 20 4B 4C ICKER.. KL
0001A0: 20 4E 45 57 20 46 41 53 54 20 54 49 43 4B 45 52 NEW FAST TICKER
0001B0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0001C0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
0001D0: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
0001E0: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
0001F0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
000010: 20 31 35 2E 31 39 36 0D 0A 0D 0A 0D 0A 0D 0A 0D 15.196.........
000020: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 36 33 3A ..... 163:
000030: 20 4B 4C 20 41 44 44 20 54 49 43 4B 45 52 20 20 KL ADD TICKER
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 43 #BC
000070: 45 39 0D 0A 0D 0A 20 20 20 20 20 20 20 50 75 74 E9.... Put
000080: 20 61 20 62 6C 6F 63 6B 20 6F 6E 74 6F 20 74 68 a block onto th
000090: 65 20 74 69 63 6B 65 72 20 6C 69 73 74 2E 0D 0A e ticker list...
0000A0: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
0000B0: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 67 .... The g
0000C0: 65 6E 65 72 61 6C 20 70 75 72 70 6F 73 65 20 74 eneral purpose t
0000D0: 69 6D 69 6E 67 20 66 61 63 69 6C 69 74 79 20 20 iming facility
0000E0: 6D 65 61 73 75 72 65 73 20 20 74 69 6D 65 20 20 measures time
0000F0: 69 6E 20 20 31 2F 35 30 74 68 20 20 6F 66 20 20 in 1/50th of
000100: 61 0D 0A 20 20 20 20 20 20 20 73 65 63 6F 6E 64 a.. second
000110: 20 75 6E 69 74 73 2E 20 54 68 65 20 4B 65 72 6E units. The Kern
000120: 65 6C 20 6D 61 69 6E 74 61 69 6E 73 20 61 20 6C el maintains a l
000130: 69 73 74 20 6F 66 20 74 69 63 6B 20 62 6C 6F 63 ist of tick bloc
000140: 6B 73 20 65 61 63 68 20 6F 66 20 77 68 69 63 68 ks each of which
000150: 0D 0A 20 20 20 20 20 20 20 63 6F 6E 74 61 69 6E .. contain
000160: 73 20 61 20 63 6F 75 6E 74 20 61 6E 64 20 61 20 s a count and a
000170: 72 65 63 68 61 72 67 65 20 76 61 6C 75 65 2E 20 recharge value.
000180: 45 76 65 72 79 20 31 2F 35 30 74 68 20 6F 66 20 Every 1/50th of
000190: 20 61 20 20 73 65 63 6F 6E 64 20 20 74 68 65 0D a second the.
0001A0: 0A 20 20 20 20 20 20 20 4B 65 72 6E 65 6C 20 70 . Kernel p
0001B0: 72 6F 63 65 73 73 65 73 20 61 6C 6C 20 74 68 65 rocesses all the
0001C0: 20 74 69 63 6B 20 62 6C 6F 63 6B 73 2C 20 64 65 tick blocks, de
0001D0: 63 72 65 6D 65 6E 74 69 6E 67 20 74 68 65 20 63 crementing the c
0001E0: 6F 75 6E 74 20 65 6E 74 72 79 20 20 6F 66 0D 0A ount entry of..
0001F0: 20 20 20 20 20 20 20 65 61 63 68 2E 20 49 66 20 each. If
Size : 512 (Real : 512)
000000: 74 68 65 20 63 6F 75 6E 74 20 65 6E 74 72 79 20 the count entry
000010: 6F 66 20 61 20 62 6C 6F 63 6B 20 62 65 63 6F 6D of a block becom
000020: 65 73 20 7A 65 72 6F 20 74 68 65 20 20 65 76 65 es zero the eve
000030: 6E 74 20 20 63 6F 6E 74 61 69 6E 65 64 0D 0A 20 nt contained..
000040: 20 20 20 20 20 20 69 6E 20 74 68 65 20 62 6C 6F in the blo
000050: 63 6B 20 69 73 20 27 6B 69 63 6B 65 64 27 2C 20 ck is 'kicked',
000060: 61 6E 64 20 74 68 65 20 63 6F 75 6E 74 20 69 73 and the count is
000070: 20 73 65 74 20 74 6F 20 74 68 65 20 72 65 63 68 set to the rech
000080: 61 72 67 65 20 76 61 6C 75 65 2E 0D 0A 0D 0A 20 arge value.....
000090: 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 Entry cond
0000A0: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
0000B0: 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 HL contains th
0000C0: 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 e address of the
0000D0: 20 74 69 63 6B 20 62 6C 6F 63 6B 2E 0D 0A 20 20 tick block...
0000E0: 20 20 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 DE contains
0000F0: 20 74 68 65 20 69 6E 69 74 69 61 6C 20 76 61 6C the initial val
000100: 75 65 20 66 6F 72 20 74 68 65 20 63 6F 75 6E 74 ue for the count
000110: 20 65 6E 74 72 79 2E 0D 0A 20 20 20 20 20 20 20 entry...
000120: 42 43 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 BC contains the
000130: 76 61 6C 75 65 20 6F 66 20 74 68 65 20 72 65 63 value of the rec
000140: 68 61 72 67 65 20 65 6E 74 72 79 2E 0D 0A 0D 0A harge entry.....
000150: 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 Exit cond
000160: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
000170: 20 20 41 46 2C 20 42 43 2C 20 44 45 20 61 6E 64 AF, BC, DE and
000180: 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 HL corrupt...
000190: 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 All other r
0001A0: 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 egisters preserv
0001B0: 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ed..... No
0001C0: 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 tes:.... T
0001D0: 68 65 20 74 69 63 6B 20 62 6C 6F 63 6B 20 69 73 he tick block is
0001E0: 20 31 33 20 62 79 74 65 73 20 6C 6F 6E 67 20 61 13 bytes long a
0001F0: 6E 64 20 6D 75 73 74 20 6C 69 65 20 69 6E 20 20 nd must lie in
Size : 512 (Real : 512)
000000: 74 68 65 20 20 63 65 6E 74 72 61 6C 20 20 33 32 the central 32
000010: 4B 20 20 6F 66 0D 0A 20 20 20 20 20 20 20 6D 65 K of.. me
000020: 6D 6F 72 79 2E 20 54 68 65 20 6C 61 73 74 20 37 mory. The last 7
000030: 20 62 79 74 65 73 20 6F 66 20 74 68 65 20 74 69 bytes of the ti
000040: 63 6B 20 62 6C 6F 63 6B 20 61 72 65 20 61 6E 20 ck block are an
000050: 20 65 76 65 6E 74 20 20 62 6C 6F 63 6B 20 20 77 event block w
000060: 68 69 63 68 0D 0A 20 20 20 20 20 20 20 6D 75 73 hich.. mus
000070: 74 20 62 65 20 69 6E 69 74 69 61 6C 69 7A 65 64 t be initialized
000080: 20 62 65 66 6F 72 65 20 74 68 69 73 20 72 6F 75 before this rou
000090: 74 69 6E 65 20 69 73 20 63 61 6C 6C 65 64 2E 20 tine is called.
0000A0: 54 68 65 20 65 78 61 63 74 20 6C 61 79 6F 75 74 The exact layout
0000B0: 20 6F 66 0D 0A 20 20 20 20 20 20 20 61 20 74 69 of.. a ti
0000C0: 63 6B 20 62 6C 6F 63 6B 20 69 73 20 64 65 73 63 ck block is desc
0000D0: 72 69 62 65 64 20 69 6E 20 41 70 70 65 6E 64 69 ribed in Appendi
0000E0: 78 20 58 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 x X..... T
0000F0: 68 65 20 63 6F 75 6E 74 20 61 6E 64 20 72 65 63 he count and rec
000100: 68 61 72 67 65 20 65 6E 74 72 69 65 73 20 69 6E harge entries in
000110: 20 74 68 65 20 62 6C 6F 63 6B 20 61 72 65 20 73 the block are s
000120: 65 74 2E 20 54 68 65 20 62 6C 6F 63 6B 20 69 73 et. The block is
000130: 20 74 68 65 6E 0D 0A 20 20 20 20 20 20 20 61 70 then.. ap
000140: 70 65 6E 64 65 64 20 74 6F 20 74 68 65 20 74 69 pended to the ti
000150: 63 6B 20 6C 69 73 74 20 69 66 20 69 74 20 69 73 ck list if it is
000160: 20 20 6E 6F 74 20 20 61 6C 72 65 61 64 79 20 20 not already
000170: 6F 6E 20 20 74 68 65 20 20 6C 69 73 74 2E 20 20 on the list.
000180: 54 68 69 73 0D 0A 20 20 20 20 20 20 20 72 6F 75 This.. rou
000190: 74 69 6E 65 20 6D 61 79 20 62 65 20 75 73 65 64 tine may be used
0001A0: 2C 20 74 68 65 72 65 66 6F 72 65 2C 20 20 74 6F , therefore, to
0001B0: 20 20 63 68 61 6E 67 65 20 20 74 68 65 20 20 63 change the c
0001C0: 6F 75 6E 74 20 20 61 6E 64 20 20 72 65 63 68 61 ount and recha
0001D0: 72 67 65 0D 0A 20 20 20 20 20 20 20 65 6E 74 72 rge.. entr
0001E0: 69 65 73 20 6F 66 20 61 6E 20 65 78 69 73 74 69 ies of an existi
0001F0: 6E 67 20 62 6C 6F 63 6B 2E 0D 0A 0D 0A 20 20 20 ng block.....
Size : 512 (Real : 512)
000000: 20 20 20 20 42 6C 6F 63 6B 73 20 77 69 74 68 20 Blocks with
000010: 61 20 63 6F 75 6E 74 20 65 6E 74 72 79 20 20 6F a count entry o
000020: 66 20 20 7A 65 72 6F 20 20 61 72 65 20 20 69 67 f zero are ig
000030: 6E 6F 72 65 64 20 20 77 68 65 6E 20 20 74 68 65 nored when the
000040: 20 20 6C 69 73 74 20 20 69 73 0D 0A 20 20 20 20 list is..
000050: 20 20 20 70 72 6F 63 65 73 73 65 64 2E 20 53 65 processed. Se
000060: 74 74 69 6E 67 20 61 20 72 65 63 68 61 72 67 65 tting a recharge
000070: 20 76 61 6C 75 65 20 6F 66 20 7A 65 72 6F 2C 20 value of zero,
000080: 74 68 65 72 65 66 6F 72 65 2C 20 20 73 65 74 73 therefore, sets
000090: 20 20 75 70 20 20 74 68 65 0D 0A 20 20 20 20 20 up the..
0000A0: 20 20 62 6C 6F 63 6B 20 61 73 20 61 20 27 6F 6E block as a 'on
0000B0: 65 20 73 68 6F 74 20 74 69 6D 65 72 27 2E 20 53 e shot timer'. S
0000C0: 69 6E 63 65 20 69 74 20 74 61 6B 65 73 20 74 68 ince it takes th
0000D0: 65 20 4B 65 72 6E 65 6C 20 74 69 6D 65 20 74 6F e Kernel time to
0000E0: 20 20 69 67 6E 6F 72 65 0D 0A 20 20 20 20 20 20 ignore..
0000F0: 20 61 20 74 69 63 6B 20 62 6C 6F 63 6B 2C 20 61 a tick block, a
000100: 6E 79 20 72 65 64 75 6E 64 61 6E 74 20 62 6C 6F ny redundant blo
000110: 63 6B 73 20 73 68 6F 75 6C 64 20 62 65 20 72 65 cks should be re
000120: 6D 6F 76 65 64 20 66 72 6F 6D 20 74 68 65 20 6C moved from the l
000130: 69 73 74 20 20 61 73 0D 0A 20 20 20 20 20 20 20 ist as..
000140: 73 6F 6F 6E 20 61 73 20 70 6F 73 73 69 62 6C 65 soon as possible
000150: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 74 20 69 ..... It i
000160: 73 20 6E 6F 74 20 70 6F 73 73 69 62 6C 65 20 74 s not possible t
000170: 6F 20 70 72 65 64 69 63 74 2C 20 70 61 72 74 69 o predict, parti
000180: 63 75 6C 61 72 6C 79 20 77 69 74 68 20 20 73 79 cularly with sy
000190: 6E 63 68 72 6F 6E 6F 75 73 20 20 65 76 65 6E 74 nchronous event
0001A0: 73 2C 0D 0A 20 20 20 20 20 20 20 68 6F 77 20 6C s,.. how l
0001B0: 6F 6E 67 20 69 74 20 77 69 6C 6C 20 62 65 20 61 ong it will be a
0001C0: 66 74 65 72 20 74 68 65 20 20 27 6B 69 63 6B 27 fter the 'kick'
0001D0: 20 20 62 65 66 6F 72 65 20 20 74 68 65 20 20 65 before the e
0001E0: 76 65 6E 74 20 20 72 6F 75 74 69 6E 65 20 20 69 vent routine i
0001F0: 73 0D 0A 20 20 20 20 20 20 20 61 63 74 75 61 6C s.. actual
Size : 512 (Real : 512)
000000: 6C 79 20 63 61 6C 6C 65 64 2E 20 4E 6F 74 77 69 ly called. Notwi
000010: 74 68 73 74 61 6E 64 69 6E 67 20 74 68 65 73 65 thstanding these
000020: 20 64 65 6C 61 79 73 2C 20 74 68 65 20 74 69 63 delays, the tic
000030: 6B 65 72 20 6D 61 79 20 62 65 20 20 75 73 65 64 ker may be used
000040: 0D 0A 20 20 20 20 20 20 20 74 6F 20 6F 62 74 61 .. to obta
000050: 69 6E 20 61 6E 20 65 78 61 63 74 20 6E 75 6D 62 in an exact numb
000060: 65 72 20 6F 66 20 27 6B 69 63 6B 73 27 20 20 69 er of 'kicks' i
000070: 6E 20 20 61 20 20 67 69 76 65 6E 20 20 70 65 72 n a given per
000080: 69 6F 64 20 20 73 69 6E 63 65 20 20 74 68 65 0D iod since the.
000090: 0A 20 20 20 20 20 20 20 72 65 63 68 61 72 67 65 . recharge
0000A0: 20 6D 65 63 68 61 6E 69 73 6D 20 69 6D 6D 65 64 mechanism immed
0000B0: 69 61 74 65 6C 79 20 72 65 73 65 74 73 20 74 68 iately resets th
0000C0: 65 20 63 6F 75 6E 74 2E 20 20 54 68 65 20 20 65 e count. The e
0000D0: 76 65 6E 74 20 20 63 6F 75 6E 74 69 6E 67 0D 0A vent counting..
0000E0: 20 20 20 20 20 20 20 6D 65 63 68 61 6E 69 73 6D mechanism
0000F0: 20 77 69 6C 6C 20 65 6E 73 75 72 65 20 74 68 61 will ensure tha
000100: 74 20 27 6B 69 63 6B 73 27 20 61 72 65 20 6E 6F t 'kicks' are no
000110: 74 20 6D 69 73 73 65 64 2C 20 70 72 6F 76 69 64 t missed, provid
000120: 65 64 20 74 68 61 74 20 74 68 65 72 65 0D 0A 20 ed that there..
000130: 20 20 20 20 20 20 61 72 65 20 6E 65 76 65 72 20 are never
000140: 6D 6F 72 65 20 74 68 61 6E 20 31 32 37 20 6F 75 more than 127 ou
000150: 74 73 74 61 6E 64 69 6E 67 20 61 74 20 6F 6E 63 tstanding at onc
000160: 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 e..... Thi
000170: 73 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 s routine enable
000180: 73 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D s interrupts....
000190: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
0001A0: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 20 entries:....
0001B0: 20 20 20 4B 4C 20 41 44 44 20 46 41 53 54 20 54 KL ADD FAST T
0001C0: 49 43 4B 45 52 0D 0A 20 20 20 20 20 20 20 4B 4C ICKER.. KL
0001D0: 20 44 45 4C 20 54 49 43 4B 45 52 0D 0A 20 20 20 DEL TICKER..
0001E0: 20 20 20 20 4B 4C 20 49 4E 49 54 20 45 56 45 4E KL INIT EVEN
0001F0: 54 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D T...... AM
Size : 512 (Real : 512)
000000: 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 STRAD CPC464/664
000010: 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 /6128 FIRMWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 page 15
000040: 2E 31 39 37 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A .197............
000050: 0D 0A 20 20 20 20 20 20 20 31 36 34 3A 20 4B 4C .. 164: KL
000060: 20 44 45 4C 20 54 49 43 4B 45 52 20 20 20 20 20 DEL TICKER
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 20 20 20 20 20 23 42 43 45 43 0D #BCEC.
0000A0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6D 6F ..... Remo
0000B0: 76 65 20 62 6C 6F 63 6B 20 66 72 6F 6D 20 74 68 ve block from th
0000C0: 65 20 74 69 63 6B 20 6C 69 73 74 2E 0D 0A 0D 0A e tick list.....
0000D0: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
0000E0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 ...... If
0000F0: 61 20 67 69 76 65 6E 20 62 6C 6F 63 6B 20 69 73 a given block is
000100: 20 6F 6E 20 74 68 65 20 74 69 63 6B 20 6C 69 73 on the tick lis
000110: 74 20 69 74 20 69 73 20 72 65 6D 6F 76 65 64 2E t it is removed.
000120: 20 20 54 68 65 20 20 63 6F 6E 74 65 6E 74 73 20 The contents
000130: 20 6F 66 0D 0A 20 20 20 20 20 20 20 74 68 65 20 of.. the
000140: 62 6C 6F 63 6B 20 61 72 65 20 6E 6F 74 20 61 66 block are not af
000150: 66 65 63 74 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 fected.......
000160: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000170: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000180: 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 HL contains th
000190: 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 e address of the
0001A0: 20 74 69 63 6B 20 62 6C 6F 63 6B 2E 0D 0A 0D 0A tick block.....
0001B0: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
0001C0: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
0001D0: 20 20 20 20 20 20 49 66 20 74 68 65 20 74 69 63 If the tic
0001E0: 6B 20 62 6C 6F 63 6B 20 77 61 73 20 66 6F 75 6E k block was foun
0001F0: 64 20 6F 6E 20 74 68 65 20 74 69 63 6B 20 6C 69 d on the tick li
Size : 512 (Real : 512)
000000: 73 74 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 st:......
000010: 20 20 20 20 20 20 20 20 20 43 61 72 72 79 20 74 Carry t
000020: 72 75 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 rue...
000030: 20 20 20 20 20 20 44 45 20 63 6F 6E 74 61 69 6E DE contain
000040: 73 20 74 68 65 20 63 6F 75 6E 74 20 72 65 6D 61 s the count rema
000050: 69 6E 69 6E 67 20 62 65 66 6F 72 65 20 74 68 65 ining before the
000060: 20 6E 65 78 74 20 65 76 65 6E 74 2E 0D 0A 0D 0A next event.....
000070: 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 20 .. If the
000080: 74 69 63 6B 20 62 6C 6F 63 6B 20 77 61 73 20 6E tick block was n
000090: 6F 74 20 66 6F 75 6E 64 20 6F 6E 20 74 68 65 20 ot found on the
0000A0: 74 69 63 6B 20 6C 69 73 74 3A 0D 0A 0D 0A 0D 0A tick list:......
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 43 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 20 20 Carry false...
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 45 DE
0000E0: 20 63 6F 72 72 75 70 74 2E 0D 0A 0D 0A 0D 0A 20 corrupt.......
0000F0: 20 20 20 20 20 20 41 6C 77 61 79 73 3A 0D 0A 0D Always:...
000100: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000110: 20 20 20 41 2C 20 48 4C 20 61 6E 64 20 6F 74 68 A, HL and oth
000120: 65 72 20 66 6C 61 67 73 20 63 6F 72 72 75 70 74 er flags corrupt
000130: 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000140: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000150: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
000160: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ....... No
000170: 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 tes:.... T
000180: 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 20 74 he contents of t
000190: 68 65 20 62 6C 6F 63 6B 20 61 72 65 20 6E 6F 74 he block are not
0001A0: 20 61 66 66 65 63 74 65 64 20 62 79 20 20 72 65 affected by re
0001B0: 6D 6F 76 69 6E 67 20 20 69 74 20 20 66 72 6F 6D moving it from
0001C0: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 6C 69 the.. li
0001D0: 73 74 2E 20 49 6E 20 70 61 72 74 69 63 75 6C 61 st. In particula
0001E0: 72 20 74 68 65 20 63 6F 6E 74 69 6E 75 65 64 20 r the continued
0001F0: 70 72 6F 63 65 73 73 69 6E 67 20 6F 66 20 6F 75 processing of ou
Size : 512 (Real : 512)
000000: 74 73 74 61 6E 64 69 6E 67 20 65 76 65 6E 74 73 tstanding events
000010: 20 20 69 73 0D 0A 20 20 20 20 20 20 20 6E 6F 74 is.. not
000020: 20 61 66 66 65 63 74 65 64 2E 20 54 68 65 20 62 affected. The b
000030: 6C 6F 63 6B 20 63 6F 75 6C 64 20 62 65 20 70 75 lock could be pu
000040: 74 20 62 61 63 6B 20 6F 6E 20 74 68 65 20 6C 69 t back on the li
000050: 73 74 20 61 74 20 61 20 6C 61 74 65 72 20 20 64 st at a later d
000060: 61 74 65 0D 0A 20 20 20 20 20 20 20 61 6E 64 20 ate.. and
000070: 69 74 20 63 6F 75 6C 64 20 63 6F 6E 74 69 6E 75 it could continu
000080: 65 20 63 6F 75 6E 74 69 6E 67 20 77 68 65 72 65 e counting where
000090: 20 69 74 20 6C 65 66 74 20 6F 66 66 2E 0D 0A 0D it left off....
0000A0: 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 . This rou
0000B0: 74 69 6E 65 20 65 6E 61 62 6C 65 73 20 69 6E 74 tine enables int
0000C0: 65 72 72 75 70 74 73 2E 0D 0A 0D 0A 20 20 20 20 errupts.....
0000D0: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
0000E0: 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C es:.... KL
0000F0: 20 41 44 44 20 54 49 43 4B 45 52 0D 0A 20 20 20 ADD TICKER..
000100: 20 20 20 20 4B 4C 20 44 45 4C 20 46 41 53 54 20 KL DEL FAST
000110: 54 49 43 4B 45 52 0D 0A 0D 0A 0D 0A 0D 0A 20 20 TICKER........
000120: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000130: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000140: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 70 61 67 65 20 31 35 2E 31 39 38 0D 0A 0D 0A 0D page 15.198.....
000170: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000180: 31 36 35 3A 20 4B 4C 20 49 4E 49 54 20 45 56 45 165: KL INIT EVE
000190: 4E 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 NT
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 23 42 43 45 46 0D 0A 0D 0A 20 20 20 20 20 20 #BCEF....
0001D0: 20 49 6E 69 74 69 61 6C 69 7A 65 20 61 6E 20 65 Initialize an e
0001E0: 76 65 6E 74 20 62 6C 6F 63 6B 2E 0D 0A 0D 0A 20 vent block.....
0001F0: 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D Action:...
Size : 512 (Real : 512)
000000: 0A 20 20 20 20 20 20 20 49 6E 69 74 69 61 6C 69 . Initiali
000010: 7A 65 20 61 6C 6C 20 65 6E 74 72 69 65 73 20 69 ze all entries i
000020: 6E 20 61 6E 20 65 76 65 6E 74 20 62 6C 6F 63 6B n an event block
000030: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 ..... Entr
000040: 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D y conditions:...
000050: 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 . HL conta
000060: 69 6E 73 20 74 68 65 20 61 64 64 72 65 73 73 20 ins the address
000070: 6F 66 20 74 68 65 20 65 76 65 6E 74 20 62 6C 6F of the event blo
000080: 63 6B 2E 0D 0A 20 20 20 20 20 20 20 42 20 63 6F ck... B co
000090: 6E 74 61 69 6E 73 20 74 68 65 20 65 76 65 6E 74 ntains the event
0000A0: 20 63 6C 61 73 73 2E 0D 0A 20 20 20 20 20 20 20 class...
0000B0: 43 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 C contains the R
0000C0: 4F 4D 20 73 65 6C 65 63 74 20 61 64 64 72 65 73 OM select addres
0000D0: 73 20 6F 66 20 74 68 65 20 65 76 65 6E 74 20 72 s of the event r
0000E0: 6F 75 74 69 6E 65 2E 0D 0A 20 20 20 20 20 20 20 outine...
0000F0: 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 DE contains the
000100: 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 20 65 address of the e
000110: 76 65 6E 74 20 72 6F 75 74 69 6E 65 2E 0D 0A 0D vent routine....
000120: 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E . Exit con
000130: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 ditions:....
000140: 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 HL contains t
000150: 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 he address of th
000160: 65 20 65 76 65 6E 74 20 62 6C 6F 63 6B 20 2B 20 e event block +
000170: 37 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C 6C 7..... All
000180: 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 other registers
000190: 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 preserved.....
0001A0: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
0001B0: 20 20 20 20 20 20 20 54 68 65 20 65 76 65 6E 74 The event
0001C0: 20 62 6C 6F 63 6B 20 69 73 20 37 20 62 79 74 65 block is 7 byte
0001D0: 73 20 6C 6F 6E 67 20 61 6E 64 20 6D 75 73 74 20 s long and must
0001E0: 6C 69 65 20 69 6E 20 20 74 68 65 20 20 63 65 6E lie in the cen
0001F0: 74 72 61 6C 20 20 33 32 4B 20 20 6F 66 0D 0A 20 tral 32K of..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 52 41 4D 2E 20 54 68 65 20 6C RAM. The l
000010: 61 79 6F 75 74 20 6F 66 20 61 6E 20 65 76 65 6E ayout of an even
000020: 74 20 62 6C 6F 63 6B 20 69 73 20 20 64 65 73 63 t block is desc
000030: 72 69 62 65 64 20 20 69 6E 20 20 41 70 70 65 6E ribed in Appen
000040: 64 69 78 20 20 58 2E 20 20 53 65 65 0D 0A 20 20 dix X. See..
000050: 20 20 20 20 20 73 65 63 74 69 6F 6E 20 31 32 20 section 12
000060: 66 6F 72 20 61 20 67 65 6E 65 72 61 6C 20 64 69 for a general di
000070: 73 63 75 73 73 69 6F 6E 20 6F 66 20 65 76 65 6E scussion of even
000080: 74 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ts..... Th
000090: 65 20 52 4F 4D 20 73 65 6C 65 63 74 20 61 6E 64 e ROM select and
0000A0: 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 20 address of the
0000B0: 72 6F 75 74 69 6E 65 20 61 72 65 20 74 68 65 20 routine are the
0000C0: 27 66 61 72 20 61 64 64 72 65 73 73 27 20 6F 66 'far address' of
0000D0: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 65 76 65 the.. eve
0000E0: 6E 74 20 72 6F 75 74 69 6E 65 20 28 73 65 65 20 nt routine (see
0000F0: 73 65 63 74 69 6F 6E 20 32 29 2E 0D 0A 0D 0A 0D section 2)......
000100: 0A 20 20 20 20 20 20 20 54 68 65 20 65 76 65 6E . The even
000110: 74 20 63 6C 61 73 73 20 69 73 20 62 69 74 20 73 t class is bit s
000120: 69 67 6E 69 66 69 63 61 6E 74 20 61 73 20 66 6F ignificant as fo
000130: 6C 6C 6F 77 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 llows:....
000140: 20 20 20 20 20 20 20 20 20 20 42 69 74 20 30 3A Bit 0:
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4E 65 Ne
000160: 61 72 20 61 64 64 72 65 73 73 2E 0D 0A 20 20 20 ar address...
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 74 Bit
000180: 73 20 31 2E 2E 34 3A 20 20 20 20 20 20 20 20 20 s 1..4:
000190: 20 53 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 Synchronous eve
0001A0: 6E 74 20 70 72 69 6F 72 69 74 79 2E 0D 0A 20 20 nt priority...
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 69 Bi
0001C0: 74 20 35 3A 20 20 20 20 20 20 20 20 20 20 20 20 t 5:
0001D0: 20 20 4D 75 73 74 20 62 65 20 7A 65 72 6F 2E 0D Must be zero..
0001E0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0001F0: 20 42 69 74 20 36 3A 20 20 20 20 20 20 20 20 20 Bit 6:
Size : 512 (Real : 512)
000000: 20 20 20 20 20 45 78 70 72 65 73 73 20 65 76 65 Express eve
000010: 6E 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 nt...
000020: 20 20 20 20 20 42 69 74 20 37 3A 20 20 20 20 20 Bit 7:
000030: 20 20 20 20 20 20 20 20 20 41 73 79 6E 63 68 72 Asynchr
000040: 6F 6E 6F 75 73 20 65 76 65 6E 74 2E 0D 0A 0D 0A onous event.....
000050: 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 20 .. If the
000060: 61 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 asynchronous eve
000070: 6E 74 20 62 69 74 20 69 73 20 73 65 74 20 74 68 nt bit is set th
000080: 65 6E 20 74 68 65 20 65 76 65 6E 74 20 69 73 20 en the event is
000090: 61 6E 20 61 73 79 6E 63 68 72 6F 6E 6F 75 73 0D an asynchronous.
0000A0: 0A 20 20 20 20 20 20 20 65 76 65 6E 74 2C 20 6F . event, o
0000B0: 74 68 65 72 77 69 73 65 20 69 74 20 69 73 20 61 therwise it is a
0000C0: 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 synchronous eve
0000D0: 6E 74 2E 20 41 73 79 6E 63 68 72 6F 6E 6F 75 73 nt. Asynchronous
0000E0: 20 65 76 65 6E 74 73 20 64 6F 20 6E 6F 74 0D 0A events do not..
0000F0: 20 20 20 20 20 20 20 68 61 76 65 20 70 72 69 6F have prio
000100: 72 69 74 69 65 73 20 61 6E 64 20 73 6F 20 74 68 rities and so th
000110: 65 20 70 72 69 6F 72 69 74 79 20 66 69 65 6C 64 e priority field
000120: 20 69 73 20 69 67 6E 6F 72 65 64 2E 0D 0A 0D 0A is ignored.....
000130: 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 20 .. If the
000140: 65 78 70 72 65 73 73 20 65 76 65 6E 74 20 62 69 express event bi
000150: 74 20 69 73 20 73 65 74 20 74 68 65 6E 20 74 68 t is set then th
000160: 65 20 65 76 65 6E 74 20 69 73 20 20 61 6E 20 20 e event is an
000170: 65 78 70 72 65 73 73 20 20 65 76 65 6E 74 2E 0D express event..
000180: 0A 20 20 20 20 20 20 20 54 68 65 20 6D 65 61 6E . The mean
000190: 69 6E 67 20 6F 66 20 74 68 69 73 20 64 65 70 65 ing of this depe
0001A0: 6E 64 73 20 6F 6E 20 77 68 65 74 68 65 72 20 74 nds on whether t
0001B0: 68 65 20 20 65 76 65 6E 74 20 20 69 73 20 20 73 he event is s
0001C0: 79 6E 63 68 72 6F 6E 6F 75 73 20 20 6F 72 0D 0A ynchronous or..
0001D0: 20 20 20 20 20 20 20 61 73 79 6E 63 68 72 6F 6E asynchron
0001E0: 6F 75 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ous.......
0001F0: 20 41 6C 6C 20 65 78 70 72 65 73 73 20 73 79 6E All express syn
Size : 512 (Real : 512)
000000: 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 73 20 chronous events
000010: 68 61 76 65 20 68 69 67 68 65 72 20 70 72 69 6F have higher prio
000020: 72 69 74 69 65 73 20 74 68 61 6E 20 61 6E 79 20 rities than any
000030: 20 6E 6F 72 6D 61 6C 0D 0A 20 20 20 20 20 20 20 normal..
000040: 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E synchronous even
000050: 74 2E 20 54 68 65 20 70 72 69 6F 72 69 74 79 20 t. The priority
000060: 6F 66 20 61 20 73 79 6E 63 68 72 6F 6E 6F 75 73 of a synchronous
000070: 20 65 76 65 6E 74 20 69 73 20 20 65 6E 63 6F 64 event is encod
000080: 65 64 20 20 69 6E 0D 0A 20 20 20 20 20 20 20 62 ed in.. b
000090: 69 74 73 20 31 2E 2E 34 20 6F 66 20 20 74 68 65 its 1..4 of the
0000A0: 20 20 63 6C 61 73 73 2C 20 20 74 68 65 20 20 68 class, the h
0000B0: 69 67 68 65 72 20 20 74 68 65 20 20 6E 75 6D 62 igher the numb
0000C0: 65 72 20 20 74 68 65 20 20 67 72 65 61 74 65 72 er the greater
0000D0: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 70 72 the.. pr
0000E0: 69 6F 72 69 74 79 2E 20 4E 6F 20 65 76 65 6E 74 iority. No event
0000F0: 20 6D 61 79 20 68 61 76 65 20 20 70 72 69 6F 72 may have prior
000100: 69 74 79 20 20 30 2E 20 20 54 68 65 20 20 70 72 ity 0. The pr
000110: 6F 63 65 73 73 69 6E 67 20 20 6F 66 20 20 6E 6F ocessing of no
000120: 72 6D 61 6C 0D 0A 20 20 20 20 20 20 20 73 79 6E rmal.. syn
000130: 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 73 20 chronous events
000140: 6D 61 79 20 62 65 20 64 69 73 61 62 6C 65 64 20 may be disabled
000150: 20 28 62 79 20 20 63 61 6C 6C 69 6E 67 20 20 4B (by calling K
000160: 4C 20 20 45 56 45 4E 54 20 20 44 49 53 41 42 4C L EVENT DISABL
000170: 45 29 2C 0D 0A 20 20 20 20 20 20 20 77 68 69 6C E),.. whil
000180: 65 20 74 68 61 74 20 69 66 20 65 78 70 72 65 73 e that if expres
000190: 73 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 s synchronous ev
0001A0: 65 6E 74 73 20 6D 61 79 20 6E 6F 74 2E 0D 0A 0D ents may not....
0001B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 ..... AMST
0001C0: 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 RAD CPC464/664/6
0001D0: 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 128 FIRMWARE
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 31 page 15.1
Size : 512 (Real : 512)
000000: 39 39 0D 0A 1A 50 2D 31 35 20 24 24 24 FF 00 FF 99...P-15 $$$...
000010: 20 20 20 54 68 65 20 66 69 72 73 74 20 62 79 74 The first byt
000020: 65 20 6F 66 20 74 68 65 20 74 6F 6E 65 20 64 61 e of the tone da
000030: 74 61 20 62 6C 6F 63 6B 20 28 6D 61 73 6B 65 64 ta block (masked
000040: 20 77 69 74 68 20 23 37 46 29 20 73 70 65 63 69 with #7F) speci
000050: 66 69 65 73 20 20 74 68 65 0D 0A 20 20 20 20 20 fies the..
000060: 20 20 6E 75 6D 62 65 72 20 6F 66 20 73 65 63 74 number of sect
000070: 69 6F 6E 73 20 75 73 65 64 20 69 6E 20 74 68 65 ions used in the
000080: 65 64 20 20 69 6E 0D 0A 20 20 20 20 20 20 20 62 ed in.. b
000090: 69 74 73 20 31 2E 2E 34 20 6F 66 20 20 74 68 65 its 1..4 of the
0000A0: 20 20 63 6C 61 73 73 2C 20 20 74 68 65 20 20 68 class, the h
0000B0: 69 67 68 65 72 20 20 74 68 65 20 20 6E 75 6D 62 igher the numb
0000C0: 65 72 20 20 74 68 65 20 20 67 72 65 61 74 65 72 er the greater
0000D0: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 70 72 the.. pr
0000E0: 69 6F 72 69 74 79 2E 20 4E 6F 20 65 76 65 6E 74 iority. No event
0000F0: 20 6D 61 79 20 68 61 76 65 20 20 70 72 69 6F 72 may have prior
000100: 69 74 79 20 20 30 2E 20 20 54 68 65 20 20 70 72 ity 0. The pr
000110: 6F 63 65 73 73 69 6E 67 20 20 6F 66 20 20 6E 6F ocessing of no
000120: 72 6D 61 6C 0D 0A 20 20 20 20 20 20 20 73 79 6E rmal.. syn
000130: 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 73 20 chronous events
000140: 6D 61 79 20 62 65 20 64 69 73 61 62 6C 65 64 20 may be disabled
000150: 20 28 62 79 20 20 63 61 6C 6C 69 6E 67 20 20 4B (by calling K
000160: 4C 20 20 45 56 45 4E 54 20 20 44 49 53 41 42 4C L EVENT DISABL
000170: 45 29 2C 0D 0A 20 20 20 20 20 20 20 77 68 69 6C E),.. whil
000180: 65 20 74 68 61 74 20 69 66 20 65 78 70 72 65 73 e that if expres
000190: 73 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 s synchronous ev
0001A0: 65 6E 74 73 20 6D 61 79 20 6E 6F 74 2E 0D 0A 0D ents may not....
0001B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 ..... AMST
0001C0: 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 RAD CPC464/664/6
0001D0: 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 128 FIRMWARE
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 31 page 15.1
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 41 6E 20 65 78 70 72 65 73 73 20 61 73 An express as
000020: 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 ynchronous event
000030: 20 20 77 69 6C 6C 20 20 68 61 76 65 20 20 69 74 will have it
000040: 73 20 20 65 76 65 6E 74 20 20 72 6F 75 74 69 6E s event routin
000050: 65 20 20 63 61 6C 6C 65 64 0D 0A 20 20 20 20 20 e called..
000060: 20 20 64 69 72 65 63 74 6C 79 20 66 72 6F 6D 20 directly from
000070: 74 68 65 20 69 6E 74 65 72 72 75 70 74 20 20 70 the interrupt p
000080: 61 74 68 2E 20 20 41 20 20 6E 6F 72 6D 61 6C 20 ath. A normal
000090: 20 61 73 79 6E 63 68 72 6F 6E 6F 75 73 20 20 65 asynchronous e
0000A0: 76 65 6E 74 20 20 69 73 0D 0A 20 20 20 20 20 20 vent is..
0000B0: 20 70 72 6F 63 65 73 73 65 64 20 6A 75 73 74 20 processed just
0000C0: 62 65 66 6F 72 65 20 72 65 74 75 72 6E 69 6E 67 before returning
0000D0: 20 66 72 6F 6D 20 74 68 65 20 20 69 6E 74 65 72 from the inter
0000E0: 72 75 70 74 20 20 28 77 69 74 68 20 20 69 6E 74 rupt (with int
0000F0: 65 72 72 75 70 74 73 0D 0A 20 20 20 20 20 20 20 errupts..
000100: 65 6E 61 62 6C 65 64 29 2E 0D 0A 0D 0A 0D 0A 20 enabled).......
000110: 20 20 20 20 20 20 49 66 20 74 68 65 20 6E 65 61 If the nea
000120: 72 20 61 64 64 72 65 73 73 20 62 69 74 20 69 73 r address bit is
000130: 20 73 65 74 20 20 74 68 65 6E 20 20 74 68 65 20 set then the
000140: 20 65 76 65 6E 74 20 20 72 6F 75 74 69 6E 65 20 event routine
000150: 20 69 73 20 20 6C 6F 63 61 74 65 64 0D 0A 20 20 is located..
000160: 20 20 20 20 20 65 69 74 68 65 72 20 69 6E 20 74 either in t
000170: 68 65 20 6C 6F 77 65 72 20 52 4F 4D 20 6F 72 20 he lower ROM or
000180: 69 6E 20 74 68 65 20 63 65 6E 74 72 61 6C 20 33 in the central 3
000190: 32 4B 20 6F 66 20 52 41 4D 2E 20 54 68 65 20 20 2K of RAM. The
0001A0: 52 4F 4D 20 20 73 65 6C 65 63 74 0D 0A 20 20 20 ROM select..
0001B0: 20 20 20 20 61 64 64 72 65 73 73 20 69 73 20 69 address is i
0001C0: 67 6E 6F 72 65 64 20 61 6E 64 20 74 68 65 20 72 gnored and the r
0001D0: 6F 75 74 69 6E 65 20 69 73 20 20 63 61 6C 6C 65 outine is calle
0001E0: 64 20 20 64 69 72 65 63 74 6C 79 2C 20 20 72 61 d directly, ra
0001F0: 74 68 65 72 20 20 74 68 61 6E 0D 0A 20 20 20 20 ther than..
Size : 512 (Real : 512)
000000: 20 20 20 74 68 72 6F 75 67 68 20 74 68 65 20 46 through the F
000010: 41 52 20 43 41 4C 4C 20 6D 65 63 68 61 6E 69 73 AR CALL mechanis
000020: 6D 2C 20 74 68 75 73 20 20 72 65 64 75 63 69 6E m, thus reducin
000030: 67 20 20 74 68 65 20 20 65 76 65 6E 74 20 20 70 g the event p
000040: 72 6F 63 65 73 73 69 6E 67 0D 0A 20 20 20 20 20 rocessing..
000050: 20 20 6F 76 65 72 68 65 61 64 2E 20 57 68 65 72 overhead. Wher
000060: 65 20 70 6F 73 73 69 62 6C 65 2C 20 20 61 73 79 e possible, asy
000070: 6E 63 68 72 6F 6E 6F 75 73 20 20 65 76 65 6E 74 nchronous event
000080: 73 20 20 73 68 6F 75 6C 64 20 20 62 65 20 20 61 s should be a
000090: 74 20 20 27 6E 65 61 72 0D 0A 20 20 20 20 20 20 t 'near..
0000A0: 20 61 64 64 72 65 73 73 65 73 27 2E 20 45 78 70 addresses'. Exp
0000B0: 72 65 73 73 20 20 61 73 79 6E 63 68 72 6F 6E 6F ress asynchrono
0000C0: 75 73 20 20 65 76 65 6E 74 73 20 20 6D 75 73 74 us events must
0000D0: 20 20 61 6C 77 61 79 73 20 20 62 65 20 20 61 74 always be at
0000E0: 20 20 27 6E 65 61 72 0D 0A 20 20 20 20 20 20 20 'near..
0000F0: 61 64 64 72 65 73 73 65 73 27 2E 0D 0A 0D 0A 20 addresses'.....
000100: 20 20 20 20 20 20 45 76 65 6E 74 20 62 6C 6F 63 Event bloc
000110: 6B 73 20 61 70 70 65 61 72 20 69 6E 20 76 61 72 ks appear in var
000120: 69 6F 75 73 20 6F 74 68 65 72 20 62 6C 6F 63 6B ious other block
000130: 73 20 20 68 61 6E 64 6C 65 64 20 20 62 79 20 20 s handled by
000140: 74 68 65 20 20 4B 65 72 6E 65 6C 2C 0D 0A 20 20 the Kernel,..
000150: 20 20 20 20 20 69 6E 63 6C 75 64 69 6E 67 20 66 including f
000160: 72 61 6D 65 20 66 6C 79 62 61 63 6B 2C 20 66 61 rame flyback, fa
000170: 73 74 20 74 69 63 6B 65 72 20 61 6E 64 20 74 69 st ticker and ti
000180: 63 6B 20 62 6C 6F 63 6B 73 2E 20 54 68 69 73 20 ck blocks. This
000190: 72 6F 75 74 69 6E 65 20 20 69 73 0D 0A 20 20 20 routine is..
0001A0: 20 20 20 20 75 73 65 64 20 74 6F 20 69 6E 69 74 used to init
0001B0: 69 61 6C 69 7A 65 20 74 68 65 20 65 76 65 6E 74 ialize the event
0001C0: 20 62 6C 6F 63 6B 20 70 61 72 74 73 20 6F 66 20 block parts of
0001D0: 74 68 65 73 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 these.....
0001E0: 20 54 68 65 20 62 79 74 65 73 20 61 66 74 65 72 The bytes after
0001F0: 20 74 68 65 20 6C 61 73 74 20 62 79 74 65 20 6F the last byte o
Size : 512 (Real : 512)
000000: 66 20 74 68 65 20 65 76 65 6E 74 20 62 6C 6F 63 f the event bloc
000010: 6B 2C 20 65 76 65 6E 20 77 68 65 72 65 20 74 68 k, even where th
000020: 65 20 62 6C 6F 63 6B 0D 0A 20 20 20 20 20 20 20 e block..
000030: 66 6F 72 6D 73 20 70 61 72 74 20 6F 66 20 61 6E forms part of an
000040: 6F 74 68 65 72 20 62 6C 6F 63 6B 2C 20 61 72 65 other block, are
000050: 20 6E 6F 74 20 75 73 65 64 20 20 62 79 20 20 74 not used by t
000060: 68 65 20 20 4B 65 72 6E 65 6C 2E 20 20 57 68 65 he Kernel. Whe
000070: 6E 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 65 n the.. e
000080: 76 65 6E 74 20 72 6F 75 74 69 6E 65 20 69 73 20 vent routine is
000090: 63 61 6C 6C 65 64 20 74 68 65 20 61 64 64 72 65 called the addre
0000A0: 73 73 20 6F 66 20 74 68 65 20 62 6C 6F 63 6B 20 ss of the block
0000B0: 69 73 20 70 61 73 73 65 64 20 74 6F 20 20 69 74 is passed to it
0000C0: 2C 20 20 73 6F 0D 0A 20 20 20 20 20 20 20 74 68 , so.. th
0000D0: 65 20 75 73 65 72 20 6D 61 79 20 61 70 70 65 6E e user may appen
0000E0: 64 20 66 75 72 74 68 65 72 20 69 6E 66 6F 72 6D d further inform
0000F0: 61 74 69 6F 6E 20 61 62 6F 75 74 20 74 68 65 20 ation about the
000100: 65 76 65 6E 74 20 74 6F 20 74 68 65 20 20 62 6C event to the bl
000110: 6F 63 6B 2E 0D 0A 20 20 20 20 20 20 20 54 68 69 ock... Thi
000120: 73 20 61 6C 6C 6F 77 73 20 73 65 76 65 72 61 6C s allows several
000130: 20 73 69 6D 69 6C 61 72 20 65 76 65 6E 74 73 20 similar events
000140: 74 6F 20 73 68 61 72 65 20 74 68 65 20 20 73 61 to share the sa
000150: 6D 65 20 20 65 76 65 6E 74 20 20 72 6F 75 74 69 me event routi
000160: 6E 65 2C 0D 0A 20 20 20 20 20 20 20 65 61 63 68 ne,.. each
000170: 20 65 76 65 6E 74 20 68 61 76 69 6E 67 20 69 74 event having it
000180: 73 20 27 6F 77 6E 27 20 76 61 72 69 61 62 6C 65 s 'own' variable
000190: 73 20 61 70 70 65 6E 64 65 64 20 74 6F 20 69 74 s appended to it
0001A0: 73 20 65 76 65 6E 74 20 62 6C 6F 63 6B 2E 0D 0A s event block...
0001B0: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 65 76 65 .. The eve
0001C0: 6E 74 20 72 6F 75 74 69 6E 65 20 68 61 73 20 74 nt routine has t
0001D0: 68 65 20 66 6F 6C 6C 6F 77 69 6E 67 20 65 6E 74 he following ent
0001E0: 72 79 20 61 6E 64 20 65 78 69 74 20 63 6F 6E 64 ry and exit cond
0001F0: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
Size : 512 (Real : 512)
000000: 20 20 45 6E 74 72 79 3A 0D 0A 0D 0A 20 20 20 20 Entry:....
000010: 20 20 20 54 68 65 20 65 76 65 6E 74 20 72 6F 75 The event rou
000020: 74 69 6E 65 20 69 73 20 61 74 20 61 20 27 66 61 tine is at a 'fa
000030: 72 20 61 64 64 72 65 73 73 27 3A 0D 0A 0D 0A 20 r address':....
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 H
000050: 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 L contains the a
000060: 64 64 72 65 73 73 20 6F 66 20 62 79 74 65 20 35 ddress of byte 5
000070: 20 6F 66 20 74 68 65 20 65 76 65 6E 74 20 62 6C of the event bl
000080: 6F 63 6B 0D 0A 20 20 20 20 20 20 20 20 20 20 20 ock..
000090: 20 20 20 20 20 28 73 6F 20 61 6E 79 20 61 70 70 (so any app
0000A0: 65 6E 64 65 64 20 64 61 74 61 20 63 61 6E 20 73 ended data can s
0000B0: 74 61 72 74 20 61 74 20 61 64 64 72 65 73 73 20 tart at address
0000C0: 48 4C 20 2B 20 32 29 2E 0D 0A 0D 0A 20 20 20 20 HL + 2).....
0000D0: 20 20 20 49 66 20 74 68 65 20 65 76 65 6E 74 20 If the event
0000E0: 72 6F 75 74 69 6E 65 20 69 73 20 61 74 20 61 20 routine is at a
0000F0: 27 6E 65 61 72 20 61 64 64 72 65 73 73 27 3A 0D 'near address':.
000100: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000110: 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 DE contains t
000120: 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 62 79 he address of by
000130: 74 65 20 36 20 6F 66 20 74 68 65 20 65 76 65 6E te 6 of the even
000140: 74 20 62 6C 6F 63 6B 0D 0A 20 20 20 20 20 20 20 t block..
000150: 20 20 20 20 20 20 20 20 20 28 73 6F 20 61 6E 79 (so any
000160: 20 61 70 70 65 6E 64 65 64 20 64 61 74 61 20 63 appended data c
000170: 61 6E 20 73 74 61 72 74 20 61 74 20 61 64 64 72 an start at addr
000180: 65 73 73 20 44 45 20 2B 20 31 29 2E 0D 0A 0D 0A ess DE + 1).....
000190: 20 20 20 20 20 20 20 45 78 69 74 3A 0D 0A 0D 0A Exit:....
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 41 46 2C 20 42 43 2C 20 44 45 20 61 6E 64 20 48 AF, BC, DE and H
0001C0: 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 L corrupt...
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 41 6C 6C 20 All
0001E0: 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 other registers
0001F0: 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 preserved.....
Size : 512 (Real : 512)
000000: 20 20 20 20 20 54 68 65 20 65 76 65 6E 74 20 72 The event r
000010: 6F 75 74 69 6E 65 20 6D 61 79 20 75 73 65 20 74 outine may use t
000020: 68 65 20 49 58 20 61 6E 64 20 49 59 20 72 65 67 he IX and IY reg
000030: 69 73 74 65 72 73 20 20 62 75 74 20 20 6D 75 73 isters but mus
000040: 74 20 20 70 72 65 73 65 72 76 65 0D 0A 20 20 20 t preserve..
000050: 20 20 20 20 74 68 65 6D 2E 20 49 74 20 6D 61 79 them. It may
000060: 20 6E 6F 74 20 75 73 65 20 74 68 65 20 73 65 63 not use the sec
000070: 6F 6E 64 20 20 72 65 67 69 73 74 65 72 20 20 73 ond register s
000080: 65 74 2E 20 20 45 78 70 72 65 73 73 20 20 61 73 et. Express as
000090: 79 6E 63 68 72 6F 6E 6F 75 73 0D 0A 20 20 20 20 ynchronous..
0000A0: 20 20 20 65 76 65 6E 74 73 20 6D 61 79 20 6E 6F events may no
0000B0: 74 20 65 6E 61 62 6C 65 20 69 6E 74 65 72 72 75 t enable interru
0000C0: 70 74 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4B pts..... K
0000D0: 4C 20 49 4E 49 54 20 45 56 45 4E 54 20 65 6E 61 L INIT EVENT ena
0000E0: 62 6C 65 73 20 69 6E 74 65 72 72 75 70 74 73 2E bles interrupts.
0000F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 .... Relat
000100: 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 20 20 20 ed entries:..
000110: 20 20 20 20 4B 4C 20 44 45 4C 20 53 59 4E 43 48 KL DEL SYNCH
000120: 52 4F 4E 4F 55 53 0D 0A 20 20 20 20 20 20 20 4B RONOUS.. K
000130: 4C 20 44 49 53 41 52 4D 20 45 56 45 4E 54 0D 0A L DISARM EVENT..
000140: 20 20 20 20 20 20 20 4B 4C 20 45 56 45 4E 54 0D KL EVENT.
000150: 0A 20 20 20 20 20 20 20 4B 4C 20 4E 45 57 20 46 . KL NEW F
000160: 41 53 54 20 54 49 43 4B 45 52 0D 0A 20 20 20 20 AST TICKER..
000170: 20 20 20 4B 4C 20 4E 45 57 20 46 52 41 4D 45 20 KL NEW FRAME
000180: 46 4C 59 0D 0A 20 20 20 20 20 20 20 4B 4C 20 4E FLY.. KL N
000190: 45 57 20 54 49 43 4B 45 52 0D 0A 20 20 20 20 20 EW TICKER..
0001A0: 20 20 4B 4C 20 53 59 4E 43 20 52 45 53 45 54 0D KL SYNC RESET.
0001B0: 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 ... AMSTRA
0001C0: 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 D CPC464/664/612
0001D0: 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 8 FIRMWARE
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 30 30 page 15.200
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000010: 20 20 20 20 20 31 36 36 3A 20 4B 4C 20 45 56 45 166: KL EVE
000020: 4E 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 NT
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 20 20 23 42 43 46 32 0D 0A 0D 0A 20 #BCF2....
000060: 20 20 20 20 20 20 27 4B 69 63 6B 27 20 61 6E 20 'Kick' an
000070: 65 76 65 6E 74 20 62 6C 6F 63 6B 2E 0D 0A 0D 0A event block.....
000080: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
000090: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 65 .... The e
0000A0: 76 65 6E 74 20 6D 65 63 68 61 6E 69 73 6D 20 61 vent mechanism a
0000B0: 72 72 61 6E 67 65 73 20 20 74 68 61 74 20 20 61 rranges that a
0000C0: 6E 20 20 65 76 65 6E 74 20 20 72 6F 75 74 69 6E n event routin
0000D0: 65 20 20 62 65 20 20 63 61 6C 6C 65 64 20 20 69 e be called i
0000E0: 6E 0D 0A 20 20 20 20 20 20 20 72 65 73 70 6F 6E n.. respon
0000F0: 73 65 20 74 6F 20 65 61 63 68 20 27 6B 69 63 6B se to each 'kick
000100: 27 20 6F 66 20 61 6E 20 20 65 76 65 6E 74 20 20 ' of an event
000110: 62 6C 6F 63 6B 2E 20 20 4B 4C 20 20 45 56 45 4E block. KL EVEN
000120: 54 20 20 70 65 72 66 6F 72 6D 73 20 20 74 68 65 T performs the
000130: 0D 0A 20 20 20 20 20 20 20 27 6B 69 63 6B 27 2E .. 'kick'.
000140: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 .... Entry
000150: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000160: 20 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 HL contai
000170: 6E 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6F ns the address o
000180: 66 20 74 68 65 20 65 76 65 6E 74 20 62 6C 6F 63 f the event bloc
000190: 6B 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 k..... Exi
0001A0: 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D t conditions:...
0001B0: 0A 20 20 20 20 20 20 20 41 46 2C 20 42 43 2C 20 . AF, BC,
0001C0: 44 45 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 DE and HL corrup
0001D0: 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F t... All o
0001E0: 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 ther registers p
0001F0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 reserved.....
Size : 512 (Real : 512)
000000: 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 Notes:....
000010: 20 20 20 20 20 55 6E 6C 69 6B 65 20 74 68 65 20 Unlike the
000020: 76 61 73 74 20 6D 61 6A 6F 72 69 74 79 20 6F 66 vast majority of
000030: 20 4B 65 72 6E 65 6C 20 72 6F 75 74 69 6E 65 73 Kernel routines
000040: 20 74 68 69 73 20 72 6F 75 74 69 6E 65 20 6D 61 this routine ma
000050: 79 20 62 65 20 63 61 6C 6C 65 64 0D 0A 20 20 20 y be called..
000060: 20 20 20 20 66 72 6F 6D 20 74 68 65 20 69 6E 74 from the int
000070: 65 72 72 75 70 74 20 70 61 74 68 2E 20 42 65 63 errupt path. Bec
000080: 61 75 73 65 20 74 68 65 20 4C 4F 57 20 4A 55 4D ause the LOW JUM
000090: 50 20 69 6E 73 74 72 75 63 74 69 6F 6E 20 69 6E P instruction in
0000A0: 20 74 68 65 20 20 6D 61 69 6E 0D 0A 20 20 20 20 the main..
0000B0: 20 20 20 66 69 72 6D 77 61 72 65 20 6A 75 6D 70 firmware jump
0000C0: 62 6C 6F 63 6B 20 65 6E 61 62 6C 65 73 20 69 6E block enables in
0000D0: 74 65 72 72 75 70 74 73 20 74 68 65 20 75 73 65 terrupts the use
0000E0: 72 20 6D 61 79 20 20 70 69 63 6B 20 20 74 68 65 r may pick the
0000F0: 20 20 61 64 64 72 65 73 73 0D 0A 20 20 20 20 20 address..
000100: 20 20 70 61 72 74 20 6F 66 20 74 68 65 20 27 6C part of the 'l
000110: 6F 77 20 61 64 64 72 65 73 73 27 20 6F 75 74 20 ow address' out
000120: 6F 66 20 74 68 65 20 6A 75 6D 70 62 6C 6F 63 6B of the jumpblock
000130: 20 61 6E 64 20 6D 61 73 6B 20 20 6F 66 66 20 20 and mask off
000140: 74 68 65 20 20 74 6F 70 0D 0A 20 20 20 20 20 20 the top..
000150: 20 74 77 6F 20 62 69 74 73 20 74 6F 20 65 78 74 two bits to ext
000160: 72 61 63 74 20 74 68 65 20 61 64 64 72 65 73 73 ract the address
000170: 20 69 6E 20 74 68 65 20 6C 6F 77 65 72 20 20 52 in the lower R
000180: 4F 4D 20 20 6F 66 20 20 4B 4C 20 20 45 56 45 4E OM of KL EVEN
000190: 54 2E 20 20 54 68 65 0D 0A 20 20 20 20 20 20 20 T. The..
0001A0: 66 6F 6C 6C 6F 77 69 6E 67 20 63 6F 64 65 20 64 following code d
0001B0: 6F 65 73 20 74 68 69 73 3A 0D 0A 0D 0A 20 20 20 oes this:....
0001C0: 20 20 20 20 4C 44 20 44 45 2C 28 4B 4C 5F 45 56 LD DE,(KL_EV
0001D0: 45 4E 54 2B 31 29 20 20 20 20 20 20 20 20 20 3B ENT+1) ;
0001E0: 65 78 74 72 61 63 74 20 61 64 64 72 65 73 73 20 extract address
0001F0: 6F 66 20 4C 4F 57 20 4A 55 4D 50 0D 0A 20 20 20 of LOW JUMP..
Size : 512 (Real : 512)
000000: 20 20 20 20 52 45 53 20 37 2C 44 20 20 20 20 20 RES 7,D
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3B ;
000020: 72 65 6D 6F 76 65 20 75 70 70 65 72 20 52 4F 4D remove upper ROM
000030: 20 73 74 61 74 65 20 66 72 6F 6D 20 27 6C 6F 77 state from 'low
000040: 20 61 64 64 72 65 73 73 27 0D 0A 20 20 20 20 20 address'..
000050: 20 20 52 45 53 20 36 2C 44 20 20 20 20 20 20 20 RES 6,D
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 72 65 ;re
000070: 6D 6F 76 65 20 6C 6F 77 65 72 20 52 4F 4D 20 73 move lower ROM s
000080: 74 61 74 65 20 66 72 6F 6D 20 27 6C 6F 77 20 61 tate from 'low a
000090: 64 64 72 65 73 73 27 0D 0A 20 20 20 20 20 20 20 ddress'..
0000A0: 43 41 4C 4C 20 50 43 44 45 5F 49 4E 53 54 52 55 CALL PCDE_INSTRU
0000B0: 43 54 49 4F 4E 20 20 20 20 20 20 3B 43 41 4C 4C CTION ;CALL
0000C0: 20 4B 4C 20 45 56 45 4E 54 0D 0A 0D 0A 20 20 20 KL EVENT....
0000D0: 20 20 20 20 28 49 66 20 74 68 65 20 75 73 65 72 (If the user
0000E0: 20 69 73 20 67 6F 69 6E 67 20 74 6F 20 20 70 65 is going to pe
0000F0: 72 66 6F 72 6D 20 20 74 68 69 73 20 20 6F 70 65 rform this ope
000100: 72 61 74 69 6F 6E 20 20 72 65 70 65 61 74 65 64 ration repeated
000110: 6C 79 20 20 69 74 20 20 69 73 0D 0A 20 20 20 20 ly it is..
000120: 20 20 20 72 65 63 6F 6D 6D 65 6E 64 65 64 20 74 recommended t
000130: 68 61 74 20 74 68 65 20 61 64 64 72 65 73 73 20 hat the address
000140: 73 68 6F 75 6C 64 20 62 65 20 65 78 74 72 61 63 should be extrac
000150: 74 65 64 20 6F 6E 63 65 20 20 61 6E 64 20 20 73 ted once and s
000160: 68 6F 75 6C 64 20 20 62 65 0D 0A 20 20 20 20 20 hould be..
000170: 20 20 73 74 6F 72 65 64 20 73 6F 6D 65 77 68 65 stored somewhe
000180: 72 65 29 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 re)..... T
000190: 68 65 20 65 66 66 65 63 74 20 6F 66 20 74 68 65 he effect of the
0001A0: 20 27 6B 69 63 6B 27 20 64 65 70 65 6E 64 73 20 'kick' depends
0001B0: 6F 6E 20 20 74 68 65 20 20 65 76 65 6E 74 20 20 on the event
0001C0: 63 6F 75 6E 74 20 20 69 6E 20 20 74 68 65 20 20 count in the
0001D0: 65 76 65 6E 74 0D 0A 20 20 20 20 20 20 20 62 6C event.. bl
0001E0: 6F 63 6B 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 ock:....
0001F0: 20 20 20 43 6F 75 6E 74 20 3C 20 30 20 3A 20 20 Count < 0 :
Size : 512 (Real : 512)
000000: 54 68 65 20 65 76 65 6E 74 20 69 73 20 64 69 73 The event is dis
000010: 61 72 6D 65 64 2C 20 61 6E 64 20 6B 69 63 6B 69 armed, and kicki
000020: 6E 67 20 69 74 20 68 61 73 20 6E 6F 20 65 66 66 ng it has no eff
000030: 65 63 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 20 ect.....
000040: 20 20 20 43 6F 75 6E 74 20 3E 20 30 20 3A 20 20 Count > 0 :
000050: 54 68 65 72 65 20 61 72 65 20 6F 74 68 65 72 20 There are other
000060: 6B 69 63 6B 73 20 6F 75 74 73 74 61 6E 64 69 6E kicks outstandin
000070: 67 20 61 6E 64 20 20 74 68 65 20 20 65 76 65 6E g and the even
000080: 74 20 20 69 73 0D 0A 20 20 20 20 20 20 20 20 20 t is..
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 b
0000A0: 65 69 6E 67 20 70 72 6F 63 65 73 73 65 64 2E 20 eing processed.
0000B0: 20 54 68 69 73 20 20 6B 69 63 6B 20 20 73 69 6D This kick sim
0000C0: 70 6C 79 20 20 69 6E 63 72 65 6D 65 6E 74 73 20 ply increments
0000D0: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 20 20 20 the..
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 63 6F co
0000F0: 75 6E 74 20 28 75 6E 6C 65 73 73 20 69 74 20 68 unt (unless it h
000100: 61 73 20 61 6C 72 65 61 64 79 20 72 65 61 63 68 as already reach
000110: 65 64 20 74 68 65 20 20 6D 61 78 69 6D 75 6D 20 ed the maximum
000120: 20 6F 66 0D 0A 20 20 20 20 20 20 20 20 20 20 20 of..
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 31 32 37 127
000140: 29 2E 20 4F 6E 63 65 20 65 76 65 6E 74 20 70 72 ). Once event pr
000150: 6F 63 65 73 73 69 6E 67 20 68 61 73 20 20 62 65 ocessing has be
000160: 67 75 6E 20 20 69 74 20 20 63 6F 6E 74 69 6E 75 gun it continu
000170: 65 73 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 es..
000180: 20 20 20 20 20 20 20 20 20 20 20 20 75 6E 74 69 unti
000190: 6C 20 20 74 68 65 20 20 63 6F 75 6E 74 20 20 62 l the count b
0001A0: 65 63 6F 6D 65 73 20 20 7A 65 72 6F 20 20 6F 72 ecomes zero or
0001B0: 20 20 74 68 65 20 20 65 76 65 6E 74 20 20 20 69 the event i
0001C0: 73 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 s..
0001D0: 20 20 20 20 20 20 20 20 20 20 20 64 69 73 61 72 disar
0001E0: 6D 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 20 med.....
0001F0: 20 20 20 43 6F 75 6E 74 20 3D 20 30 20 3A 20 20 Count = 0 :
Size : 512 (Real : 512)
000000: 54 68 65 20 65 76 65 6E 74 20 20 69 73 20 20 61 The event is a
000010: 72 6D 65 64 20 20 62 75 74 20 20 65 76 65 6E 74 rmed but event
000020: 20 20 70 72 6F 63 65 73 73 69 6E 67 20 20 69 73 processing is
000030: 20 20 6E 6F 74 0D 0A 20 20 20 20 20 20 20 20 20 not..
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 61 a
000050: 63 74 69 76 65 2E 0D 0A 20 20 20 20 20 20 20 20 ctive...
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 54 68 65 20 20 63 6F 75 6E 74 20 20 69 73 20 20 The count is
000080: 69 6E 63 72 65 6D 65 6E 74 65 64 20 20 61 6E 64 incremented and
000090: 20 20 20 65 76 65 6E 74 20 20 20 70 72 6F 63 65 event proce
0000A0: 73 73 69 6E 67 0D 0A 20 20 20 20 20 20 20 20 20 ssing..
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 i
0000C0: 6E 69 74 69 61 74 65 64 2E 0D 0A 0D 0A 0D 0A 0D nitiated........
0000D0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 ..... AMST
0000E0: 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 RAD CPC464/664/6
0000F0: 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 128 FIRMWARE
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 page 15.2
000120: 30 31 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 01..............
000130: 20 20 20 20 20 20 20 48 6F 77 20 65 76 65 6E 74 How event
000140: 20 70 72 6F 63 65 73 73 69 6E 67 20 69 73 20 69 processing is i
000150: 6E 69 74 69 61 74 65 64 20 64 65 70 65 6E 64 73 nitiated depends
000160: 20 6F 6E 20 74 68 65 20 65 76 65 6E 74 20 63 6C on the event cl
000170: 61 73 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 53 ass..... S
000180: 79 6E 63 68 72 6F 6E 6F 75 73 20 45 76 65 6E 74 ynchronous Event
000190: 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 s.....
0001A0: 20 53 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 Synchronous eve
0001B0: 6E 74 73 20 61 72 65 20 61 64 64 65 64 20 74 6F nts are added to
0001C0: 20 74 68 65 20 20 73 79 6E 63 68 72 6F 6E 6F 75 the synchronou
0001D0: 73 20 20 65 76 65 6E 74 20 20 71 75 65 75 65 20 s event queue
0001E0: 20 69 6E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 in..
0001F0: 70 72 69 6F 72 69 74 79 20 6F 72 64 65 72 2E 20 priority order.
Size : 512 (Real : 512)
000000: 49 74 20 69 73 20 74 68 65 20 72 65 73 70 6F 6E It is the respon
000010: 73 69 62 69 6C 69 74 79 20 6F 66 20 74 68 65 20 sibility of the
000020: 66 6F 72 65 67 72 6F 75 6E 64 20 70 72 6F 67 72 foreground progr
000030: 61 6D 0D 0A 20 20 20 20 20 20 20 20 20 20 20 74 am.. t
000040: 6F 20 70 72 6F 63 65 73 73 20 74 68 65 20 73 79 o process the sy
000050: 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 20 nchronous event
000060: 71 75 65 75 65 20 72 65 67 75 6C 61 72 6C 79 2E queue regularly.
000070: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 ......
000080: 20 53 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 Synchronous eve
000090: 6E 74 20 72 6F 75 74 69 6E 65 20 61 72 65 20 63 nt routine are c
0000A0: 61 6C 6C 65 64 20 77 68 65 6E 20 74 68 65 20 20 alled when the
0000B0: 66 6F 72 65 67 72 6F 75 6E 64 20 20 70 72 6F 67 foreground prog
0000C0: 72 61 6D 0D 0A 20 20 20 20 20 20 20 20 20 20 20 ram..
0000D0: 63 61 6C 6C 73 20 4B 4C 20 44 4F 20 53 59 4E 43 calls KL DO SYNC
0000E0: 2C 20 74 68 65 20 65 76 65 6E 74 20 63 6F 75 6E , the event coun
0000F0: 74 20 69 73 20 74 68 65 6E 20 64 65 61 6C 74 20 t is then dealt
000100: 77 69 74 68 20 77 68 65 6E 20 4B 4C 20 20 44 4F with when KL DO
000110: 4E 45 0D 0A 20 20 20 20 20 20 20 20 20 20 20 53 NE.. S
000120: 59 4E 43 20 69 73 20 63 61 6C 6C 65 64 2E 0D 0A YNC is called...
000130: 0D 0A 20 20 20 20 20 20 20 41 73 79 6E 63 68 72 .. Asynchr
000140: 6F 6E 6F 75 73 20 45 76 65 6E 74 73 2E 0D 0A 0D onous Events....
000150: 0A 0D 0A 20 20 20 20 20 20 20 61 2E 20 4E 6F 74 ... a. Not
000160: 20 69 6E 20 74 68 65 20 49 6E 74 65 72 72 75 70 in the Interrup
000170: 74 20 50 61 74 68 0D 0A 0D 0A 0D 0A 20 20 20 20 t Path......
000180: 20 20 20 20 20 20 20 54 68 65 20 65 76 65 6E 74 The event
000190: 20 72 6F 75 74 69 6E 65 20 69 73 20 63 61 6C 6C routine is call
0001A0: 65 64 20 69 6D 6D 65 64 69 61 74 65 6C 79 2E 20 ed immediately.
0001B0: 57 68 65 6E 20 74 68 65 20 72 6F 75 74 69 6E 65 When the routine
0001C0: 20 72 65 74 75 72 6E 73 2C 0D 0A 20 20 20 20 20 returns,..
0001D0: 20 20 20 20 20 20 69 66 20 74 68 65 20 65 76 65 if the eve
0001E0: 6E 74 20 63 6F 75 6E 74 20 69 73 20 67 72 65 61 nt count is grea
0001F0: 74 65 72 20 74 68 61 6E 20 7A 65 72 6F 20 69 74 ter than zero it
Size : 512 (Real : 512)
000000: 20 69 73 20 64 65 63 72 65 6D 65 6E 74 65 64 2E is decremented.
000010: 20 49 66 20 20 74 68 65 0D 0A 20 20 20 20 20 20 If the..
000020: 20 20 20 20 20 63 6F 75 6E 74 20 69 73 20 73 74 count is st
000030: 69 6C 6C 20 67 72 65 61 74 65 72 20 74 68 61 6E ill greater than
000040: 20 7A 65 72 6F 20 74 68 65 6E 20 74 68 65 20 70 zero then the p
000050: 72 6F 63 65 64 75 72 65 20 69 73 20 72 65 70 65 rocedure is repe
000060: 61 74 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ated.......
000070: 20 20 62 2E 20 49 6E 20 74 68 65 20 49 6E 74 65 b. In the Inte
000080: 72 72 75 70 74 20 50 61 74 68 20 2D 20 4E 6F 72 rrupt Path - Nor
000090: 6D 61 6C 20 41 73 79 6E 63 68 72 6F 6E 6F 75 73 mal Asynchronous
0000A0: 20 45 76 65 6E 74 0D 0A 0D 0A 0D 0A 20 20 20 20 Event......
0000B0: 20 20 20 20 20 20 20 54 68 65 20 65 76 65 6E 74 The event
0000C0: 20 69 73 20 70 6C 61 63 65 64 20 6F 6E 20 74 68 is placed on th
0000D0: 65 20 69 6E 74 65 72 72 75 70 74 20 65 76 65 6E e interrupt even
0000E0: 74 20 70 65 6E 64 69 6E 67 20 71 75 65 75 65 2E t pending queue.
0000F0: 20 4F 6E 20 20 65 78 69 74 0D 0A 20 20 20 20 20 On exit..
000100: 20 20 20 20 20 20 66 72 6F 6D 20 74 68 65 20 69 from the i
000110: 6E 74 65 72 72 75 70 74 20 70 61 74 68 20 74 68 nterrupt path th
000120: 65 20 4B 65 72 6E 65 6C 20 70 72 6F 63 65 73 73 e Kernel process
000130: 65 73 20 20 61 6C 6C 20 20 65 76 65 6E 74 73 20 es all events
000140: 20 6F 6E 20 20 74 68 65 0D 0A 20 20 20 20 20 20 on the..
000150: 20 20 20 20 20 69 6E 74 65 72 72 75 70 74 20 70 interrupt p
000160: 65 6E 64 69 6E 67 20 71 75 65 75 65 20 61 73 20 ending queue as
000170: 64 65 73 63 72 69 62 65 64 20 69 6E 20 28 61 29 described in (a)
000180: 20 61 62 6F 76 65 2E 20 54 68 69 73 20 6D 65 61 above. This mea
000190: 6E 73 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 ns the..
0001A0: 20 20 20 20 6E 6F 72 6D 61 6C 20 61 73 79 6E 63 normal async
0001B0: 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 20 72 6F hronous event ro
0001C0: 75 74 69 6E 65 73 20 61 72 65 20 63 61 6C 6C 65 utines are calle
0001D0: 64 20 69 6E 20 61 6E 20 20 65 78 74 65 6E 73 69 d in an extensi
0001E0: 6F 6E 20 20 6F 66 0D 0A 20 20 20 20 20 20 20 20 on of..
0001F0: 20 20 20 6E 6F 72 6D 61 6C 20 28 6E 6F 6E 2D 69 normal (non-i
Size : 512 (Real : 512)
000000: 6E 74 65 72 72 75 70 74 29 20 70 72 6F 63 65 73 nterrupt) proces
000010: 73 69 6E 67 20 62 65 74 77 65 65 6E 20 69 6E 74 sing between int
000020: 65 72 72 75 70 74 20 72 65 74 75 72 6E 20 61 6E errupt return an
000030: 64 20 74 68 65 0D 0A 20 20 20 20 20 20 20 20 20 d the..
000040: 20 20 6D 61 69 6E 20 70 72 6F 67 72 61 6D 2E 20 main program.
000050: 54 68 65 20 20 72 6F 75 74 69 6E 65 20 20 69 73 The routine is
000060: 2C 20 20 74 68 65 72 65 66 6F 72 65 2C 20 20 6E , therefore, n
000070: 6F 74 20 20 73 75 62 6A 65 63 74 20 20 74 6F 20 ot subject to
000080: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 20 20 20 the..
000090: 20 72 65 73 74 72 69 63 74 69 6F 6E 73 20 69 6D restrictions im
0000A0: 70 6F 73 65 64 20 6F 6E 20 69 6E 74 65 72 72 75 posed on interru
0000B0: 70 74 20 70 61 74 68 20 72 6F 75 74 69 6E 65 73 pt path routines
0000C0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 63 2E ....... c.
0000D0: 20 49 6E 20 74 68 65 20 49 6E 74 65 72 72 75 70 In the Interrup
0000E0: 74 20 50 61 74 68 20 2D 20 45 78 70 72 65 73 73 t Path - Express
0000F0: 20 41 73 79 6E 63 68 72 6F 6E 6F 75 73 20 45 76 Asynchronous Ev
000100: 65 6E 74 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ent......
000110: 20 20 20 20 54 68 65 20 65 76 65 6E 74 20 72 6F The event ro
000120: 75 74 69 6E 65 20 69 73 20 63 61 6C 6C 65 64 20 utine is called
000130: 69 6D 6D 65 64 69 61 74 65 6C 79 2C 20 69 6E 20 immediately, in
000140: 20 74 68 65 20 20 69 6E 74 65 72 72 75 70 74 20 the interrupt
000150: 20 70 61 74 68 2E 0D 0A 20 20 20 20 20 20 20 20 path...
000160: 20 20 20 54 68 65 20 72 6F 75 74 69 6E 65 20 6D The routine m
000170: 75 73 74 20 62 65 20 61 74 20 61 20 27 6E 65 61 ust be at a 'nea
000180: 72 20 61 64 64 72 65 73 73 27 20 28 73 65 65 20 r address' (see
000190: 4B 4C 20 49 4E 49 54 20 45 56 45 4E 54 29 2E 20 KL INIT EVENT).
0001A0: 55 6E 64 65 72 0D 0A 20 20 20 20 20 20 20 20 20 Under..
0001B0: 20 20 6E 6F 20 63 69 72 63 75 6D 73 74 61 6E 63 no circumstanc
0001C0: 65 73 20 6D 61 79 20 74 68 65 20 72 6F 75 74 69 es may the routi
0001D0: 6E 65 20 65 6E 61 62 6C 65 20 69 6E 74 65 72 72 ne enable interr
0001E0: 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 upts.......
0001F0: 20 20 4B 4C 20 45 56 45 4E 54 20 65 6E 61 62 6C KL EVENT enabl
Size : 512 (Real : 512)
000000: 65 73 20 69 6E 74 65 72 72 75 70 74 73 20 75 6E es interrupts un
000010: 6C 65 73 73 20 69 74 20 69 73 20 20 63 61 6C 6C less it is call
000020: 65 64 20 20 66 72 6F 6D 20 20 74 68 65 20 20 69 ed from the i
000030: 6E 74 65 72 72 75 70 74 0D 0A 20 20 20 20 20 20 nterrupt..
000040: 20 70 61 74 68 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 path.......
000050: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
000060: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
000070: 4B 4C 20 49 4E 49 54 20 45 56 45 4E 54 0D 0A 20 KL INIT EVENT..
000080: 20 20 20 20 20 20 4B 4C 20 4E 45 58 54 20 53 59 KL NEXT SY
000090: 4E 43 0D 0A 20 20 20 20 20 20 20 4B 4C 20 50 4F NC.. KL PO
0000A0: 4C 4C 20 53 59 4E 43 48 52 4F 4E 4F 55 53 0D 0A LL SYNCHRONOUS..
0000B0: 20 20 20 20 20 20 20 4B 4C 20 53 59 4E 43 20 52 KL SYNC R
0000C0: 45 53 45 54 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ESET..........
0000D0: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
0000E0: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
0000F0: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 70 61 67 65 20 31 35 2E 32 30 32 0D 0A 0D 0A 0D page 15.202.....
000120: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000130: 31 36 37 3A 20 4B 4C 20 53 59 4E 43 20 52 45 53 167: KL SYNC RES
000140: 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ET
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 23 42 43 46 35 0D 0A 0D 0A 0D 0A 20 20 20 20 #BCF5......
000180: 20 20 20 43 6C 65 61 72 20 73 79 6E 63 68 72 6F Clear synchro
000190: 6E 6F 75 73 20 65 76 65 6E 74 20 71 75 65 75 65 nous event queue
0001A0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 ....... Ac
0001B0: 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 tion:......
0001C0: 20 20 54 68 65 20 73 79 6E 63 68 72 6F 6E 6F 75 The synchronou
0001D0: 73 20 65 76 65 6E 74 20 71 75 65 75 65 20 69 73 s event queue is
0001E0: 20 73 65 74 20 65 6D 70 74 79 20 2D 20 61 6E 79 set empty - any
0001F0: 20 6F 75 74 73 74 61 6E 64 69 6E 67 20 65 76 65 outstanding eve
Size : 512 (Real : 512)
000000: 6E 74 73 20 20 61 72 65 0D 0A 20 20 20 20 20 20 nts are..
000010: 20 73 69 6D 70 6C 79 20 20 64 69 73 63 61 72 64 simply discard
000020: 65 64 2E 20 20 54 68 65 20 20 63 75 72 72 65 6E ed. The curren
000030: 74 20 20 65 76 65 6E 74 20 20 70 72 69 6F 72 69 t event priori
000040: 74 79 2C 20 20 75 73 65 64 20 20 62 79 20 20 4B ty, used by K
000050: 4C 20 20 50 4F 4C 4C 0D 0A 20 20 20 20 20 20 20 L POLL..
000060: 53 59 4E 43 48 52 4F 4E 4F 55 53 20 61 6E 64 20 SYNCHRONOUS and
000070: 4B 4C 20 4E 45 58 54 20 53 59 4E 43 20 74 6F 20 KL NEXT SYNC to
000080: 6D 61 73 6B 20 6F 75 74 20 20 6C 6F 77 65 72 20 mask out lower
000090: 20 70 72 69 6F 72 69 74 79 20 20 65 76 65 6E 74 priority event
0000A0: 73 2C 20 20 69 73 0D 0A 20 20 20 20 20 20 20 72 s, is.. r
0000B0: 65 73 65 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 eset.......
0000C0: 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F Entry conditio
0000D0: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
0000E0: 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A No conditions...
0000F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
000100: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D conditions:.....
000110: 0A 20 20 20 20 20 20 20 41 46 20 61 6E 64 20 48 . AF and H
000120: 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 L corrupt...
000130: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000140: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
000150: 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000160: 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 Notes:......
000170: 20 20 20 49 74 20 69 73 20 74 68 65 20 75 73 65 It is the use
000180: 72 27 73 20 72 65 73 70 6F 6E 73 69 62 69 6C 69 r's responsibili
000190: 74 79 20 74 6F 20 65 6E 73 75 72 65 20 74 68 61 ty to ensure tha
0001A0: 74 20 20 64 69 73 63 61 72 64 65 64 20 20 65 76 t discarded ev
0001B0: 65 6E 74 73 20 20 61 6E 64 0D 0A 20 20 20 20 20 ents and..
0001C0: 20 20 61 6E 79 20 63 75 72 72 65 6E 74 6C 79 20 any currently
0001D0: 61 63 74 69 76 65 20 65 76 65 6E 74 73 20 61 72 active events ar
0001E0: 65 20 72 65 73 65 74 2E 20 54 68 65 20 65 76 65 e reset. The eve
0001F0: 6E 74 20 20 63 6F 75 6E 74 20 20 6F 66 20 20 64 nt count of d
Size : 512 (Real : 512)
000000: 69 73 63 61 72 64 65 64 0D 0A 20 20 20 20 20 20 iscarded..
000010: 20 65 76 65 6E 74 73 20 77 69 6C 6C 20 62 65 20 events will be
000020: 67 72 65 61 74 65 72 20 74 68 61 6E 20 7A 65 72 greater than zer
000030: 6F 2C 20 73 6F 20 61 6E 79 20 66 75 72 74 68 65 o, so any furthe
000040: 72 20 27 6B 69 63 6B 73 27 20 20 77 69 6C 6C 20 r 'kicks' will
000050: 20 73 69 6D 70 6C 79 0D 0A 20 20 20 20 20 20 20 simply..
000060: 69 6E 63 72 65 6D 65 6E 74 20 74 68 65 20 63 6F increment the co
000070: 75 6E 74 2C 20 62 75 74 20 6E 6F 74 20 61 64 64 unt, but not add
000080: 20 74 68 65 20 65 76 65 6E 74 20 74 6F 20 20 74 the event to t
000090: 68 65 20 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 he synchronous
0000A0: 20 65 76 65 6E 74 0D 0A 20 20 20 20 20 20 20 71 event.. q
0000B0: 75 65 75 65 20 2D 20 74 68 65 20 65 76 65 6E 74 ueue - the event
0000C0: 73 20 61 72 65 2C 20 74 68 65 72 65 66 6F 72 65 s are, therefore
0000D0: 2C 20 65 66 66 65 63 74 69 76 65 6C 79 20 64 69 , effectively di
0000E0: 73 61 72 6D 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D sarmed..........
0000F0: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
000100: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 entries:......
000110: 20 20 20 20 20 4B 4C 20 44 45 4C 20 53 59 4E 43 KL DEL SYNC
000120: 48 52 4F 4E 4F 55 53 0D 0A 20 20 20 20 20 20 20 HRONOUS..
000130: 4B 4C 20 4E 45 58 54 20 53 59 4E 43 0D 0A 20 20 KL NEXT SYNC..
000140: 20 20 20 20 20 4B 4C 20 50 4F 4C 4C 20 53 59 4E KL POLL SYN
000150: 43 48 52 4F 4E 4F 55 53 0D 0A 0D 0A 0D 0A 0D 0A CHRONOUS........
000160: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000170: 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 .. AMSTRAD
000180: 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 CPC464/664/6128
000190: 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 FIRMWARE
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 70 61 67 65 20 31 35 2E 32 30 33 0D page 15.203.
0001C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
0001D0: 20 20 20 20 31 36 38 3A 20 4B 4C 20 44 45 4C 20 168: KL DEL
0001E0: 53 59 4E 43 48 52 4F 4E 4F 55 53 20 20 20 20 20 SYNCHRONOUS
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 23 42 43 46 38 0D 0A 0D 0A 0D 0A #BCF8......
000020: 20 20 20 20 20 20 20 52 65 6D 6F 76 65 20 61 20 Remove a
000030: 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E synchronous even
000040: 74 20 66 72 6F 6D 20 74 68 65 20 65 76 65 6E 74 t from the event
000050: 20 71 75 65 75 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 queue.......
000060: 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D Action:.....
000070: 0A 20 20 20 20 20 20 20 54 68 65 20 65 76 65 6E . The even
000080: 74 20 69 73 20 64 69 73 61 72 6D 65 64 2E 20 49 t is disarmed. I
000090: 66 20 69 74 20 69 73 20 6F 6E 20 74 68 65 20 73 f it is on the s
0000A0: 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 ynchronous event
0000B0: 20 71 75 65 75 65 20 74 68 65 6E 20 69 74 0D 0A queue then it..
0000C0: 20 20 20 20 20 20 20 69 73 20 72 65 6D 6F 76 65 is remove
0000D0: 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 d....... E
0000E0: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
0000F0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 4C 20 ...... HL
000100: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 contains the add
000110: 72 65 73 73 20 6F 66 20 74 68 65 20 65 76 65 6E ress of the even
000120: 74 20 62 6C 6F 63 6B 2E 0D 0A 0D 0A 0D 0A 20 20 t block.......
000130: 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 Exit condit
000140: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000150: 20 20 41 46 2C 20 42 43 2C 20 44 45 20 61 6E 64 AF, BC, DE and
000160: 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 HL corrupt...
000170: 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 All other r
000180: 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 egisters preserv
000190: 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ed.........
0001A0: 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 Notes:......
0001B0: 20 20 20 20 20 44 65 6C 65 74 69 6E 67 20 61 6E Deleting an
0001C0: 20 65 76 65 6E 74 20 66 72 6F 6D 20 74 68 65 20 event from the
0001D0: 71 75 65 75 65 20 70 72 65 76 65 6E 74 73 20 74 queue prevents t
0001E0: 68 65 20 6F 75 74 73 74 61 6E 64 69 6E 67 20 27 he outstanding '
0001F0: 6B 69 63 6B 73 27 20 66 72 6F 6D 0D 0A 20 20 20 kicks' from..
Size : 512 (Real : 512)
000000: 20 20 20 20 62 65 69 6E 67 20 70 72 6F 63 65 73 being proces
000010: 73 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 sed.......
000020: 20 42 65 66 6F 72 65 20 61 20 73 79 6E 63 68 72 Before a synchr
000030: 6F 6E 6F 75 73 20 20 65 76 65 6E 74 20 20 62 6C onous event bl
000040: 6F 63 6B 20 20 69 73 20 20 72 65 73 65 74 20 20 ock is reset
000050: 6F 72 20 20 72 65 69 6E 69 74 69 61 6C 69 7A 65 or reinitialize
000060: 64 20 20 74 68 69 73 0D 0A 20 20 20 20 20 20 20 d this..
000070: 72 6F 75 74 69 6E 65 20 73 68 6F 75 6C 64 20 62 routine should b
000080: 65 20 75 73 65 64 20 74 6F 20 65 6E 73 75 72 65 e used to ensure
000090: 20 74 68 61 74 20 69 74 20 69 73 20 6E 6F 74 20 that it is not
0000A0: 63 75 72 72 65 6E 74 6C 79 20 70 65 6E 64 69 6E currently pendin
0000B0: 67 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 g....... T
0000C0: 68 69 73 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 his routine enab
0000D0: 6C 65 73 20 69 6E 74 65 72 72 75 70 74 73 2E 0D les interrupts..
0000E0: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 ....... Re
0000F0: 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A lated entries:..
000100: 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 44 49 .... KL DI
000110: 53 41 52 4D 20 45 56 45 4E 54 0D 0A 20 20 20 20 SARM EVENT..
000120: 20 20 20 4B 4C 20 49 4E 49 54 20 45 56 45 4E 54 KL INIT EVENT
000130: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 53 59 4E 43 .. KL SYNC
000140: 20 52 45 53 45 54 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A RESET..........
000150: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000160: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000170: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000180: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 70 61 67 65 20 31 35 2E 32 30 34 0D 0A 0D 0A 0D page 15.204.....
0001B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
0001C0: 31 36 39 3A 20 4B 4C 20 4E 45 58 54 20 53 59 4E 169: KL NEXT SYN
0001D0: 43 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 C
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 20 23 42 43 46 42 0D 0A 0D 0A 20 20 20 20 20 20 #BCFB....
000010: 20 47 65 74 20 6E 65 78 74 20 65 76 65 6E 74 20 Get next event
000020: 66 72 6F 6D 20 74 68 65 20 71 75 65 75 65 2E 0D from the queue..
000030: 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E ... Action
000040: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 :.... If t
000050: 68 65 72 65 20 69 73 20 61 6E 20 65 76 65 6E 74 here is an event
000060: 20 6F 6E 20 74 68 65 20 73 79 6E 63 68 72 6F 6E on the synchron
000070: 6F 75 73 20 65 76 65 6E 74 20 71 75 65 75 65 20 ous event queue
000080: 77 68 6F 73 65 20 70 72 69 6F 72 69 74 79 20 20 whose priority
000090: 69 73 0D 0A 20 20 20 20 20 20 20 67 72 65 61 74 is.. great
0000A0: 65 72 20 74 68 61 6E 20 74 68 65 20 63 75 72 72 er than the curr
0000B0: 65 6E 74 20 65 76 65 6E 74 20 70 72 69 6F 72 69 ent event priori
0000C0: 74 79 20 20 28 69 66 20 20 61 6E 79 29 2C 20 20 ty (if any),
0000D0: 74 68 65 6E 20 20 72 65 6D 6F 76 65 20 20 74 68 then remove th
0000E0: 65 0D 0A 20 20 20 20 20 20 20 65 76 65 6E 74 20 e.. event
0000F0: 66 72 6F 6D 20 74 68 65 20 71 75 65 75 65 2C 20 from the queue,
000100: 73 65 74 20 74 68 65 20 63 75 72 72 65 6E 74 20 set the current
000110: 65 76 65 6E 74 20 70 72 69 6F 72 69 74 79 20 74 event priority t
000120: 6F 20 20 74 68 61 74 20 20 6F 66 20 20 74 68 65 o that of the
000130: 0D 0A 0D 0A 20 20 20 20 20 20 20 65 76 65 6E 74 .... event
000140: 20 72 65 6D 6F 76 65 64 20 61 6E 64 20 72 65 74 removed and ret
000150: 75 72 6E 20 74 68 65 20 70 72 65 76 69 6F 75 73 urn the previous
000160: 20 65 76 65 6E 74 20 70 72 69 6F 72 69 74 79 2E event priority.
000170: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 .... Entry
000180: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000190: 20 20 20 20 20 20 20 4E 6F 20 63 6F 6E 64 69 74 No condit
0001A0: 69 6F 6E 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 ions.....
0001B0: 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A Exit conditions:
0001C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 .... If th
0001D0: 65 72 65 20 69 73 20 61 6E 20 65 76 65 6E 74 20 ere is an event
0001E0: 74 6F 20 62 65 20 70 72 6F 63 65 73 73 65 64 3A to be processed:
0001F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
Size : 512 (Real : 512)
000000: 20 20 20 20 43 61 72 72 79 20 74 72 75 65 2E 0D Carry true..
000010: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000020: 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 HL contains the
000030: 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 20 address of the
000040: 65 76 65 6E 74 20 62 6C 6F 63 6B 2E 0D 0A 20 20 event block...
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 20 A
000060: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 70 72 65 contains the pre
000070: 76 69 6F 75 73 20 65 76 65 6E 74 20 70 72 69 6F vious event prio
000080: 72 69 74 79 20 28 69 66 20 61 6E 79 29 2E 0D 0A rity (if any)...
000090: 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 72 .. If ther
0000A0: 65 20 69 73 20 6E 6F 20 65 76 65 6E 74 20 74 6F e is no event to
0000B0: 20 62 65 20 70 72 6F 63 65 73 73 65 64 3A 0D 0A be processed:..
0000C0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
0000D0: 20 20 43 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A Carry false...
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 41 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 A and HL corrupt
000100: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C 77 61 ..... Alwa
000110: 79 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 ys:....
000120: 20 20 20 20 20 20 20 44 45 20 63 6F 72 72 75 70 DE corrup
000130: 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 t...
000140: 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 All other re
000150: 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 gisters preserve
000160: 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 d..... Not
000170: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
000180: 4B 4C 20 4E 45 58 54 20 53 59 4E 43 20 72 65 74 KL NEXT SYNC ret
000190: 75 72 6E 73 20 74 68 65 20 61 64 64 72 65 73 73 urns the address
0001A0: 20 6F 66 20 74 68 65 20 6E 65 78 74 20 65 76 65 of the next eve
0001B0: 6E 74 20 74 6F 20 62 65 20 70 72 6F 63 65 73 73 nt to be process
0001C0: 65 64 2C 20 69 66 0D 0A 20 20 20 20 20 20 20 61 ed, if.. a
0001D0: 6E 79 2C 20 77 68 69 63 68 20 69 74 20 68 61 73 ny, which it has
0001E0: 20 74 61 6B 65 6E 20 6F 66 66 20 74 68 65 20 20 taken off the
0001F0: 73 79 6E 63 68 72 6F 6E 6F 75 73 20 20 65 76 65 synchronous eve
Size : 512 (Real : 512)
000000: 6E 74 20 20 71 75 65 75 65 20 20 61 6E 64 20 20 nt queue and
000010: 77 68 6F 73 65 0D 0A 20 20 20 20 20 20 20 70 72 whose.. pr
000020: 69 6F 72 69 74 79 20 68 61 73 20 6E 6F 77 20 62 iority has now b
000030: 65 65 6E 20 73 65 74 20 61 73 20 74 68 65 20 65 een set as the e
000040: 76 65 6E 74 20 70 72 69 6F 72 69 74 79 20 6D 61 vent priority ma
000050: 73 6B 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 sk.......
000060: 54 68 65 20 66 6F 72 65 67 72 6F 75 6E 64 20 70 The foreground p
000070: 72 6F 67 72 61 6D 20 73 68 6F 75 6C 64 20 63 61 rogram should ca
000080: 6C 6C 20 4B 4C 20 50 4F 4C 4C 20 20 53 59 4E 43 ll KL POLL SYNC
000090: 48 52 4F 4E 4F 55 53 20 20 72 65 67 75 6C 61 72 HRONOUS regular
0000A0: 6C 79 20 20 74 6F 0D 0A 20 20 20 20 20 20 20 63 ly to.. c
0000B0: 68 65 63 6B 20 66 6F 72 20 6F 75 74 73 74 61 6E heck for outstan
0000C0: 64 69 6E 67 20 65 76 65 6E 74 73 2E 20 4B 4C 20 ding events. KL
0000D0: 50 4F 4C 4C 20 53 59 4E 43 48 52 4F 4E 4F 55 53 POLL SYNCHRONOUS
0000E0: 20 69 73 20 61 20 20 73 68 6F 72 74 20 20 72 6F is a short ro
0000F0: 75 74 69 6E 65 0D 0A 20 20 20 20 20 20 20 69 6E utine.. in
000100: 20 52 41 4D 2C 20 73 6F 20 63 61 6C 6C 69 6E 67 RAM, so calling
000110: 20 69 74 20 69 6D 70 6F 73 65 73 20 6C 69 74 74 it imposes litt
000120: 6C 65 20 6F 76 65 72 68 65 61 64 2E 20 49 66 20 le overhead. If
000130: 74 68 65 72 65 20 20 69 73 20 20 61 6E 20 20 65 there is an e
000140: 76 65 6E 74 0D 0A 20 20 20 20 20 20 20 6F 75 74 vent.. out
000150: 73 74 61 6E 64 69 6E 67 20 74 68 65 6E 20 74 68 standing then th
000160: 65 20 61 62 6F 76 65 20 70 72 6F 63 65 64 75 72 e above procedur
000170: 65 20 73 68 6F 75 6C 64 20 62 65 20 69 6E 76 6F e should be invo
000180: 6B 65 64 2C 20 61 6E 64 20 73 68 6F 75 6C 64 20 ked, and should
000190: 20 62 65 0D 0A 20 20 20 20 20 20 20 72 65 70 65 be.. repe
0001A0: 61 74 65 64 20 75 6E 74 69 6C 20 74 68 65 20 65 ated until the e
0001B0: 76 65 6E 74 20 71 75 65 75 65 20 69 73 20 65 6D vent queue is em
0001C0: 70 74 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 pty.......
0001D0: 20 54 68 65 20 63 75 72 72 65 6E 74 20 65 76 65 The current eve
0001E0: 6E 74 20 70 72 69 6F 72 69 74 79 20 6D 65 63 68 nt priority mech
0001F0: 61 6E 69 73 6D 20 61 6C 6C 6F 77 73 20 65 76 65 anism allows eve
Size : 512 (Real : 512)
000000: 6E 74 20 72 6F 75 74 69 6E 65 20 74 6F 20 70 6F nt routine to po
000010: 6C 6C 20 66 6F 72 2C 0D 0A 20 20 20 20 20 20 20 ll for,..
000020: 61 6E 64 20 70 72 6F 63 65 73 73 2C 20 65 76 65 and process, eve
000030: 6E 74 73 20 6F 66 20 68 69 67 68 65 72 20 70 72 nts of higher pr
000040: 69 6F 72 69 74 79 2E 20 54 68 65 20 70 72 69 6F iority. The prio
000050: 72 69 74 79 20 72 65 74 75 72 6E 65 64 20 62 79 rity returned by
000060: 20 20 74 68 69 73 0D 0A 20 20 20 20 20 20 20 72 this.. r
000070: 6F 75 74 69 6E 65 20 6D 75 73 74 20 62 65 20 70 outine must be p
000080: 72 65 73 65 72 76 65 64 20 75 6E 74 69 6C 20 69 reserved until i
000090: 74 20 69 73 20 70 61 73 73 65 64 20 74 6F 20 4B t is passed to K
0000A0: 4C 20 44 4F 20 53 59 4E 43 2E 0D 0A 0D 0A 0D 0A L DO SYNC.......
0000B0: 20 20 20 20 20 20 20 4B 4C 20 4E 45 58 54 20 53 KL NEXT S
0000C0: 59 4E 43 20 65 6E 61 62 6C 65 73 20 69 6E 74 65 YNC enables inte
0000D0: 72 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D rrupts..........
0000E0: 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 . AMSTRAD
0000F0: 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 CPC464/664/6128
000100: 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 FIRMWARE
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 70 61 67 65 20 31 35 2E 32 30 35 0D 0A page 15.205..
000130: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000140: 20 20 20 54 68 65 20 70 72 6F 63 65 64 75 72 65 The procedure
000150: 20 66 6F 72 20 70 72 6F 63 65 73 73 69 6E 67 20 for processing
000160: 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E synchronous even
000170: 74 73 20 69 73 20 61 73 20 66 6F 6C 6C 6F 77 73 ts is as follows
000180: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 52 :...... TR
000190: 59 20 41 47 41 49 4E 3A 0D 0A 20 20 20 20 20 20 Y AGAIN:..
0001A0: 20 20 20 20 20 43 41 4C 4C 20 4B 4C 5F 4E 45 58 CALL KL_NEX
0001B0: 54 5F 53 59 4E 43 20 20 20 20 20 20 20 20 3B 72 T_SYNC ;r
0001C0: 65 74 75 72 6E 20 6E 65 78 74 20 65 76 65 6E 74 eturn next event
0001D0: 2C 20 69 66 20 61 6E 79 0D 0A 20 20 20 20 20 20 , if any..
0001E0: 20 20 20 20 20 4A 52 20 4E 43 2C 3F 3F 3F 3F 3F JR NC,?????
0001F0: 3F 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 6A ? ;j
Size : 512 (Real : 512)
000000: 75 6D 70 20 69 66 20 6E 6F 20 65 76 65 6E 74 20 ump if no event
000010: 74 6F 20 70 72 6F 63 65 73 73 0D 0A 20 20 20 20 to process..
000020: 20 20 20 3B 0D 0A 20 20 20 20 20 20 20 20 20 20 ;..
000030: 20 50 55 53 48 20 48 4C 20 20 20 20 20 20 20 20 PUSH HL
000040: 20 20 20 20 20 20 20 20 20 20 3B 73 61 76 65 20 ;save
000050: 61 64 64 72 65 73 73 20 6F 66 20 65 76 65 6E 74 address of event
000060: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 50 55 53 .. PUS
000070: 48 20 41 46 20 20 20 20 20 20 20 20 20 20 20 20 H AF
000080: 20 20 20 20 20 20 3B 73 61 76 65 20 70 72 65 76 ;save prev
000090: 69 6F 75 73 20 65 76 65 6E 74 20 70 72 69 6F 72 ious event prior
0000A0: 69 74 79 0D 0A 20 20 20 20 20 20 20 20 20 20 20 ity..
0000B0: 43 41 4C 4C 20 4B 4C 5F 44 4F 5F 53 59 4E 43 20 CALL KL_DO_SYNC
0000C0: 20 20 20 20 20 20 20 20 20 3B 63 61 6C 6C 20 74 ;call t
0000D0: 68 65 20 65 76 65 6E 74 20 72 6F 75 74 69 6E 65 he event routine
0000E0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 50 4F 50 .. POP
0000F0: 20 41 46 0D 0A 20 20 20 20 20 20 20 20 20 20 20 AF..
000100: 50 4F 50 20 48 4C 0D 0A 20 20 20 20 20 20 20 3B POP HL.. ;
000110: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 43 41 4C .. CAL
000120: 4C 20 4B 4C 5F 44 4F 4E 45 5F 53 59 4E 43 20 20 L KL_DONE_SYNC
000130: 20 20 20 20 20 20 3B 72 65 73 65 74 20 74 68 65 ;reset the
000140: 20 65 76 65 6E 74 20 70 72 69 6F 72 69 74 79 20 event priority
000150: 6D 61 73 6B 2C 20 64 65 61 6C 20 77 69 74 68 0D mask, deal with.
000160: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 .....
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 20 20 20 20 20 20 20 20 3B 74 68 65 20 65 76 ;the ev
000190: 65 6E 74 20 63 6F 75 6E 74 20 61 6E 64 20 70 75 ent count and pu
0001A0: 74 20 74 68 65 20 20 65 76 65 6E 74 20 20 62 61 t the event ba
0001B0: 63 6B 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ck..
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 20 20 20 20 20 3B 6F 6E 20 74 68 65 20 ;on the
0001E0: 71 75 65 75 65 20 69 66 20 74 68 65 20 63 6F 75 queue if the cou
0001F0: 6E 74 20 69 73 20 73 74 69 6C 6C 0D 0A 0D 0A 0D nt is still.....
Size : 512 (Real : 512)
000000: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 3B 67 72 65 61 74 65 72 20 74 68 ;greater th
000030: 61 6E 20 7A 65 72 6F 0D 0A 20 20 20 20 20 20 20 an zero..
000040: 20 20 20 20 4A 52 20 54 52 59 5F 41 47 41 49 4E JR TRY_AGAIN
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 73 65 ;se
000060: 65 20 69 66 20 61 6E 79 20 20 65 76 65 6E 74 73 e if any events
000070: 20 20 61 72 65 20 20 73 74 69 6C 6C 20 20 61 77 are still aw
000080: 61 69 74 69 6E 67 0D 0A 20 20 20 20 20 20 20 20 aiting..
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 3B 70 72 6F ;pro
0000B0: 63 65 73 73 69 6E 67 0D 0A 0D 0A 0D 0A 0D 0A 20 cessing........
0000C0: 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E Related en
0000D0: 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tries:......
0000E0: 20 20 20 4B 4C 20 44 4F 4E 45 20 53 59 4E 43 0D KL DONE SYNC.
0000F0: 0A 20 20 20 20 20 20 20 4B 4C 20 44 4F 20 53 59 . KL DO SY
000100: 4E 43 0D 0A 20 20 20 20 20 20 20 4B 4C 20 45 56 NC.. KL EV
000110: 45 4E 54 0D 0A 20 20 20 20 20 20 20 4B 4C 20 49 ENT.. KL I
000120: 4E 49 54 20 45 56 45 4E 54 0D 0A 20 20 20 20 20 NIT EVENT..
000130: 20 20 4B 4C 20 50 4F 4C 4C 20 53 59 4E 43 48 52 KL POLL SYNCHR
000140: 4F 4E 4F 55 53 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ONOUS...........
000150: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000160: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000170: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000180: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000190: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
0001C0: 31 35 2E 32 30 36 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.206..........
0001D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 31 37 30 3A 20 .... 170:
0001E0: 4B 4C 20 44 4F 20 53 59 4E 43 20 20 20 20 20 20 KL DO SYNC
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 20 20 20 20 20 20 20 23 42 43 46 #BCF
000020: 45 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 50 65 E...... Pe
000030: 72 66 6F 72 6D 20 61 6E 20 65 76 65 6E 74 20 72 rform an event r
000040: 6F 75 74 69 6E 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 outine.......
000050: 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D Action:.....
000060: 0A 20 20 20 20 20 20 20 43 61 6C 6C 20 74 68 65 . Call the
000070: 20 65 76 65 6E 74 20 72 6F 75 74 69 6E 65 20 66 event routine f
000080: 6F 72 20 61 20 67 69 76 65 6E 20 65 76 65 6E 74 or a given event
000090: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E ....... En
0000A0: 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D try conditions:.
0000B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 ..... HL c
0000C0: 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 72 ontains the addr
0000D0: 65 73 73 20 6F 66 20 74 68 65 20 65 76 65 6E 74 ess of the event
0000E0: 20 62 6C 6F 63 6B 2E 0D 0A 0D 0A 0D 0A 20 20 20 block.......
0000F0: 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 Exit conditi
000100: 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ons:......
000110: 20 41 46 2C 20 42 43 2C 20 44 45 20 61 6E 64 20 AF, BC, DE and
000120: 48 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 HL corrupt...
000130: 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 All other re
000140: 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 gisters preserve
000150: 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E d....... N
000160: 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 otes:......
000170: 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 69 This routine i
000180: 73 20 69 6E 74 65 6E 64 65 64 20 74 6F 20 62 65 s intended to be
000190: 20 63 61 6C 6C 65 64 20 74 6F 20 70 72 6F 63 65 called to proce
0001A0: 73 73 20 20 61 6E 20 20 65 76 65 6E 74 20 20 61 ss an event a
0001B0: 66 74 65 72 20 20 4B 4C 0D 0A 20 20 20 20 20 20 fter KL..
0001C0: 20 4E 45 58 54 20 53 59 4E 43 20 68 61 73 20 66 NEXT SYNC has f
0001D0: 6F 75 6E 64 20 69 74 20 74 6F 20 62 65 20 70 65 ound it to be pe
0001E0: 6E 64 69 6E 67 2E 20 55 73 65 20 6F 66 20 74 68 nding. Use of th
0001F0: 69 73 20 65 6E 74 72 79 20 61 74 20 20 61 6E 79 is entry at any
Size : 512 (Real : 512)
000000: 20 20 6F 74 68 65 72 0D 0A 20 20 20 20 20 20 20 other..
000010: 74 69 6D 65 20 69 73 20 6E 6F 74 20 72 65 63 6F time is not reco
000020: 6D 6D 65 6E 64 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 mmended.......
000030: 20 20 20 20 20 53 65 65 20 20 4B 4C 20 20 4E 45 See KL NE
000040: 58 54 20 20 53 59 4E 43 20 20 61 62 6F 76 65 20 XT SYNC above
000050: 20 66 6F 72 20 20 74 68 65 20 20 67 65 6E 65 72 for the gener
000060: 61 6C 20 20 73 63 68 65 6D 65 20 20 66 6F 72 20 al scheme for
000070: 20 70 72 6F 63 65 73 73 69 6E 67 0D 0A 20 20 20 processing..
000080: 20 20 20 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 synchronous
000090: 65 76 65 6E 74 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 events.......
0000A0: 20 20 20 20 4B 4C 20 44 4F 20 53 59 4E 43 20 64 KL DO SYNC d
0000B0: 6F 65 73 20 6E 6F 74 20 69 74 73 65 6C 66 20 61 oes not itself a
0000C0: 66 66 65 63 74 20 74 68 65 20 65 76 65 6E 74 20 ffect the event
0000D0: 63 6F 75 6E 74 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 count.........
0000E0: 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 Related ent
0000F0: 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ries:......
000100: 20 20 4B 4C 20 44 4F 4E 45 20 53 59 4E 43 0D 0A KL DONE SYNC..
000110: 20 20 20 20 20 20 20 4B 4C 20 4E 45 58 54 20 53 KL NEXT S
000120: 59 4E 43 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D YNC.............
000130: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ...............
000140: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
000150: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
000160: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 70 61 67 65 20 31 35 2E 32 30 37 0D 0A 0D 0A page 15.207....
000190: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
0001A0: 20 31 37 31 3A 20 4B 4C 20 44 4F 4E 45 20 53 59 171: KL DONE SY
0001B0: 4E 43 20 20 20 20 20 20 20 20 20 20 20 20 20 20 NC
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 20 23 42 44 30 31 0D 0A 0D 0A 20 20 20 20 20 #BD01....
0001F0: 20 20 46 69 6E 69 73 68 20 70 72 6F 63 65 73 73 Finish process
Size : 512 (Real : 512)
000000: 69 6E 67 20 61 6E 20 65 76 65 6E 74 2E 0D 0A 0D ing an event....
000010: 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D . Action:.
000020: 0A 0D 0A 20 20 20 20 20 20 20 4F 6E 63 65 20 61 ... Once a
000030: 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 synchronous eve
000040: 6E 74 20 68 61 73 20 62 65 65 6E 20 70 72 6F 63 nt has been proc
000050: 65 73 73 65 64 2C 20 20 62 79 20 20 69 6E 76 6F essed, by invo
000060: 6B 69 6E 67 20 20 69 74 73 20 20 65 76 65 6E 74 king its event
000070: 0D 0A 20 20 20 20 20 20 20 72 6F 75 74 69 6E 65 .. routine
000080: 20 76 69 61 20 4B 4C 20 44 4F 20 53 59 4E 43 2C via KL DO SYNC,
000090: 20 74 68 69 73 20 65 6E 74 72 79 20 20 6D 75 73 this entry mus
0000A0: 74 20 20 62 65 20 20 63 61 6C 6C 65 64 20 20 74 t be called t
0000B0: 6F 20 20 72 65 73 74 6F 72 65 20 20 74 68 65 0D o restore the.
0000C0: 0A 20 20 20 20 20 20 20 63 75 72 72 65 6E 74 20 . current
0000D0: 65 76 65 6E 74 20 70 72 69 6F 72 69 74 79 20 61 event priority a
0000E0: 6E 64 20 74 6F 20 64 65 61 6C 20 77 69 74 68 20 nd to deal with
0000F0: 74 68 65 20 65 76 65 6E 74 20 63 6F 75 6E 74 2E the event count.
000100: 20 49 66 20 74 68 65 20 20 63 6F 75 6E 74 0D 0A If the count..
000110: 20 20 20 20 20 20 20 72 65 6D 61 69 6E 73 20 67 remains g
000120: 72 65 61 74 65 72 20 74 68 61 6E 20 7A 65 72 6F reater than zero
000130: 20 74 68 65 20 20 65 76 65 6E 74 20 20 62 6C 6F the event blo
000140: 63 6B 20 20 69 73 20 20 70 6C 61 63 65 64 20 20 ck is placed
000150: 62 61 63 6B 20 20 6F 6E 20 20 74 68 65 0D 0A 20 back on the..
000160: 20 20 20 20 20 20 73 79 6E 63 68 72 6F 6E 6F 75 synchronou
000170: 73 20 65 76 65 6E 74 20 71 75 65 75 65 2E 0D 0A s event queue...
000180: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
000190: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 onditions:....
0001A0: 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 A contains
0001B0: 74 68 65 20 70 72 65 76 69 6F 75 73 20 65 76 65 the previous eve
0001C0: 6E 74 20 70 72 69 6F 72 69 74 79 2E 0D 0A 20 20 nt priority...
0001D0: 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 HL contains
0001E0: 20 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 the address of
0001F0: 74 68 65 20 65 76 65 6E 74 20 62 6C 6F 63 6B 2E the event block.
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
000010: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
000020: 20 20 20 20 20 20 41 46 2C 20 42 43 2C 20 44 45 AF, BC, DE
000030: 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E and HL corrupt.
000040: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 .. All oth
000050: 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 er registers pre
000060: 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 served.....
000070: 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 Notes:......
000080: 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E This routin
000090: 65 20 69 73 20 69 6E 74 65 6E 64 65 64 20 74 6F e is intended to
0000A0: 20 62 65 20 63 61 6C 6C 65 64 20 61 66 74 65 72 be called after
0000B0: 20 63 61 6C 6C 69 6E 67 20 4B 4C 20 4E 45 58 54 calling KL NEXT
0000C0: 20 20 53 59 4E 43 2C 20 20 74 6F 0D 0A 20 20 20 SYNC, to..
0000D0: 20 20 20 20 66 69 6E 64 20 61 20 70 65 6E 64 69 find a pendi
0000E0: 6E 67 20 65 76 65 6E 74 2C 20 61 6E 64 20 4B 4C ng event, and KL
0000F0: 20 44 4F 20 53 59 4E 43 2C 20 74 6F 20 72 75 6E DO SYNC, to run
000100: 20 20 74 68 65 20 20 65 76 65 6E 74 20 20 72 6F the event ro
000110: 75 74 69 6E 65 2E 20 20 49 74 0D 0A 20 20 20 20 utine. It..
000120: 20 20 20 75 73 65 73 20 74 68 65 20 70 72 65 76 uses the prev
000130: 69 6F 75 73 20 65 76 65 6E 74 20 70 72 69 6F 72 ious event prior
000140: 69 74 79 20 61 6E 64 20 74 68 65 20 65 76 65 6E ity and the even
000150: 74 20 62 6C 6F 63 6B 20 61 64 64 72 65 73 73 20 t block address
000160: 20 72 65 74 75 72 6E 65 64 0D 0A 20 20 20 20 20 returned..
000170: 20 20 62 79 20 4B 4C 20 4E 45 58 54 20 53 59 4E by KL NEXT SYN
000180: 43 2E 20 4F 74 68 65 72 20 75 73 65 73 20 6F 66 C. Other uses of
000190: 20 74 68 69 73 20 65 6E 74 72 79 20 61 72 65 20 this entry are
0001A0: 6E 6F 74 20 72 65 63 6F 6D 6D 65 6E 64 65 64 2E not recommended.
0001B0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 65 ...... See
0001C0: 20 20 4B 4C 20 20 4E 45 58 54 20 20 53 59 4E 43 KL NEXT SYNC
0001D0: 20 20 61 62 6F 76 65 20 20 66 6F 72 20 20 74 68 above for th
0001E0: 65 20 20 67 65 6E 65 72 61 6C 20 20 73 63 68 65 e general sche
0001F0: 6D 65 20 20 66 6F 72 20 20 70 72 6F 63 65 73 73 me for process
Size : 512 (Real : 512)
000000: 69 6E 67 0D 0A 20 20 20 20 20 20 20 73 79 6E 63 ing.. sync
000010: 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 73 2E 0D hronous events..
000020: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 73 74 ..... Rest
000030: 6F 72 69 6E 67 20 20 74 68 65 20 20 63 75 72 72 oring the curr
000040: 65 6E 74 20 20 65 76 65 6E 74 20 20 70 72 69 6F ent event prio
000050: 72 69 74 79 20 20 69 73 20 20 61 6E 20 20 65 73 rity is an es
000060: 73 65 6E 74 69 61 6C 20 20 73 74 65 70 20 20 20 sential step
000070: 69 6E 0D 0A 20 20 20 20 20 20 20 6D 61 69 6E 74 in.. maint
000080: 61 69 6E 69 6E 67 20 74 68 65 20 73 79 6E 63 68 aining the synch
000090: 72 6F 6E 6F 75 73 20 65 76 65 6E 74 20 70 72 69 ronous event pri
0000A0: 6F 72 69 74 79 20 73 63 68 65 6D 65 2E 0D 0A 0D ority scheme....
0000B0: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 ... If the
0000C0: 20 65 76 65 6E 74 20 63 6F 75 6E 74 20 69 73 20 event count is
0000D0: 67 72 65 61 74 65 72 20 74 68 61 6E 20 7A 65 72 greater than zer
0000E0: 6F 20 74 68 65 6E 20 69 74 20 69 73 20 64 65 63 o then it is dec
0000F0: 72 65 6D 65 6E 74 65 64 2E 20 49 66 20 74 68 65 remented. If the
000100: 0D 0A 20 20 20 20 20 20 20 63 6F 75 6E 74 20 69 .. count i
000110: 73 20 73 74 69 6C 6C 20 20 67 72 65 61 74 65 72 s still greater
000120: 20 20 74 68 61 6E 20 20 7A 65 72 6F 20 20 74 68 than zero th
000130: 65 6E 20 20 74 68 65 72 65 20 20 61 72 65 20 20 en there are
000140: 66 75 72 74 68 65 72 20 20 65 76 65 6E 74 73 0D further events.
000150: 0A 20 20 20 20 20 20 20 6F 75 74 73 74 61 6E 64 . outstand
000160: 69 6E 67 20 61 6E 64 20 74 68 65 20 65 76 65 6E ing and the even
000170: 74 20 69 73 20 70 6C 61 63 65 64 20 20 62 61 63 t is placed bac
000180: 6B 20 20 6F 6E 20 20 74 68 65 20 20 73 79 6E 63 k on the sync
000190: 68 72 6F 6E 6F 75 73 20 20 65 76 65 6E 74 0D 0A hronous event..
0001A0: 20 20 20 20 20 20 20 71 75 65 75 65 2E 20 54 68 queue. Th
0001B0: 65 20 65 76 65 6E 74 20 6D 61 79 20 62 65 20 64 e event may be d
0001C0: 69 73 61 72 6D 65 64 20 62 65 74 77 65 65 6E 20 isarmed between
0001D0: 4B 4C 20 20 4E 45 58 54 20 20 53 59 4E 43 20 20 KL NEXT SYNC
0001E0: 61 6E 64 20 20 4B 4C 20 20 44 4F 4E 45 0D 0A 20 and KL DONE..
0001F0: 20 20 20 20 20 20 53 59 4E 43 2E 20 53 65 74 74 SYNC. Sett
Size : 512 (Real : 512)
000000: 69 6E 67 20 74 68 65 20 65 76 65 6E 74 20 63 6F ing the event co
000010: 75 6E 74 20 74 6F 20 20 6F 6E 65 20 20 62 65 66 unt to one bef
000020: 6F 72 65 20 20 63 61 6C 6C 69 6E 67 20 20 4B 4C ore calling KL
000030: 20 20 44 4F 4E 45 20 20 53 59 4E 43 0D 0A 20 20 DONE SYNC..
000040: 20 20 20 20 20 66 6F 72 63 65 73 20 6D 75 6C 74 forces mult
000050: 69 70 6C 65 20 65 76 65 6E 74 73 20 74 6F 20 62 iple events to b
000060: 65 20 74 72 65 61 74 65 64 20 61 73 20 61 20 73 e treated as a s
000070: 69 6E 67 6C 65 20 65 76 65 6E 74 2E 0D 0A 0D 0A ingle event.....
000080: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 44 4F 4E 45 .. KL DONE
000090: 20 53 59 4E 43 20 6D 61 79 20 65 6E 61 62 6C 65 SYNC may enable
0000A0: 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D 0A interrupts.....
0000B0: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
0000C0: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 entries:......
0000D0: 20 20 20 20 20 20 4B 4C 20 44 4F 20 53 59 4E 43 KL DO SYNC
0000E0: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 4E 45 58 54 .. KL NEXT
0000F0: 20 53 59 4E 43 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 SYNC..........
000100: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
000110: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
000120: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000140: 20 70 61 67 65 20 31 35 2E 32 30 38 0D 0A 0D 0A page 15.208....
000150: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000160: 20 31 37 32 3A 20 4B 4C 20 45 56 45 4E 54 20 44 172: KL EVENT D
000170: 49 53 41 42 4C 45 20 20 20 20 20 20 20 20 20 20 ISABLE
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 23 42 44 30 34 0D 0A 0D 0A 0D 0A 20 20 20 #BD04......
0001B0: 20 20 20 20 44 69 73 61 62 6C 65 20 6E 6F 72 6D Disable norm
0001C0: 61 6C 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 al synchronous e
0001D0: 76 65 6E 74 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 vents.......
0001E0: 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A Action:......
0001F0: 20 20 20 20 20 20 20 50 72 65 76 65 6E 74 20 6E Prevent n
Size : 512 (Real : 512)
000000: 6F 72 6D 61 6C 20 73 79 6E 63 68 72 6F 6E 6F 75 ormal synchronou
000010: 73 20 20 65 76 65 6E 74 73 20 20 66 72 6F 6D 20 s events from
000020: 20 62 65 69 6E 67 20 20 70 72 6F 63 65 73 73 65 being processe
000030: 64 20 20 62 75 74 20 20 61 6C 6C 6F 77 0D 0A 20 d but allow..
000040: 20 20 20 20 20 20 65 78 70 72 65 73 73 20 73 79 express sy
000050: 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 73 nchronous events
000060: 20 20 74 6F 20 20 62 65 20 20 70 72 6F 63 65 73 to be proces
000070: 73 65 64 2E 20 20 54 68 69 73 20 20 69 73 20 20 sed. This is
000080: 61 63 68 69 65 76 65 64 20 20 62 79 0D 0A 20 20 achieved by..
000090: 20 20 20 20 20 73 65 74 74 69 6E 67 20 74 68 65 setting the
0000A0: 20 63 75 72 72 65 6E 74 20 65 76 65 6E 74 20 70 current event p
0000B0: 72 69 6F 72 69 74 79 20 68 69 67 68 65 72 20 20 riority higher
0000C0: 74 68 61 6E 20 20 61 6E 79 20 20 70 6F 73 73 69 than any possi
0000D0: 62 6C 65 20 20 6E 6F 72 6D 61 6C 0D 0A 20 20 20 ble normal..
0000E0: 20 20 20 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 synchronous
0000F0: 65 76 65 6E 74 20 70 72 69 6F 72 69 74 79 2E 0D event priority..
000100: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 ..... Entr
000110: 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D y conditions:...
000120: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 20 63 6F 6E ... No con
000130: 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 20 20 ditions.......
000140: 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 Exit condit
000150: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000160: 20 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 20 HL corrupt...
000170: 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 All other
000180: 72 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 registers preser
000190: 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ved.......
0001A0: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 Notes:......
0001B0: 20 20 20 20 4B 4C 20 45 56 45 4E 54 20 44 49 53 KL EVENT DIS
0001C0: 41 42 4C 45 20 64 6F 65 73 20 6E 6F 74 20 70 72 ABLE does not pr
0001D0: 65 76 65 6E 74 20 65 76 65 6E 74 73 20 66 72 6F event events fro
0001E0: 6D 20 62 65 69 6E 67 20 6B 69 63 6B 65 64 2E 20 m being kicked.
0001F0: 54 68 65 20 65 66 66 65 63 74 0D 0A 20 20 20 20 The effect..
Size : 512 (Real : 512)
000000: 20 20 20 69 73 20 74 6F 20 27 6D 61 73 6B 20 6F is to 'mask o
000010: 66 66 27 20 61 6C 6C 20 70 65 6E 64 69 6E 67 20 ff' all pending
000020: 6E 6F 72 6D 61 6C 20 73 79 6E 63 68 72 6F 6E 6F normal synchrono
000030: 75 73 20 65 76 65 6E 74 73 20 20 73 6F 20 20 74 us events so t
000040: 68 61 74 20 20 74 68 65 79 0D 0A 20 20 20 20 20 hat they..
000050: 20 20 61 72 65 20 68 69 64 64 65 6E 20 66 72 6F are hidden fro
000060: 6D 20 74 68 65 20 66 6F 72 65 67 72 6F 75 6E 64 m the foreground
000070: 20 70 72 6F 67 72 61 6D 20 28 77 68 65 6E 20 4B program (when K
000080: 4C 20 50 4F 4C 4C 20 53 59 4E 43 48 52 4F 4E 4F L POLL SYNCHRONO
000090: 55 53 20 6F 72 20 4B 4C 0D 0A 20 20 20 20 20 20 US or KL..
0000A0: 20 4E 45 58 54 20 53 59 4E 43 20 61 72 65 20 63 NEXT SYNC are c
0000B0: 61 6C 6C 65 64 29 20 61 6E 64 20 68 65 6E 63 65 alled) and hence
0000C0: 20 61 72 65 20 6E 6F 74 20 70 72 6F 63 65 73 73 are not process
0000D0: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
0000E0: 4B 4C 20 45 56 45 4E 54 20 45 4E 41 42 4C 45 20 KL EVENT ENABLE
0000F0: 72 65 76 65 72 73 65 73 20 74 68 65 20 65 66 66 reverses the eff
000100: 65 63 74 20 6F 66 20 4B 4C 20 45 56 45 4E 54 20 ect of KL EVENT
000110: 44 49 53 41 42 4C 45 2E 0D 0A 0D 0A 0D 0A 20 20 DISABLE.......
000120: 20 20 20 20 20 49 74 20 69 73 20 6E 6F 74 20 70 It is not p
000130: 6F 73 73 69 62 6C 65 20 74 6F 20 20 64 69 73 61 ossible to disa
000140: 62 6C 65 20 20 73 79 6E 63 68 72 6F 6E 6F 75 73 ble synchronous
000150: 20 20 65 76 65 6E 74 73 20 20 70 65 72 6D 61 6E events perman
000160: 65 6E 74 6C 79 20 20 66 72 6F 6D 0D 0A 20 20 20 ently from..
000170: 20 20 20 20 69 6E 73 69 64 65 20 61 20 73 79 6E inside a syn
000180: 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 20 20 chronous event
000190: 72 6F 75 74 69 6E 65 20 20 61 73 20 20 74 68 65 routine as the
0001A0: 20 20 70 72 65 76 69 6F 75 73 20 20 63 75 72 72 previous curr
0001B0: 65 6E 74 20 20 65 76 65 6E 74 0D 0A 20 20 20 20 ent event..
0001C0: 20 20 20 70 72 69 6F 72 69 74 79 20 69 73 20 72 priority is r
0001D0: 65 73 74 6F 72 65 64 20 77 68 65 6E 20 74 68 65 estored when the
0001E0: 20 65 76 65 6E 74 20 72 6F 75 74 69 6E 65 20 72 event routine r
0001F0: 65 74 75 72 6E 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 eturns.........
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E Related en
000010: 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tries:......
000020: 20 20 20 4B 4C 20 44 49 53 41 52 4D 20 45 56 45 KL DISARM EVE
000030: 4E 54 0D 0A 20 20 20 20 20 20 20 4B 4C 20 45 56 NT.. KL EV
000040: 45 4E 54 20 45 4E 41 42 4C 45 0D 0A 20 20 20 20 ENT ENABLE..
000050: 20 20 20 4B 4C 20 4E 45 58 54 20 53 59 4E 43 0D KL NEXT SYNC.
000060: 0A 20 20 20 20 20 20 20 4B 4C 20 50 4F 4C 4C 20 . KL POLL
000070: 53 59 4E 43 48 52 4F 4E 4F 55 53 0D 0A 0D 0A 0D SYNCHRONOUS.....
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000090: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
0000A0: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
0000D0: 31 35 2E 32 30 39 0D 0A 1A 20 20 20 20 20 20 20 15.209...
0000E0: 46 69 6C 6C 20 61 6E 20 61 72 65 61 20 6F 66 20 Fill an area of
0000F0: 74 68 65 20 73 63 72 65 65 6E 2E 0D 0A 0D 0A 20 the screen.....
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 31 37 33 3A 20 4B 4C 20 45 56 45 4E 54 173: KL EVENT
000020: 20 45 4E 41 42 4C 45 20 20 20 20 20 20 20 20 20 ENABLE
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 23 42 44 30 37 0D 0A 0D 0A 0D 0A 20 #BD07......
000060: 20 20 20 20 20 20 45 6E 61 62 6C 65 73 20 6E 6F Enables no
000070: 72 6D 61 6C 20 73 79 6E 63 68 72 6F 6E 6F 75 73 rmal synchronous
000080: 20 65 76 65 6E 74 73 2E 0D 0A 0D 0A 0D 0A 20 20 events.......
000090: 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A Action:....
0000A0: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 6F 77 20 6E .. Allow n
0000B0: 6F 72 6D 61 6C 20 61 6E 64 20 65 78 70 72 65 73 ormal and expres
0000C0: 73 20 73 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 s synchronous ev
0000D0: 65 6E 74 73 20 74 6F 20 62 65 20 70 72 6F 63 65 ents to be proce
0000E0: 73 73 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ssed.......
0000F0: 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F Entry conditio
000100: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
000110: 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A No conditions...
000120: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
000130: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D conditions:.....
000140: 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 72 72 75 . HL corru
000150: 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 pt... All
000160: 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 other registers
000170: 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A preserved.......
000180: 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D Notes:...
000190: 0A 0D 0A 20 20 20 20 20 20 20 45 76 65 6E 74 73 ... Events
0001A0: 20 61 72 65 20 65 6E 61 62 6C 65 64 20 62 79 20 are enabled by
0001B0: 64 65 66 61 75 6C 74 2E 20 4B 4C 20 45 56 45 4E default. KL EVEN
0001C0: 54 20 45 4E 41 42 4C 45 20 72 65 76 65 72 73 65 T ENABLE reverse
0001D0: 73 20 74 68 65 20 65 66 66 65 63 74 20 20 6F 66 s the effect of
0001E0: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 45 56 45 4E .. KL EVEN
0001F0: 54 20 44 49 53 41 42 4C 45 2E 0D 0A 0D 0A 0D 0A T DISABLE.......
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 49 74 20 69 73 20 6E 6F 74 It is not
000010: 20 70 6F 73 73 69 62 6C 65 20 74 6F 20 20 64 69 possible to di
000020: 73 61 62 6C 65 20 20 73 79 6E 63 68 72 6F 6E 6F sable synchrono
000030: 75 73 20 20 65 76 65 6E 74 73 20 20 70 65 72 6D us events perm
000040: 61 6E 65 6E 74 6C 79 20 20 66 72 6F 6D 0D 0A 20 anently from..
000050: 20 20 20 20 20 20 69 6E 73 69 64 65 20 61 20 73 inside a s
000060: 79 6E 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 ynchronous event
000070: 20 72 6F 75 74 69 6E 65 20 61 73 20 74 68 65 20 routine as the
000080: 63 75 72 72 65 6E 74 20 65 76 65 6E 74 20 70 72 current event pr
000090: 69 6F 72 69 74 79 20 77 68 69 63 68 0D 0A 20 20 iority which..
0000A0: 20 20 20 20 20 69 73 20 75 73 65 64 20 74 6F 20 is used to
0000B0: 64 69 73 61 62 6C 65 20 65 76 65 6E 74 73 20 69 disable events i
0000C0: 73 20 72 65 73 74 6F 72 65 64 20 77 68 65 6E 20 s restored when
0000D0: 74 68 65 20 65 76 65 6E 74 20 72 6F 75 74 69 6E the event routin
0000E0: 65 20 72 65 74 75 72 6E 73 2E 0D 0A 0D 0A 0D 0A e returns.......
0000F0: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
000100: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 entries:......
000110: 20 20 20 20 20 20 4B 4C 20 45 56 45 4E 54 20 44 KL EVENT D
000120: 49 53 41 42 4C 45 0D 0A 20 20 20 20 20 20 20 4B ISABLE.. K
000130: 4C 20 4E 45 58 54 20 53 59 4E 43 0D 0A 20 20 20 L NEXT SYNC..
000140: 20 20 20 20 4B 4C 20 50 4F 4C 4C 20 53 59 4E 43 KL POLL SYNC
000150: 48 52 4F 4E 4F 55 53 0D 0A 0D 0A 0D 0A 0D 0A 0D HRONOUS.........
000160: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000170: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D ....... AM
000180: 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 STRAD CPC464/664
000190: 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 /6128 FIRMWARE
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 page 15
0001C0: 2E 32 31 30 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A .210............
0001D0: 0D 0A 20 20 20 20 20 20 20 31 37 34 3A 20 4B 4C .. 174: KL
0001E0: 20 44 49 53 41 52 4D 20 45 56 45 4E 54 20 20 20 DISARM EVENT
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 20 20 20 20 20 23 42 44 30 41 0D #BD0A.
000020: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 50 72 65 76 ..... Prev
000030: 65 6E 74 20 61 6E 20 65 76 65 6E 74 20 66 72 6F ent an event fro
000040: 6D 20 6F 63 63 75 72 72 69 6E 67 2E 0D 0A 0D 0A m occurring.....
000050: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
000060: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 69 73 ...... Dis
000070: 61 72 6D 73 20 74 68 65 20 65 76 65 6E 74 20 62 arms the event b
000080: 79 20 73 65 74 74 69 6E 67 20 74 68 65 20 65 76 y setting the ev
000090: 65 6E 74 20 63 6F 75 6E 74 20 74 6F 20 61 20 6E ent count to a n
0000A0: 65 67 61 74 69 76 65 20 76 61 6C 75 65 2E 20 20 egative value.
0000B0: 41 6E 79 0D 0A 20 20 20 20 20 20 20 66 75 72 74 Any.. furt
0000C0: 68 65 72 20 27 6B 69 63 6B 73 27 20 28 63 61 6C her 'kicks' (cal
0000D0: 6C 73 20 6F 66 20 4B 4C 20 45 56 45 4E 54 29 20 ls of KL EVENT)
0000E0: 66 6F 72 20 74 68 65 20 65 76 65 6E 74 20 77 69 for the event wi
0000F0: 6C 6C 20 62 65 20 69 67 6E 6F 72 65 64 2C 20 61 ll be ignored, a
000100: 6E 79 0D 0A 20 20 20 20 20 20 20 6F 75 74 73 74 ny.. outst
000110: 61 6E 64 69 6E 67 20 65 76 65 6E 74 73 20 61 72 anding events ar
000120: 65 20 64 69 73 63 61 72 64 65 64 2E 0D 0A 0D 0A e discarded.....
000130: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
000140: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
000150: 20 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 HL contai
000160: 6E 73 20 74 68 65 20 61 64 64 72 65 73 73 20 6F ns the address o
000170: 66 20 74 68 65 20 65 76 65 6E 74 20 62 6C 6F 63 f the event bloc
000180: 6B 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 k....... E
000190: 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D xit conditions:.
0001A0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 20 63 ..... AF c
0001B0: 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 orrupt...
0001C0: 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 All other regist
0001D0: 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A ers preserved...
0001E0: 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 .... Notes
0001F0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C :...... KL
Size : 512 (Real : 512)
000000: 20 20 44 49 53 41 52 4D 20 20 45 56 45 4E 54 20 DISARM EVENT
000010: 20 73 68 6F 75 6C 64 20 20 6F 6E 6C 79 20 20 62 should only b
000020: 65 20 20 75 73 65 64 20 20 77 69 74 68 20 20 61 e used with a
000030: 73 79 6E 63 68 72 6F 6E 6F 75 73 20 20 65 76 65 synchronous eve
000040: 6E 74 73 2E 0D 0A 20 20 20 20 20 20 20 53 79 6E nts... Syn
000050: 63 68 72 6F 6E 6F 75 73 20 65 76 65 6E 74 73 20 chronous events
000060: 6D 61 79 20 62 65 20 64 69 73 61 72 6D 65 64 20 may be disarmed
000070: 20 62 79 20 20 63 61 6C 6C 69 6E 67 20 20 4B 4C by calling KL
000080: 20 20 44 45 4C 20 20 53 59 4E 43 48 52 4F 4E 4F DEL SYNCHRONO
000090: 55 53 2C 0D 0A 20 20 20 20 20 20 20 77 68 69 63 US,.. whic
0000A0: 68 20 61 6C 73 6F 20 65 6E 73 75 72 65 73 20 74 h also ensures t
0000B0: 68 61 74 20 74 68 65 20 65 76 65 6E 74 20 69 73 hat the event is
0000C0: 20 20 6E 6F 74 20 20 6F 6E 20 20 74 68 65 20 20 not on the
0000D0: 73 79 6E 63 68 72 6F 6E 6F 75 73 20 20 65 76 65 synchronous eve
0000E0: 6E 74 0D 0A 20 20 20 20 20 20 20 71 75 65 75 65 nt.. queue
0000F0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
000100: 65 20 65 76 65 6E 74 20 6D 61 79 20 62 65 20 72 e event may be r
000110: 65 61 72 6D 65 64 20 62 79 20 72 65 69 6E 69 74 earmed by reinit
000120: 69 61 6C 69 7A 69 6E 67 20 69 74 20 28 4B 4C 20 ializing it (KL
000130: 49 4E 49 54 20 20 45 56 45 4E 54 29 20 20 6F 72 INIT EVENT) or
000140: 20 20 62 79 0D 0A 20 20 20 20 20 20 20 73 65 74 by.. set
000150: 74 69 6E 67 20 74 68 65 20 65 76 65 6E 74 20 63 ting the event c
000160: 6F 75 6E 74 20 28 62 79 74 65 20 32 20 6F 66 20 ount (byte 2 of
000170: 74 68 65 20 65 76 65 6E 74 20 62 6C 6F 63 6B 29 the event block)
000180: 20 74 6F 20 7A 65 72 6F 2E 0D 0A 0D 0A 0D 0A 0D to zero........
000190: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
0001A0: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 entries:......
0001B0: 20 20 20 20 20 4B 4C 20 44 45 4C 20 53 59 4E 43 KL DEL SYNC
0001C0: 48 52 4F 4E 4F 55 53 0D 0A 20 20 20 20 20 20 20 HRONOUS..
0001D0: 4B 4C 20 49 4E 49 54 20 45 56 45 4E 54 0D 0A 0D KL INIT EVENT...
0001E0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001F0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
Size : 512 (Real : 512)
000000: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000010: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
000040: 31 35 2E 32 31 31 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.211..........
000050: 0D 0A 0D 0A 20 20 20 20 20 20 20 31 37 35 3A 20 .... 175:
000060: 4B 4C 20 54 49 4D 45 20 50 4C 45 41 53 45 20 20 KL TIME PLEASE
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 20 20 20 20 20 20 20 23 42 44 30 #BD0
0000A0: 44 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 73 D...... As
0000B0: 6B 20 74 68 65 20 65 6C 61 70 73 65 64 20 74 69 k the elapsed ti
0000C0: 6D 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 me.......
0000D0: 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 Action:......
0000E0: 20 20 20 20 54 68 65 20 4B 65 72 6E 65 6C 20 20 The Kernel
0000F0: 6D 61 69 6E 74 61 69 6E 73 20 20 61 20 20 63 6F maintains a co
000100: 75 6E 74 20 20 77 68 69 63 68 20 20 69 74 20 20 unt which it
000110: 69 6E 63 72 65 6D 65 6E 74 73 20 20 6F 6E 20 20 increments on
000120: 65 61 63 68 20 20 74 69 6D 65 0D 0A 20 20 20 20 each time..
000130: 20 20 20 69 6E 74 65 72 72 75 70 74 2E 20 54 68 interrupt. Th
000140: 65 20 63 6F 75 6E 74 2C 20 74 68 65 72 65 66 6F e count, therefo
000150: 72 65 2C 20 6D 65 61 73 75 72 65 73 20 74 69 6D re, measures tim
000160: 65 20 69 6E 20 31 2F 33 30 30 74 68 20 6F 66 20 e in 1/300th of
000170: 61 20 20 73 65 63 6F 6E 64 0D 0A 20 20 20 20 20 a second..
000180: 20 20 75 6E 69 74 73 2E 20 54 68 69 73 20 72 6F units. This ro
000190: 75 74 69 6E 65 20 72 65 74 75 72 6E 73 20 74 68 utine returns th
0001A0: 65 20 63 75 72 72 65 6E 74 20 63 6F 75 6E 74 2E e current count.
0001B0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 ...... Ent
0001C0: 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A ry conditions:..
0001D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 20 63 6F .... No co
0001E0: 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 20 nditions.......
0001F0: 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 Exit condi
Size : 512 (Real : 512)
000000: 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tions:......
000010: 20 20 20 44 45 48 4C 20 63 6F 6E 74 61 69 6E 73 DEHL contains
000020: 20 74 68 65 20 66 6F 75 72 20 62 79 74 65 20 63 the four byte c
000030: 6F 75 6E 74 20 28 44 20 20 63 6F 6E 74 61 69 6E ount (D contain
000040: 73 20 20 74 68 65 20 20 6D 6F 73 74 20 20 73 69 s the most si
000050: 67 6E 69 66 69 63 61 6E 74 0D 0A 20 20 20 20 20 gnificant..
000060: 20 20 62 79 74 65 20 61 6E 64 20 4C 20 74 68 65 byte and L the
000070: 20 6C 65 61 73 74 20 73 69 67 6E 69 66 69 63 61 least significa
000080: 6E 74 20 62 79 74 65 29 2E 0D 0A 0D 0A 0D 0A 20 nt byte).......
000090: 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 All other
0000A0: 72 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 registers preser
0000B0: 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ved.......
0000C0: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 Notes:......
0000D0: 20 20 20 20 54 68 65 20 63 6F 75 6E 74 20 69 73 The count is
0000E0: 20 7A 65 72 6F 69 7A 65 64 20 77 68 65 6E 20 74 zeroized when t
0000F0: 68 65 20 6D 61 63 68 69 6E 65 20 69 73 20 20 74 he machine is t
000100: 75 72 6E 65 64 20 20 6F 6E 20 20 6F 72 20 20 72 urned on or r
000110: 65 73 65 74 2E 20 20 54 68 65 0D 0A 20 20 20 20 eset. The..
000120: 20 20 20 63 6F 75 6E 74 20 6D 61 79 20 62 65 20 count may be
000130: 73 65 74 20 74 6F 20 61 6E 6F 74 68 65 72 20 73 set to another s
000140: 74 61 72 74 69 6E 67 20 76 61 6C 75 65 20 62 79 tarting value by
000150: 20 4B 4C 20 54 49 4D 45 20 53 45 54 2E 0D 0A 0D KL TIME SET....
000160: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 63 6F ... The co
000170: 75 6E 74 20 69 73 20 6E 6F 74 20 6B 65 70 74 20 unt is not kept
000180: 75 70 20 74 6F 20 64 61 74 65 20 69 66 20 69 6E up to date if in
000190: 74 65 72 72 75 70 74 73 20 61 72 65 20 64 69 73 terrupts are dis
0001A0: 61 62 6C 65 64 20 20 66 6F 72 20 20 6C 6F 6E 67 abled for long
0001B0: 0D 0A 20 20 20 20 20 20 20 70 65 72 69 6F 64 73 .. periods
0001C0: 2C 20 73 75 63 68 20 61 73 20 77 68 69 6C 65 20 , such as while
0001D0: 72 65 61 64 69 6E 67 20 61 6E 64 20 77 72 69 74 reading and writ
0001E0: 69 6E 67 20 74 68 65 20 63 61 73 73 65 74 74 65 ing the cassette
0001F0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
Size : 512 (Real : 512)
000000: 65 20 66 6F 75 72 20 62 79 74 65 20 63 6F 75 6E e four byte coun
000010: 74 20 6F 76 65 72 66 6C 6F 77 73 20 61 66 74 65 t overflows afte
000020: 72 20 61 70 70 72 6F 78 69 6D 61 74 65 6C 79 3A r approximately:
000030: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 ......
000040: 20 20 20 20 20 20 20 20 20 31 34 2C 33 31 36 2C 14,316,
000050: 35 35 38 20 53 65 63 6F 6E 64 73 0D 0A 20 20 20 558 Seconds..
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 3D 20 20 =
000070: 20 20 20 32 33 38 2C 36 30 39 20 4D 69 6E 75 74 238,609 Minut
000080: 65 73 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 es..
000090: 20 20 20 20 3D 20 20 20 20 20 20 20 33 2C 39 37 = 3,97
0000A0: 37 20 48 6F 75 72 73 0D 0A 20 20 20 20 20 20 20 7 Hours..
0000B0: 20 20 20 20 20 20 20 20 20 3D 20 20 20 20 20 20 =
0000C0: 20 20 20 31 36 36 20 44 61 79 73 0D 0A 0D 0A 20 166 Days....
0000D0: 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 This routi
0000E0: 6E 65 20 65 6E 61 62 6C 65 73 20 69 6E 74 65 72 ne enables inter
0000F0: 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 rupts.........
000100: 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 Related ent
000110: 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ries:......
000120: 20 20 4B 4C 20 54 49 4D 45 20 53 45 54 0D 0A 0D KL TIME SET...
000130: 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 ... AMSTRA
000140: 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 D CPC464/664/612
000150: 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 8 FIRMWARE
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 31 32 page 15.212
000180: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000190: 20 20 20 20 20 31 37 36 3A 20 4B 4C 20 54 49 4D 176: KL TIM
0001A0: 45 20 53 45 54 20 20 20 20 20 20 20 20 20 20 20 E SET
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 20 20 20 23 42 44 31 30 0D 0A 0D 0A 20 #BD10....
0001E0: 20 20 20 20 20 20 53 65 74 20 74 68 65 20 65 6C Set the el
0001F0: 61 70 73 65 64 20 74 69 6D 65 2E 0D 0A 0D 0A 20 apsed time.....
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D Action:...
000010: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 4B 65 ... The Ke
000020: 72 6E 65 6C 20 20 6D 61 69 6E 74 61 69 6E 73 20 rnel maintains
000030: 20 61 20 20 63 6F 75 6E 74 20 20 77 68 69 63 68 a count which
000040: 20 20 69 74 20 20 69 6E 63 72 65 6D 65 6E 74 73 it increments
000050: 20 20 6F 6E 20 20 65 61 63 68 20 20 74 69 6D 65 on each time
000060: 0D 0A 20 20 20 20 20 20 20 69 6E 74 65 72 72 75 .. interru
000070: 70 74 2E 20 54 68 65 20 63 6F 75 6E 74 2C 20 74 pt. The count, t
000080: 68 65 72 65 66 6F 72 65 2C 20 6D 65 61 73 75 72 herefore, measur
000090: 65 73 20 74 69 6D 65 20 69 6E 20 31 2F 33 30 30 es time in 1/300
0000A0: 74 68 20 6F 66 20 61 20 20 73 65 63 6F 6E 64 0D th of a second.
0000B0: 0A 20 20 20 20 20 20 20 75 6E 69 74 73 2E 20 54 . units. T
0000C0: 68 69 73 20 72 6F 75 74 69 6E 65 20 73 65 74 73 his routine sets
0000D0: 20 74 68 65 20 63 6F 75 6E 74 20 74 6F 20 61 20 the count to a
0000E0: 67 69 76 65 6E 20 76 61 6C 75 65 2E 0D 0A 0D 0A given value.....
0000F0: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
000100: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
000110: 20 20 20 20 20 20 20 44 45 48 4C 20 63 6F 6E 74 DEHL cont
000120: 61 69 6E 73 20 74 68 65 20 66 6F 75 72 20 62 79 ains the four by
000130: 74 65 20 63 6F 75 6E 74 20 28 44 20 20 63 6F 6E te count (D con
000140: 74 61 69 6E 73 20 20 74 68 65 20 20 6D 6F 73 74 tains the most
000150: 20 20 73 69 67 6E 69 66 69 63 61 6E 74 0D 0A 20 significant..
000160: 20 20 20 20 20 20 62 79 74 65 20 61 6E 64 20 4C byte and L
000170: 20 74 68 65 20 6C 65 61 73 74 20 73 69 67 6E 69 the least signi
000180: 66 69 63 61 6E 74 20 62 79 74 65 29 2E 0D 0A 0D ficant byte)....
000190: 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 ... Exit c
0001A0: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
0001B0: 20 20 20 20 20 20 20 41 46 20 63 6F 72 72 75 70 AF corrup
0001C0: 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F t... All o
0001D0: 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 ther registers p
0001E0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
0001F0: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 6F 75 .. The fou
000010: 72 20 62 79 74 65 20 63 6F 75 6E 74 20 6F 76 65 r byte count ove
000020: 72 66 6C 6F 77 73 20 61 66 74 65 72 20 61 70 70 rflows after app
000030: 72 6F 78 69 6D 61 74 65 6C 79 3A 0D 0A 0D 0A 0D roximately:.....
000040: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000050: 20 20 20 20 31 34 2C 33 31 36 2C 35 35 38 20 53 14,316,558 S
000060: 65 63 6F 6E 64 73 0D 0A 20 20 20 20 20 20 20 20 econds..
000070: 20 20 20 20 20 20 20 20 3D 20 20 20 20 20 32 33 = 23
000080: 38 2C 36 30 39 20 4D 69 6E 75 74 65 73 0D 0A 20 8,609 Minutes..
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3D =
0000A0: 20 20 20 20 20 20 20 33 2C 39 37 37 20 48 6F 75 3,977 Hou
0000B0: 72 73 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 rs..
0000C0: 20 20 20 20 3D 20 20 20 20 20 20 20 20 20 31 36 = 16
0000D0: 36 20 44 61 79 73 0D 0A 0D 0A 0D 0A 20 20 20 20 6 Days......
0000E0: 20 20 20 4B 4C 20 54 49 4D 45 20 53 45 54 20 6D KL TIME SET m
0000F0: 61 79 20 62 65 20 75 73 65 64 20 74 6F 20 73 65 ay be used to se
000100: 74 20 74 68 65 20 63 6F 75 6E 74 20 74 6F 20 74 t the count to t
000110: 68 65 20 61 63 74 75 61 6C 20 74 69 6D 65 20 6F he actual time o
000120: 66 20 64 61 79 2C 20 73 6F 0D 0A 20 20 20 20 20 f day, so..
000130: 20 20 74 68 61 74 20 74 68 65 20 4B 65 72 6E 65 that the Kerne
000140: 6C 20 74 68 65 6E 20 6D 61 69 6E 74 61 69 6E 73 l then maintains
000150: 20 61 20 20 72 65 61 6C 20 20 63 6C 6F 63 6B 20 a real clock
000160: 20 72 61 74 68 65 72 20 20 74 68 61 6E 20 20 61 rather than a
000170: 20 20 73 69 6D 70 6C 65 0D 0A 20 20 20 20 20 20 simple..
000180: 20 6D 65 61 73 75 72 65 20 6F 66 20 74 68 65 20 measure of the
000190: 74 69 6D 65 20 65 6C 61 70 73 65 64 20 73 69 6E time elapsed sin
0001A0: 63 65 20 74 68 65 20 6C 61 73 74 20 72 65 73 65 ce the last rese
0001B0: 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 t....... T
0001C0: 68 65 20 63 6F 75 6E 74 20 69 73 20 6E 6F 74 20 he count is not
0001D0: 6B 65 70 74 20 75 70 20 74 6F 20 64 61 74 65 20 kept up to date
0001E0: 69 66 20 69 6E 74 65 72 72 75 70 74 73 20 61 72 if interrupts ar
0001F0: 65 20 64 69 73 61 62 6C 65 64 20 20 66 6F 72 20 e disabled for
Size : 512 (Real : 512)
000000: 20 6C 6F 6E 67 0D 0A 20 20 20 20 20 20 20 70 65 long.. pe
000010: 72 69 6F 64 73 2C 20 73 75 63 68 20 61 73 20 77 riods, such as w
000020: 68 69 6C 65 20 72 65 61 64 69 6E 67 20 61 6E 64 hile reading and
000030: 20 77 72 69 74 69 6E 67 20 74 68 65 20 63 61 73 writing the cas
000040: 73 65 74 74 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 sette.......
000050: 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 This routine
000060: 65 6E 61 62 6C 65 73 20 69 6E 74 65 72 72 75 70 enables interrup
000070: 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ts.........
000080: 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 Related entrie
000090: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B s:...... K
0000A0: 4C 20 54 49 4D 45 20 50 4C 45 41 53 45 0D 0A 0D L TIME PLEASE...
0000B0: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D ....... AM
0000C0: 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 STRAD CPC464/664
0000D0: 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 /6128 FIRMWARE
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 page 15
000100: 2E 32 31 33 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A .213............
000110: 0D 0A 20 20 20 20 20 20 20 31 37 37 3A 20 4D 43 .. 177: MC
000120: 20 42 4F 4F 54 20 50 52 4F 47 52 41 4D 20 20 20 BOOT PROGRAM
000130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 20 20 23 42 44 31 33 0D #BD13.
000160: 0A 0D 0A 20 20 20 20 20 20 20 4C 6F 61 64 20 61 ... Load a
000170: 6E 64 20 72 75 6E 20 61 20 70 72 6F 67 72 61 6D nd run a program
000180: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 ..... Acti
000190: 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 68 on:.... Sh
0001A0: 75 74 20 64 6F 77 6E 20 61 73 20 6D 75 63 68 20 ut down as much
0001B0: 6F 66 20 74 68 65 20 73 79 73 74 65 6D 20 61 73 of the system as
0001C0: 20 70 6F 73 73 69 62 6C 65 20 74 68 65 6E 20 6C possible then l
0001D0: 6F 61 64 20 61 20 20 70 72 6F 67 72 61 6D 20 20 oad a program
0001E0: 69 6E 74 6F 0D 0A 20 20 20 20 20 20 20 52 41 4D into.. RAM
0001F0: 20 61 6E 64 20 72 75 6E 20 69 74 2E 20 49 66 20 and run it. If
Size : 512 (Real : 512)
000000: 74 68 65 20 6C 6F 61 64 20 66 61 69 6C 73 20 74 the load fails t
000010: 68 65 6E 20 74 68 65 20 70 72 65 76 69 6F 75 73 hen the previous
000020: 20 66 6F 72 65 67 72 6F 75 6E 64 20 70 72 6F 67 foreground prog
000030: 72 61 6D 0D 0A 20 20 20 20 20 20 20 69 73 20 72 ram.. is r
000040: 65 73 74 61 72 74 65 64 2E 0D 0A 0D 0A 20 20 20 estarted.....
000050: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000060: 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 ions:....
000070: 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 HL contains the
000080: 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 20 72 address of the r
000090: 6F 75 74 69 6E 65 20 74 6F 20 63 61 6C 6C 20 74 outine to call t
0000A0: 6F 20 6C 6F 61 64 20 74 68 65 20 70 72 6F 67 72 o load the progr
0000B0: 61 6D 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 am..... Ex
0000C0: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
0000D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 44 6F 65 73 20 .... Does
0000E0: 6E 6F 74 20 65 78 69 74 21 0D 0A 0D 0A 20 20 20 not exit!....
0000F0: 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 Notes:....
000100: 20 20 20 20 20 54 68 65 20 73 79 73 74 65 6D 20 The system
000110: 69 73 20 70 61 72 74 69 61 6C 6C 79 20 72 65 73 is partially res
000120: 65 74 20 62 65 66 6F 72 65 20 61 74 74 65 6D 70 et before attemp
000130: 74 69 6E 67 20 74 6F 20 6C 6F 61 64 20 20 74 68 ting to load th
000140: 65 20 20 70 72 6F 67 72 61 6D 2E 0D 0A 20 20 20 e program...
000150: 20 20 20 20 45 78 74 65 72 6E 61 6C 20 69 6E 74 External int
000160: 65 72 72 75 70 74 73 20 61 72 65 20 64 69 73 61 errupts are disa
000170: 62 6C 65 64 2C 20 61 73 20 61 72 65 20 61 6C 6C bled, as are all
000180: 20 74 69 6D 65 72 2C 20 66 72 61 6D 65 20 66 6C timer, frame fl
000190: 79 62 61 63 6B 20 20 61 6E 64 0D 0A 20 20 20 20 yback and..
0001A0: 20 20 20 6B 65 79 62 6F 61 72 64 20 62 72 65 61 keyboard brea
0001B0: 6B 20 65 76 65 6E 74 73 2E 20 53 6F 75 6E 64 20 k events. Sound
0001C0: 67 65 6E 65 72 61 74 69 6F 6E 20 69 73 20 20 74 generation is t
0001D0: 75 72 6E 65 64 20 20 6F 66 66 2C 20 20 69 6E 64 urned off, ind
0001E0: 69 72 65 63 74 69 6F 6E 73 0D 0A 20 20 20 20 20 irections..
0001F0: 20 20 61 72 65 20 73 65 74 20 74 6F 20 74 68 65 are set to the
Size : 512 (Real : 512)
000000: 69 72 20 64 65 66 61 75 6C 74 20 72 6F 75 74 69 ir default routi
000010: 6E 65 73 20 20 61 6E 64 20 20 74 68 65 20 20 73 nes and the s
000020: 74 61 63 6B 20 20 69 73 20 20 72 65 73 65 74 20 tack is reset
000030: 20 74 6F 20 20 74 68 65 0D 0A 20 20 20 20 20 20 to the..
000040: 20 64 65 66 61 75 6C 74 20 73 79 73 74 65 6D 20 default system
000050: 73 74 61 63 6B 2E 20 54 68 69 73 20 70 72 6F 63 stack. This proc
000060: 65 73 73 20 65 6E 73 75 72 65 73 20 74 68 61 74 ess ensures that
000070: 20 6E 6F 20 6D 65 6D 6F 72 79 20 6F 75 74 73 69 no memory outsi
000080: 64 65 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 de the..
000090: 66 69 72 6D 77 61 72 65 20 20 76 61 72 69 61 62 firmware variab
0000A0: 6C 65 73 20 20 61 72 65 61 20 20 69 73 20 20 69 les area is i
0000B0: 6E 20 20 75 73 65 20 20 77 68 65 6E 20 20 6C 6F n use when lo
0000C0: 61 64 69 6E 67 20 20 20 74 68 65 20 20 20 70 72 ading the pr
0000D0: 6F 67 72 61 6D 2E 0D 0A 20 20 20 20 20 20 20 4F ogram... O
0000E0: 76 65 72 77 72 69 74 69 6E 67 20 20 61 6E 20 20 verwriting an
0000F0: 61 63 74 69 76 65 20 20 65 76 65 6E 74 20 20 62 active event b
000100: 6C 6F 63 6B 20 20 6F 72 20 20 69 6E 64 69 72 65 lock or indire
000110: 63 74 69 6F 6E 20 20 72 6F 75 74 69 6E 65 20 20 ction routine
000120: 63 6F 75 6C 64 0D 0A 20 20 20 20 20 20 20 6F 74 could.. ot
000130: 68 65 72 77 69 73 65 20 68 61 76 65 20 75 6E 66 herwise have unf
000140: 6F 72 74 75 6E 61 74 65 20 63 6F 6E 73 65 71 75 ortunate consequ
000150: 65 6E 63 65 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 ences.....
000160: 20 54 68 65 20 70 61 72 74 69 61 6C 20 73 79 73 The partial sys
000170: 74 65 6D 20 20 72 65 73 65 74 20 20 64 6F 65 73 tem reset does
000180: 20 20 6E 6F 74 20 20 63 68 61 6E 67 65 20 20 74 not change t
000190: 68 65 20 20 52 4F 4D 20 20 73 74 61 74 65 20 20 he ROM state
0001A0: 6F 72 20 20 52 4F 4D 0D 0A 20 20 20 20 20 20 20 or ROM..
0001B0: 73 65 6C 65 63 74 69 6F 6E 2E 20 54 68 65 20 72 selection. The r
0001C0: 6F 75 74 69 6E 65 20 72 75 6E 20 74 6F 20 6C 6F outine run to lo
0001D0: 61 64 20 74 68 65 20 70 72 6F 67 72 61 6D 20 6D ad the program m
0001E0: 75 73 74 20 62 65 20 20 69 6E 20 20 61 63 63 65 ust be in acce
0001F0: 73 73 69 62 6C 65 0D 0A 20 20 20 20 20 20 20 52 ssible.. R
Size : 512 (Real : 512)
000000: 41 4D 20 6F 72 20 61 6E 20 65 6E 61 62 6C 65 64 AM or an enabled
000010: 20 52 4F 4D 2E 20 20 4E 6F 74 65 20 20 74 68 61 ROM. Note tha
000020: 74 20 20 74 68 65 20 20 66 69 72 6D 77 61 72 65 t the firmware
000030: 20 20 6A 75 6D 70 62 6C 6F 63 6B 20 20 6E 6F 72 jumpblock nor
000040: 6D 61 6C 6C 79 0D 0A 20 20 20 20 20 20 20 65 6E mally.. en
000050: 61 62 6C 65 73 20 74 68 65 20 6C 6F 77 65 72 20 ables the lower
000060: 52 4F 4D 20 61 6E 64 20 64 69 73 61 62 6C 65 73 ROM and disables
000070: 20 74 68 65 20 75 70 70 65 72 20 52 4F 4D 20 61 the upper ROM a
000080: 6E 64 20 20 73 6F 20 20 74 68 65 20 20 72 6F 75 nd so the rou
000090: 74 69 6E 65 0D 0A 20 20 20 20 20 20 20 6D 75 73 tine.. mus
0000A0: 74 20 6E 6F 72 6D 61 6C 6C 79 20 62 65 20 69 6E t normally be in
0000B0: 20 52 41 4D 20 61 62 6F 76 65 20 23 34 30 30 30 RAM above #4000
0000C0: 20 6F 72 20 69 6E 20 74 68 65 20 6C 6F 77 65 72 or in the lower
0000D0: 20 52 4F 4D 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 ROM.....
0000E0: 54 68 65 20 72 6F 75 74 69 6E 65 20 72 75 6E 20 The routine run
0000F0: 74 6F 20 6C 6F 61 64 20 74 68 65 20 70 72 6F 67 to load the prog
000100: 72 61 6D 20 69 73 20 66 72 65 65 20 20 74 6F 20 ram is free to
000110: 20 75 73 65 20 20 61 6E 79 20 20 73 74 6F 72 65 use any store
000120: 20 20 66 72 6F 6D 0D 0A 20 20 20 20 20 20 20 23 from.. #
000130: 30 30 34 30 20 75 70 20 74 6F 20 74 68 65 20 62 0040 up to the b
000140: 61 73 65 20 6F 66 20 74 68 65 20 66 69 72 6D 77 ase of the firmw
000150: 61 72 65 20 76 61 72 69 61 62 6C 65 73 20 61 72 are variables ar
000160: 65 61 20 20 28 23 42 31 30 30 29 20 20 61 6E 64 ea (#B100) and
000170: 20 20 6D 61 79 0D 0A 20 20 20 20 20 20 20 61 6C may.. al
000180: 74 65 72 20 69 6E 64 69 72 65 63 74 69 6F 6E 73 ter indirections
000190: 20 61 6E 64 20 61 72 6D 20 65 78 74 65 72 6E 61 and arm externa
0001A0: 6C 20 64 65 76 69 63 65 20 69 6E 74 65 72 72 75 l device interru
0001B0: 70 74 73 20 61 73 20 72 65 71 75 69 72 65 64 2E pts as required.
0001C0: 20 20 49 74 0D 0A 20 20 20 20 20 20 20 73 68 6F It.. sho
0001D0: 75 6C 64 20 6F 62 65 79 20 74 68 65 20 66 6F 6C uld obey the fol
0001E0: 6C 6F 77 69 6E 67 20 65 78 69 74 20 63 6F 6E 64 lowing exit cond
0001F0: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 49 66 20 74 68 If th
000010: 65 20 70 72 6F 67 72 61 6D 20 6C 6F 61 64 65 64 e program loaded
000020: 20 73 75 63 63 65 73 73 66 75 6C 6C 79 3A 0D 0A successfully:..
000030: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000040: 20 20 20 20 20 20 20 20 20 20 20 20 43 61 72 72 Carr
000050: 79 20 74 72 75 65 2E 0D 0A 20 20 20 20 20 20 20 y true...
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 HL contains t
000080: 68 65 20 70 72 6F 67 72 61 6D 20 65 6E 74 72 79 he program entry
000090: 20 70 6F 69 6E 74 2E 0D 0A 0D 0A 20 20 20 20 20 point.....
0000A0: 20 20 20 20 20 20 20 20 20 20 20 49 66 20 74 68 If th
0000B0: 65 20 70 72 6F 67 72 61 6D 20 66 61 69 6C 65 64 e program failed
0000C0: 20 74 6F 20 6C 6F 61 64 3A 0D 0A 0D 0A 20 20 20 to load:....
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000E0: 20 20 20 20 20 20 20 43 61 72 72 79 20 66 61 6C Carry fal
0000F0: 73 65 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 se...
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 H
000110: 4C 20 63 6F 72 72 75 70 74 2E 0D 0A 0D 0A 20 20 L corrupt.....
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6C Al
000130: 77 61 79 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 ways:....
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 41 2C 20 42 43 2C 20 44 45 2C 49 58 2C A, BC, DE,IX,
000160: 49 59 20 61 6E 64 20 6F 74 68 65 72 20 66 6C 61 IY and other fla
000170: 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 0D 0A 0D gs corrupt......
000180: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D ....... AM
000190: 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 STRAD CPC464/664
0001A0: 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 /6128 FIRMWARE
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 page 15
0001D0: 2E 32 31 34 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A .214............
0001E0: 0D 0A 20 20 20 20 20 20 20 41 66 74 65 72 20 61 .. After a
0001F0: 20 73 75 63 63 65 73 73 66 75 6C 20 6C 6F 61 64 successful load
Size : 512 (Real : 512)
000000: 20 74 68 65 20 66 69 72 6D 77 61 72 65 20 69 73 the firmware is
000010: 20 63 6F 6D 70 6C 65 74 65 6C 79 20 69 6E 69 74 completely init
000020: 69 61 6C 69 7A 65 64 20 28 61 73 20 20 61 74 0D ialized (as at.
000030: 0A 20 20 20 20 20 20 20 45 4D 53 29 20 61 6E 64 . EMS) and
000040: 20 74 68 65 20 70 72 6F 67 72 61 6D 20 69 73 20 the program is
000050: 65 6E 74 65 72 65 64 20 61 74 20 74 68 65 20 65 entered at the e
000060: 6E 74 72 79 20 61 64 64 72 65 73 73 20 72 65 74 ntry address ret
000070: 75 72 6E 65 64 20 20 62 79 20 20 74 68 65 0D 0A urned by the..
000080: 20 20 20 20 20 20 20 6C 6F 61 64 20 72 6F 75 74 load rout
000090: 69 6E 65 2E 20 20 52 65 74 75 72 6E 69 6E 67 20 ine. Returning
0000A0: 20 66 72 6F 6D 20 20 74 68 65 20 20 70 72 6F 67 from the prog
0000B0: 72 61 6D 20 20 77 69 6C 6C 20 20 72 65 73 65 74 ram will reset
0000C0: 20 20 74 68 65 20 20 73 79 73 74 65 6D 0D 0A 20 the system..
0000D0: 20 20 20 20 20 20 28 70 65 72 66 6F 72 6D 20 52 (perform R
0000E0: 53 54 20 30 29 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 ST 0).......
0000F0: 20 20 20 41 66 74 65 72 20 61 6E 20 75 6E 73 75 After an unsu
000100: 63 63 65 73 73 66 75 6C 20 6C 6F 61 64 20 61 6E ccessful load an
000110: 20 61 70 70 72 6F 70 72 69 61 74 65 20 65 72 72 appropriate err
000120: 6F 72 20 6D 65 73 73 61 67 65 20 69 73 20 70 72 or message is pr
000130: 69 6E 74 65 64 20 61 6E 64 0D 0A 20 20 20 20 20 inted and..
000140: 20 20 74 68 65 20 20 70 72 65 76 69 6F 75 73 20 the previous
000150: 20 66 6F 72 65 67 72 6F 75 6E 64 20 20 70 72 6F foreground pro
000160: 67 72 61 6D 20 20 69 73 20 20 72 65 73 74 61 72 gram is restar
000170: 74 65 64 2E 20 20 49 66 20 20 74 68 65 20 20 20 ted. If the
000180: 70 72 65 76 69 6F 75 73 0D 0A 20 20 20 20 20 20 previous..
000190: 20 66 6F 72 65 67 72 6F 75 6E 64 20 70 72 6F 67 foreground prog
0001A0: 72 61 6D 20 77 61 73 20 69 74 73 65 6C 66 20 61 ram was itself a
0001B0: 20 52 41 4D 20 70 72 6F 67 72 61 6D 20 74 68 65 RAM program the
0001C0: 6E 20 74 68 65 20 20 64 65 66 61 75 6C 74 20 20 n the default
0001D0: 52 4F 4D 20 20 69 73 0D 0A 20 20 20 20 20 20 20 ROM is..
0001E0: 65 6E 74 65 72 65 64 20 69 6E 73 74 65 61 64 20 entered instead
0001F0: 61 73 20 74 68 65 20 70 72 6F 67 72 61 6D 20 6D as the program m
Size : 512 (Real : 512)
000000: 61 79 20 20 68 61 76 65 20 20 62 65 65 6E 20 20 ay have been
000010: 63 6F 72 72 75 70 74 65 64 20 20 64 75 72 69 6E corrupted durin
000020: 67 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 66 g the.. f
000030: 61 69 6C 65 64 20 6C 6F 61 64 69 6E 67 2E 0D 0A ailed loading...
000040: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C ...... Rel
000050: 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D ated entries:...
000060: 0A 0D 0A 20 20 20 20 20 20 20 43 41 53 20 49 4E ... CAS IN
000070: 20 44 49 52 45 43 54 0D 0A 20 20 20 20 20 20 20 DIRECT..
000080: 4B 4C 20 43 48 4F 4B 45 20 4F 46 46 0D 0A 20 20 KL CHOKE OFF..
000090: 20 20 20 20 20 4D 43 20 53 54 41 52 54 20 50 52 MC START PR
0000A0: 4F 47 52 41 4D 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D OGRAM...........
0000B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000E0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000F0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 ..... AMST
000100: 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 RAD CPC464/664/6
000110: 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 128 FIRMWARE
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 page 15.2
000140: 31 35 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15..............
000150: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 37 38 ...... 178
000160: 3A 20 4D 43 20 53 54 41 52 54 20 50 52 4F 47 52 : MC START PROGR
000170: 41 4D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 AM
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
0001A0: 44 31 36 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 D16......
0001B0: 52 75 6E 20 61 20 66 6F 72 65 67 72 6F 75 6E 64 Run a foreground
0001C0: 20 70 72 6F 67 72 61 6D 2E 0D 0A 0D 0A 0D 0A 20 program.......
0001D0: 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D Action:...
0001E0: 0A 0D 0A 20 20 20 20 20 20 20 46 75 6C 6C 79 20 ... Fully
0001F0: 69 6E 69 74 69 61 6C 69 7A 65 20 74 68 65 20 73 initialize the s
Size : 512 (Real : 512)
000000: 79 73 74 65 6D 20 61 6E 64 20 65 6E 74 65 72 20 ystem and enter
000010: 61 20 70 72 6F 67 72 61 6D 2E 0D 0A 0D 0A 0D 0A a program.......
000020: 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E Entry con
000030: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 ditions:......
000040: 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 HL contains
000050: 20 74 68 65 20 65 6E 74 72 79 20 70 6F 69 6E 74 the entry point
000060: 20 61 64 64 72 65 73 73 2E 0D 0A 20 20 20 20 20 address...
000070: 20 20 43 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 C contains the
000080: 20 72 65 71 75 69 72 65 64 20 52 4F 4D 20 73 65 required ROM se
000090: 6C 65 63 74 69 6F 6E 2E 0D 0A 0D 0A 0D 0A 20 20 lection.......
0000A0: 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 Exit condit
0000B0: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
0000C0: 20 20 4E 65 76 65 72 20 65 78 69 74 73 21 0D 0A Never exits!..
0000D0: 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D .. Notes:.
0000E0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 4C 20 61 ..... HL a
0000F0: 6E 64 20 43 20 63 6F 6D 70 72 69 73 65 20 20 74 nd C comprise t
000100: 68 65 20 20 27 66 61 72 20 20 61 64 64 72 65 73 he 'far addres
000110: 73 27 20 20 6F 66 20 20 74 68 65 20 20 65 6E 74 s' of the ent
000120: 72 79 20 20 70 6F 69 6E 74 20 20 6F 66 20 20 74 ry point of t
000130: 68 65 0D 0A 20 20 20 20 20 20 20 66 6F 72 65 67 he.. foreg
000140: 72 6F 75 6E 64 20 70 72 6F 67 72 61 6D 20 28 73 round program (s
000150: 65 65 20 73 65 63 74 69 6F 6E 20 32 29 2E 0D 0A ee section 2)...
000160: 0D 0A 0D 0A 20 20 20 20 20 20 20 57 68 65 6E 20 .... When
000170: 65 6E 74 65 72 69 6E 67 20 61 20 66 6F 72 65 67 entering a foreg
000180: 72 6F 75 6E 64 20 70 72 6F 67 72 61 6D 20 69 6E round program in
000190: 20 52 4F 4D 20 74 68 65 20 52 4F 4D 20 73 65 6C ROM the ROM sel
0001A0: 65 63 74 69 6F 6E 20 73 68 6F 75 6C 64 20 20 62 ection should b
0001B0: 65 0D 0A 20 20 20 20 20 20 20 74 68 61 74 20 20 e.. that
0001C0: 72 65 71 75 69 72 65 64 20 20 74 6F 20 20 73 65 required to se
0001D0: 6C 65 63 74 20 20 74 68 65 20 20 61 70 70 72 6F lect the appro
0001E0: 70 72 69 61 74 65 20 20 52 4F 4D 2E 20 20 57 68 priate ROM. Wh
0001F0: 65 6E 20 20 65 6E 74 65 72 69 6E 67 20 20 20 61 en entering a
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 66 6F 72 65 67 72 6F .. foregro
000010: 75 6E 64 20 70 72 6F 67 72 61 6D 20 69 6E 20 52 und program in R
000020: 41 4D 20 74 68 65 20 52 4F 4D 20 73 65 6C 65 63 AM the ROM selec
000030: 74 69 6F 6E 20 73 68 6F 75 6C 64 20 62 65 20 75 tion should be u
000040: 73 65 64 20 20 74 6F 20 20 65 6E 61 62 6C 65 0D sed to enable.
000050: 0A 20 20 20 20 20 20 20 6F 72 20 64 69 73 61 62 . or disab
000060: 6C 65 20 52 4F 4D 73 20 61 73 20 74 68 65 20 52 le ROMs as the R
000070: 41 4D 20 70 72 6F 67 72 61 6D 20 72 65 71 75 69 AM program requi
000080: 72 65 73 20 28 52 4F 4D 20 73 65 6C 65 63 74 20 res (ROM select
000090: 61 64 64 72 65 73 73 65 73 20 23 46 43 2E 0D 0A addresses #FC...
0000A0: 20 20 20 20 20 20 20 2E 23 46 46 29 2E 0D 0A 0D .#FF)....
0000B0: 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 ... This r
0000C0: 6F 75 74 69 6E 65 20 63 61 72 72 69 65 73 20 6F outine carries o
0000D0: 75 74 20 61 20 66 75 6C 6C 20 45 4D 53 20 20 69 ut a full EMS i
0000E0: 6E 69 74 69 61 6C 69 7A 61 74 69 6F 6E 20 20 6F nitialization o
0000F0: 66 20 20 74 68 65 20 20 66 69 72 6D 77 61 72 65 f the firmware
000100: 0D 0A 20 20 20 20 20 20 20 62 65 66 6F 72 65 20 .. before
000110: 65 6E 74 65 72 69 6E 67 20 74 68 65 20 70 72 6F entering the pro
000120: 67 72 61 6D 2E 20 52 65 74 75 72 6E 69 6E 67 20 gram. Returning
000130: 66 72 6F 6D 20 74 68 65 20 70 72 6F 67 72 61 6D from the program
000140: 20 77 69 6C 6C 20 72 65 73 65 74 20 74 68 65 0D will reset the.
000150: 0A 20 20 20 20 20 20 20 73 79 73 74 65 6D 20 28 . system (
000160: 70 65 72 66 6F 72 6D 20 52 53 54 20 30 29 2E 0D perform RST 0)..
000170: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4D 43 20 53 ..... MC S
000180: 54 41 52 54 20 50 52 4F 47 52 41 4D 20 69 73 20 TART PROGRAM is
000190: 69 6E 74 65 6E 64 65 64 20 66 6F 72 20 72 75 6E intended for run
0001A0: 6E 69 6E 67 20 70 72 6F 67 72 61 6D 73 20 69 6E ning programs in
0001B0: 20 52 4F 4D 20 20 6F 72 20 20 70 72 6F 67 72 61 ROM or progra
0001C0: 6D 73 0D 0A 20 20 20 20 20 20 20 74 68 61 74 20 ms.. that
0001D0: 68 61 76 65 20 61 6C 72 65 61 64 79 20 62 65 65 have already bee
0001E0: 6E 20 6C 6F 61 64 65 64 20 69 6E 74 6F 20 52 41 n loaded into RA
0001F0: 4D 2E 20 54 6F 20 6C 6F 61 64 20 61 6E 64 20 72 M. To load and r
Size : 512 (Real : 512)
000000: 75 6E 20 61 20 52 41 4D 20 20 70 72 6F 67 72 61 un a RAM progra
000010: 6D 0D 0A 20 20 20 20 20 20 20 75 73 65 20 4D 43 m.. use MC
000020: 20 42 4F 4F 54 20 50 52 4F 47 52 41 4D 2E 0D 0A BOOT PROGRAM...
000030: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
000040: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 entries:....
000050: 20 20 20 20 4D 43 20 42 4F 4F 54 20 50 52 4F 47 MC BOOT PROG
000060: 52 41 4D 0D 0A 20 20 20 20 20 20 20 52 45 53 45 RAM.. RESE
000070: 54 20 45 4E 54 52 59 20 28 52 53 54 20 30 29 0D T ENTRY (RST 0).
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000090: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
0000A0: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
0000B0: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
0000D0: 65 20 31 35 2E 32 31 36 0D 0A 0D 0A 0D 0A 0D 0A e 15.216........
0000E0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 37 39 ...... 179
0000F0: 3A 20 4D 43 20 57 41 49 54 20 46 4C 59 42 41 43 : MC WAIT FLYBAC
000100: 4B 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 K
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
000130: 44 31 39 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 D19......
000140: 57 61 69 74 20 66 6F 72 20 66 72 61 6D 65 20 66 Wait for frame f
000150: 6C 79 62 61 63 6B 2E 0D 0A 0D 0A 0D 0A 20 20 20 lyback.......
000160: 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D Action:.....
000170: 0A 20 20 20 20 20 20 20 57 61 69 74 20 75 6E 74 . Wait unt
000180: 69 6C 20 66 72 61 6D 65 20 66 6C 79 62 61 63 6B il frame flyback
000190: 20 6F 63 63 75 72 73 2E 0D 0A 0D 0A 0D 0A 20 20 occurs.......
0001A0: 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 Entry condi
0001B0: 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tions:......
0001C0: 20 20 20 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 No conditions
0001D0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 ....... Ex
0001E0: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
0001F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 72 .... All r
Size : 512 (Real : 512)
000000: 65 67 69 73 74 65 72 73 20 61 6E 64 20 66 6C 61 egisters and fla
000010: 67 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D gs preserved....
000020: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A ... Notes:
000030: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 72 61 ...... Fra
000040: 6D 65 20 66 6C 79 62 61 63 6B 20 69 73 20 61 20 me flyback is a
000050: 73 69 67 6E 61 6C 20 67 65 6E 65 72 61 74 65 64 signal generated
000060: 20 62 79 20 74 68 65 20 43 52 54 20 20 63 6F 6E by the CRT con
000070: 74 72 6F 6C 6C 65 72 20 20 74 6F 20 20 73 69 67 troller to sig
000080: 6E 61 6C 0D 0A 20 20 20 20 20 20 20 74 68 65 20 nal.. the
000090: 73 74 61 72 74 20 6F 66 20 74 68 65 20 76 65 72 start of the ver
0000A0: 74 69 63 61 6C 20 20 72 65 74 72 61 63 65 20 20 tical retrace
0000B0: 70 65 72 69 6F 64 2E 20 20 44 75 72 69 6E 67 20 period. During
0000C0: 20 74 68 69 73 20 20 70 65 72 69 6F 64 20 20 74 this period t
0000D0: 68 65 0D 0A 20 20 20 20 20 20 20 73 63 72 65 65 he.. scree
0000E0: 6E 20 69 73 20 6E 6F 74 20 62 65 69 6E 67 20 77 n is not being w
0000F0: 72 69 74 74 65 6E 20 61 6E 64 20 73 6F 20 6D 61 ritten and so ma
000100: 6A 6F 72 20 6F 70 65 72 61 74 69 6F 6E 73 20 63 jor operations c
000110: 61 6E 20 20 62 65 20 20 70 65 72 66 6F 72 6D 65 an be performe
000120: 64 0D 0A 20 20 20 20 20 20 20 6F 6E 20 74 68 65 d.. on the
000130: 20 73 63 72 65 65 6E 20 77 69 74 68 6F 75 74 20 screen without
000140: 70 72 6F 64 75 63 69 6E 67 20 75 6E 73 69 67 68 producing unsigh
000150: 74 6C 79 20 65 66 66 65 63 74 73 2E 20 41 20 70 tly effects. A p
000160: 72 69 6D 65 20 65 78 61 6D 70 6C 65 20 20 69 73 rime example is
000170: 0D 0A 20 20 20 20 20 20 20 72 6F 6C 6C 69 6E 67 .. rolling
000180: 20 74 68 65 20 73 63 72 65 65 6E 2E 0D 0A 0D 0A the screen.....
000190: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 20 66 72 .. The fr
0001A0: 61 6D 65 20 20 66 6C 79 62 61 63 6B 20 20 73 69 ame flyback si
0001B0: 67 6E 61 6C 20 20 6F 6E 6C 79 20 20 6C 61 73 74 gnal only last
0001C0: 73 20 20 66 6F 72 20 20 61 20 20 63 6F 75 70 6C s for a coupl
0001D0: 65 20 20 6F 66 20 20 20 68 75 6E 64 72 65 64 0D e of hundred.
0001E0: 0A 20 20 20 20 20 20 20 6D 69 63 72 6F 73 65 63 . microsec
0001F0: 6F 6E 64 73 20 62 75 74 20 74 68 65 20 76 65 72 onds but the ver
Size : 512 (Real : 512)
000000: 74 69 63 61 6C 20 72 65 74 72 61 63 65 20 70 65 tical retrace pe
000010: 72 69 6F 64 20 69 73 20 6D 75 63 68 20 6C 6F 6E riod is much lon
000020: 67 65 72 20 74 68 61 6E 20 74 68 69 73 2E 0D 0A ger than this...
000030: 20 20 20 20 20 20 20 48 6F 77 65 76 65 72 2C 20 However,
000040: 74 68 65 72 65 20 77 69 6C 6C 20 62 65 20 61 20 there will be a
000050: 74 69 63 6B 65 72 20 20 69 6E 74 65 72 72 75 70 ticker interrup
000060: 74 20 20 69 6E 20 20 74 68 65 20 20 6D 69 64 64 t in the midd
000070: 6C 65 20 20 6F 66 20 20 66 72 61 6D 65 0D 0A 20 le of frame..
000080: 20 20 20 20 20 20 66 6C 79 62 61 63 6B 20 77 68 flyback wh
000090: 69 63 68 20 6D 61 79 20 63 61 75 73 65 20 74 68 ich may cause th
0000A0: 65 20 66 6F 72 65 67 72 6F 75 6E 64 20 70 72 6F e foreground pro
0000B0: 63 65 73 73 69 6E 67 20 74 6F 20 62 65 20 73 75 cessing to be su
0000C0: 73 70 65 6E 64 65 64 20 20 66 6F 72 0D 0A 20 20 spended for..
0000D0: 20 20 20 20 20 61 20 73 69 67 6E 69 66 69 63 61 a significa
0000E0: 6E 74 20 6C 65 6E 67 74 68 20 6F 66 20 74 69 6D nt length of tim
0000F0: 65 2E 20 49 74 20 69 73 20 69 6D 70 6F 72 74 61 e. It is importa
000100: 6E 74 2C 20 74 68 65 72 65 66 6F 72 65 2C 20 20 nt, therefore,
000110: 74 6F 20 20 70 65 72 66 6F 72 6D 0D 0A 20 20 20 to perform..
000120: 20 20 20 20 61 6E 79 20 63 72 69 74 69 63 61 6C any critical
000130: 20 70 72 6F 63 65 73 73 69 6E 67 20 61 73 20 73 processing as s
000140: 6F 6F 6E 20 61 66 74 65 72 20 74 68 65 20 66 72 oon after the fr
000150: 61 6D 65 20 66 6C 79 62 61 63 6B 20 69 73 20 64 ame flyback is d
000160: 65 74 65 63 74 65 64 20 61 73 0D 0A 20 20 20 20 etected as..
000170: 20 20 20 69 73 20 70 6F 73 73 69 62 6C 65 2E 0D is possible..
000180: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ..... This
000190: 20 72 6F 75 74 69 6E 65 20 72 65 74 75 72 6E 73 routine returns
0001A0: 20 69 6D 6D 65 64 69 61 74 65 6C 79 20 69 66 20 immediately if
0001B0: 66 72 61 6D 65 20 66 6C 79 62 61 63 6B 20 69 73 frame flyback is
0001C0: 20 6F 63 63 75 72 72 69 6E 67 20 77 68 65 6E 20 occurring when
0001D0: 69 74 0D 0A 20 20 20 20 20 20 20 69 73 20 63 61 it.. is ca
0001E0: 6C 6C 65 64 2E 20 49 74 20 64 6F 65 73 20 6E 6F lled. It does no
0001F0: 74 20 77 61 69 74 20 66 6F 72 20 74 68 65 20 73 t wait for the s
Size : 512 (Real : 512)
000000: 74 61 72 74 20 20 6F 66 20 20 66 72 61 6D 65 20 tart of frame
000010: 20 66 6C 79 62 61 63 6B 20 20 28 75 73 65 20 20 flyback (use
000020: 61 0D 0A 20 20 20 20 20 20 20 66 72 61 6D 65 20 a.. frame
000030: 66 6C 79 62 61 63 6B 20 65 76 65 6E 74 20 74 6F flyback event to
000040: 20 64 6F 20 74 68 69 73 29 2E 0D 0A 0D 0A 0D 0A do this).......
000050: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
000060: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 entries:......
000070: 20 20 20 20 20 20 4B 4C 20 41 44 44 20 46 52 41 KL ADD FRA
000080: 4D 45 20 46 4C 59 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ME FLY..........
000090: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
0000A0: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
0000B0: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 31 page 15.21
0000E0: 37 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 7..............
0000F0: 20 20 20 20 20 20 31 38 30 3A 20 4D 43 20 53 45 180: MC SE
000100: 54 20 4D 4F 44 45 20 20 20 20 20 20 20 20 20 20 T MODE
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 20 20 23 42 44 31 43 0D 0A 0D 0A #BD1C....
000140: 0D 0A 20 20 20 20 20 20 20 53 65 74 20 74 68 65 .. Set the
000150: 20 73 63 72 65 65 6E 20 6D 6F 64 65 2E 0D 0A 0D screen mode....
000160: 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E ... Action
000170: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4C 6F :...... Lo
000180: 61 64 20 74 68 65 20 68 61 72 64 77 61 72 65 20 ad the hardware
000190: 77 69 74 68 20 74 68 65 20 72 65 71 75 69 72 65 with the require
0001A0: 64 20 73 63 72 65 65 6E 20 6D 6F 64 65 2E 0D 0A d screen mode...
0001B0: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 .... Entry
0001C0: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
0001D0: 0D 0A 20 20 20 20 20 20 20 41 20 63 6F 6E 74 61 .. A conta
0001E0: 69 6E 73 20 74 68 65 20 72 65 71 75 69 72 65 64 ins the required
0001F0: 20 6D 6F 64 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 mode.......
Size : 512 (Real : 512)
000000: 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F Exit conditio
000010: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
000020: 41 46 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 AF corrupt...
000030: 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 All other re
000040: 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 gisters preserve
000050: 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 d.........
000060: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 Notes:......
000070: 20 20 20 20 54 68 65 20 72 65 71 75 69 72 65 64 The required
000080: 20 6D 6F 64 65 20 69 73 20 63 68 65 63 6B 65 64 mode is checked
000090: 20 61 6E 64 20 6E 6F 20 61 63 74 69 6F 6E 20 69 and no action i
0000A0: 73 20 74 61 6B 65 6E 20 69 66 20 69 74 20 69 73 s taken if it is
0000B0: 20 20 69 6E 76 61 6C 69 64 2E 0D 0A 20 20 20 20 invalid...
0000C0: 20 20 20 49 66 20 69 74 20 69 73 20 76 61 6C 69 If it is vali
0000D0: 64 20 74 68 65 6E 20 74 68 65 20 6E 65 77 20 76 d then the new v
0000E0: 61 6C 75 65 20 69 73 20 73 65 6E 74 20 74 6F 20 alue is sent to
0000F0: 74 68 65 20 68 61 72 64 77 61 72 65 2E 0D 0A 0D the hardware....
000100: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 73 63 ... The sc
000110: 72 65 65 6E 20 6D 6F 64 65 73 20 61 72 65 3A 0D reen modes are:.
000120: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 .....
000130: 20 20 20 20 20 30 3A 20 20 20 20 20 20 20 20 31 0: 1
000140: 36 30 20 78 20 32 30 30 20 70 69 78 65 6C 73 2C 60 x 200 pixels,
000150: 20 20 20 32 30 20 78 20 32 35 20 63 68 61 72 61 20 x 25 chara
000160: 63 74 65 72 73 2E 0D 0A 20 20 20 20 20 20 20 20 cters...
000170: 20 20 20 20 20 20 20 20 31 3A 20 20 20 20 20 20 1:
000180: 20 20 33 32 30 20 78 20 32 30 30 20 70 69 78 65 320 x 200 pixe
000190: 6C 73 2C 20 20 20 34 30 20 78 20 32 35 20 63 68 ls, 40 x 25 ch
0001A0: 61 72 61 63 74 65 72 73 2E 0D 0A 20 20 20 20 20 aracters...
0001B0: 20 20 20 20 20 20 20 20 20 20 20 32 3A 20 20 20 2:
0001C0: 20 20 20 20 20 36 34 30 20 78 20 32 30 30 20 70 640 x 200 p
0001D0: 69 78 65 6C 73 2C 20 20 20 38 30 20 78 20 32 35 ixels, 80 x 25
0001E0: 20 63 68 61 72 61 63 74 65 72 73 2E 0D 0A 0D 0A characters.....
0001F0: 0D 0A 20 20 20 20 20 20 20 41 6C 74 65 72 69 6E .. Alterin
Size : 512 (Real : 512)
000000: 67 20 74 68 65 20 73 63 72 65 65 6E 20 20 6D 6F g the screen mo
000010: 64 65 20 20 77 69 74 68 6F 75 74 20 20 6E 6F 74 de without not
000020: 69 66 79 69 6E 67 20 20 74 68 65 20 20 53 63 72 ifying the Scr
000030: 65 65 6E 20 20 50 61 63 6B 20 20 77 69 6C 6C 0D een Pack will.
000040: 0A 20 20 20 20 20 20 20 70 72 6F 64 75 63 65 20 . produce
000050: 70 65 63 75 6C 69 61 72 20 65 66 66 65 63 74 73 peculiar effects
000060: 20 6F 6E 20 74 68 65 20 73 63 72 65 65 6E 2E 20 on the screen.
000070: 49 6E 20 67 65 6E 65 72 61 6C 20 53 43 52 20 53 In general SCR S
000080: 45 54 20 4D 4F 44 45 20 73 68 6F 75 6C 64 0D 0A ET MODE should..
000090: 20 20 20 20 20 20 20 62 65 20 63 61 6C 6C 65 64 be called
0000A0: 20 74 6F 20 63 68 61 6E 67 65 20 73 63 72 65 65 to change scree
0000B0: 6E 20 6D 6F 64 65 2E 20 54 68 69 73 2C 20 69 6E n mode. This, in
0000C0: 20 74 75 72 6E 2C 20 73 65 74 73 20 74 68 65 20 turn, sets the
0000D0: 6E 65 77 20 6D 6F 64 65 20 69 6E 74 6F 0D 0A 20 new mode into..
0000E0: 20 20 20 20 20 20 74 68 65 20 68 61 72 64 77 61 the hardwa
0000F0: 72 65 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 re...........
000100: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
000110: 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ies:......
000120: 20 53 43 52 20 53 45 54 20 4D 4F 44 45 0D 0A 0D SCR SET MODE...
000130: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000140: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
000150: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
000160: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
000180: 65 20 31 35 2E 32 31 38 0D 0A 0D 0A 0D 0A 0D 0A e 15.218........
000190: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 38 31 ...... 181
0001A0: 3A 20 4D 43 20 53 43 52 45 45 4E 20 4F 46 46 53 : MC SCREEN OFFS
0001B0: 45 54 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ET
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
0001E0: 44 31 46 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 D1F......
0001F0: 53 65 74 20 74 68 65 20 73 63 72 65 65 6E 20 6F Set the screen o
Size : 512 (Real : 512)
000000: 66 66 73 65 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 ffset.......
000010: 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A Action:......
000020: 20 20 20 20 20 20 20 4C 6F 61 64 20 74 68 65 20 Load the
000030: 68 61 72 64 77 61 72 65 20 77 69 74 68 20 74 68 hardware with th
000040: 65 20 6F 66 66 73 65 74 20 6F 66 20 74 68 65 20 e offset of the
000050: 20 66 69 72 73 74 20 20 62 79 74 65 20 20 6F 6E first byte on
000060: 20 20 74 68 65 20 20 73 63 72 65 65 6E 0D 0A 20 the screen..
000070: 20 20 20 20 20 20 69 6E 73 69 64 65 20 61 20 32 inside a 2
000080: 4B 20 73 63 72 65 65 6E 20 62 6C 6F 63 6B 20 61 K screen block a
000090: 6E 64 20 77 68 69 63 68 20 31 36 4B 20 20 62 6C nd which 16K bl
0000A0: 6F 63 6B 20 20 74 68 65 20 20 73 63 72 65 65 6E ock the screen
0000B0: 20 20 6D 65 6D 6F 72 79 20 20 69 73 0D 0A 20 20 memory is..
0000C0: 20 20 20 20 20 6C 6F 63 61 74 65 64 20 69 6E 2E located in.
0000D0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 ...... Ent
0000E0: 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A ry conditions:..
0000F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 6F 6E .... A con
000100: 74 61 69 6E 73 20 74 68 65 20 6E 65 77 20 73 63 tains the new sc
000110: 72 65 65 6E 20 62 61 73 65 2E 0D 0A 20 20 20 20 reen base...
000120: 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 HL contains t
000130: 68 65 20 6E 65 77 20 73 63 72 65 65 6E 20 6F 66 he new screen of
000140: 66 73 65 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 fset.......
000150: 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E Exit condition
000160: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 s:...... A
000170: 46 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 F corrupt...
000180: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000190: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
0001A0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ....... No
0001B0: 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 tes:......
0001C0: 20 54 68 65 20 73 63 72 65 65 6E 20 62 61 73 65 The screen base
0001D0: 20 61 64 64 72 65 73 73 20 69 73 20 6D 61 73 6B address is mask
0001E0: 65 64 20 77 69 74 68 20 23 43 30 20 74 6F 20 6D ed with #C0 to m
0001F0: 61 6B 65 20 73 75 72 65 20 69 74 20 72 65 66 65 ake sure it refe
Size : 512 (Real : 512)
000000: 72 73 20 74 6F 20 61 0D 0A 20 20 20 20 20 20 20 rs to a..
000010: 76 61 6C 69 64 20 31 36 4B 20 6D 65 6D 6F 72 79 valid 16K memory
000020: 20 61 72 65 61 2E 20 54 68 65 20 64 65 66 61 75 area. The defau
000030: 6C 74 20 73 63 72 65 65 6E 20 62 61 73 65 20 69 lt screen base i
000040: 73 20 23 43 30 20 28 74 68 65 20 20 73 63 72 65 s #C0 (the scre
000050: 65 6E 20 20 69 73 0D 0A 20 20 20 20 20 20 20 75 en is.. u
000060: 6E 64 65 72 6E 65 61 74 68 20 74 68 65 20 75 70 nderneath the up
000070: 70 65 72 20 52 4F 4D 29 2E 0D 0A 0D 0A 0D 0A 20 per ROM).......
000080: 20 20 20 20 20 20 54 68 65 20 73 63 72 65 65 6E The screen
000090: 20 6F 66 66 73 65 74 20 69 73 20 6D 61 73 6B 65 offset is maske
0000A0: 64 20 77 69 74 68 20 23 30 37 46 45 20 74 6F 20 d with #07FE to
0000B0: 6D 61 6B 65 20 69 74 20 6C 65 67 61 6C 2E 20 4E make it legal. N
0000C0: 6F 74 65 20 74 68 61 74 20 62 69 74 0D 0A 20 20 ote that bit..
0000D0: 20 20 20 20 20 30 20 69 73 20 69 67 6E 6F 72 65 0 is ignore
0000E0: 64 20 61 73 20 74 68 65 20 68 61 72 64 77 61 72 d as the hardwar
0000F0: 65 20 6F 6E 6C 79 20 75 73 65 73 20 65 76 65 6E e only uses even
000100: 20 6F 66 66 73 65 74 73 2E 0D 0A 0D 0A 0D 0A 20 offsets.......
000110: 20 20 20 20 20 20 49 66 20 74 68 65 20 73 63 72 If the scr
000120: 65 65 6E 20 62 61 73 65 20 6F 72 20 6F 66 66 73 een base or offs
000130: 65 74 20 69 73 20 63 68 61 6E 67 65 64 20 77 69 et is changed wi
000140: 74 68 6F 75 74 20 6E 6F 74 69 66 79 69 6E 67 20 thout notifying
000150: 20 74 68 65 20 20 53 63 72 65 65 6E 0D 0A 20 20 the Screen..
000160: 20 20 20 20 20 50 61 63 6B 20 74 68 65 6E 20 75 Pack then u
000170: 6E 65 78 70 65 63 74 65 64 20 65 66 66 65 63 74 nexpected effect
000180: 73 20 6D 61 79 20 6F 63 63 75 72 20 6F 6E 20 74 s may occur on t
000190: 68 65 20 73 63 72 65 65 6E 2E 20 49 6E 20 20 67 he screen. In g
0001A0: 65 6E 65 72 61 6C 20 20 53 43 52 0D 0A 20 20 20 eneral SCR..
0001B0: 20 20 20 20 53 45 54 20 42 41 53 45 20 6F 72 20 SET BASE or
0001C0: 53 43 52 20 53 45 54 20 4F 46 46 53 45 54 20 73 SCR SET OFFSET s
0001D0: 68 6F 75 6C 64 20 62 65 20 63 61 6C 6C 65 64 2E hould be called.
0001E0: 20 20 54 68 65 73 65 2C 20 20 69 6E 20 20 74 68 These, in th
0001F0: 65 69 72 20 20 74 75 72 6E 2C 0D 0A 20 20 20 20 eir turn,..
Size : 512 (Real : 512)
000000: 20 20 20 73 65 6E 64 20 74 68 65 20 76 61 6C 75 send the valu
000010: 65 73 20 74 6F 20 74 68 65 20 68 61 72 64 77 61 es to the hardwa
000020: 72 65 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D re..............
000030: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
000040: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 entries:......
000050: 20 20 20 20 20 53 43 52 20 53 45 54 20 42 41 53 SCR SET BAS
000060: 45 0D 0A 20 20 20 20 20 20 20 53 43 52 20 53 45 E.. SCR SE
000070: 54 20 4F 46 46 53 45 54 0D 0A 0D 0A 0D 0A 0D 0A T OFFSET........
000080: 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 .. AMSTRAD
000090: 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 CPC464/664/6128
0000A0: 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 FIRMWARE
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 70 61 67 65 20 31 35 2E 32 31 39 0D page 15.219.
0000D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
0000E0: 20 20 20 20 31 38 32 3A 20 4D 43 20 43 4C 45 41 182: MC CLEA
0000F0: 52 20 49 4E 4B 53 20 20 20 20 20 20 20 20 20 20 R INKS
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 23 42 44 32 32 0D 0A 0D 0A 0D 0A #BD22......
000130: 20 20 20 20 20 20 20 53 65 74 20 61 6C 6C 20 69 Set all i
000140: 6E 6B 73 20 74 6F 20 6F 6E 65 20 63 6F 6C 6F 75 nks to one colou
000150: 72 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 r...... Ac
000160: 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 tion:......
000170: 20 20 53 65 74 20 74 68 65 20 63 6F 6C 6F 75 72 Set the colour
000180: 20 6F 66 20 74 68 65 20 62 6F 72 64 65 72 20 61 of the border a
000190: 6E 64 20 73 65 74 20 74 68 65 20 63 6F 6C 6F 75 nd set the colou
0001A0: 72 20 6F 66 20 61 6C 6C 20 74 68 65 20 20 69 6E r of all the in
0001B0: 6B 73 2E 20 20 41 6C 6C 0D 0A 20 20 20 20 20 20 ks. All..
0001C0: 20 69 6E 6B 73 20 61 72 65 20 73 65 74 20 74 6F inks are set to
0001D0: 20 74 68 65 20 73 61 6D 65 20 63 6F 6C 6F 75 72 the same colour
0001E0: 20 74 68 75 73 20 67 69 76 69 6E 67 20 74 68 65 thus giving the
0001F0: 20 20 69 6D 70 72 65 73 73 69 6F 6E 20 20 74 68 impression th
Size : 512 (Real : 512)
000000: 61 74 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 at the..
000010: 73 63 72 65 65 6E 20 68 61 73 20 62 65 65 6E 20 screen has been
000020: 63 6C 65 61 72 65 64 20 69 6E 73 74 61 6E 74 6C cleared instantl
000030: 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 y....... E
000040: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
000050: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 45 20 ...... DE
000060: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 61 64 64 contains the add
000070: 72 65 73 73 20 6F 66 20 61 6E 20 69 6E 6B 20 76 ress of an ink v
000080: 65 63 74 6F 72 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 ector.......
000090: 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F Exit conditio
0000A0: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
0000B0: 41 46 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 AF corrupt...
0000C0: 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 All other re
0000D0: 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 gisters preserve
0000E0: 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E d....... N
0000F0: 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 otes:......
000100: 20 20 54 68 65 20 69 6E 6B 20 76 65 63 74 6F 72 The ink vector
000110: 20 68 61 73 20 74 68 65 20 66 6F 72 6D 3A 0D 0A has the form:..
000120: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
000130: 20 20 20 20 42 79 74 65 20 30 3A 20 20 20 43 6F Byte 0: Co
000140: 6C 6F 75 72 20 6F 66 20 74 68 65 20 62 6F 72 64 lour of the bord
000150: 65 72 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 er...
000160: 20 20 20 20 20 42 79 74 65 20 31 3A 20 20 20 43 Byte 1: C
000170: 6F 6C 6F 75 72 20 66 6F 72 20 61 6C 6C 20 69 6E olour for all in
000180: 6B 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ks.......
000190: 54 68 65 20 63 6F 6C 6F 75 72 73 20 73 75 70 70 The colours supp
0001A0: 6C 69 65 64 20 61 72 65 20 74 68 65 20 6E 75 6D lied are the num
0001B0: 62 65 72 73 20 75 73 65 64 20 62 79 20 74 68 65 bers used by the
0001C0: 20 68 61 72 64 77 61 72 65 20 72 61 74 68 65 72 hardware rather
0001D0: 20 20 74 68 61 6E 0D 0A 20 20 20 20 20 20 20 74 than.. t
0001E0: 68 65 20 67 72 65 79 20 73 63 61 6C 65 20 6E 75 he grey scale nu
0001F0: 6D 62 65 72 73 20 73 75 70 70 6C 69 65 64 20 74 mbers supplied t
Size : 512 (Real : 512)
000000: 6F 20 53 43 52 20 53 45 54 20 49 4E 4B 20 28 73 o SCR SET INK (s
000010: 65 65 20 41 70 70 65 6E 64 69 78 20 56 29 2E 0D ee Appendix V)..
000020: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 66 74 65 ..... Afte
000030: 72 20 74 68 65 20 73 63 72 65 65 6E 20 68 61 73 r the screen has
000040: 20 20 62 65 65 6E 20 20 63 6C 65 61 72 65 64 20 been cleared
000050: 20 28 6F 72 20 20 77 68 61 74 65 76 65 72 29 20 (or whatever)
000060: 20 74 68 65 20 20 63 6F 72 72 65 63 74 20 20 69 the correct i
000070: 6E 6B 0D 0A 20 20 20 20 20 20 20 63 6F 6C 6F 75 nk.. colou
000080: 72 73 20 63 61 6E 20 62 65 20 73 65 74 20 62 79 rs can be set by
000090: 20 63 61 6C 6C 69 6E 67 20 4D 43 20 53 45 54 20 calling MC SET
0000A0: 49 4E 4B 53 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 INKS.......
0000B0: 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 73 This routine s
0000C0: 65 74 73 20 74 68 65 20 63 6F 6C 6F 75 72 73 20 ets the colours
0000D0: 66 6F 72 20 61 6C 6C 20 31 36 20 20 69 6E 6B 73 for all 16 inks
0000E0: 20 20 77 68 65 74 68 65 72 20 20 74 68 65 79 20 whether they
0000F0: 20 63 61 6E 20 20 62 65 0D 0A 20 20 20 20 20 20 can be..
000100: 20 64 69 73 70 6C 61 79 65 64 20 6F 6E 20 74 68 displayed on th
000110: 65 20 73 63 72 65 65 6E 20 69 6E 20 74 68 65 20 e screen in the
000120: 63 75 72 72 65 6E 74 20 6D 6F 64 65 20 6F 72 20 current mode or
000130: 6E 6F 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 not.......
000140: 20 54 68 69 73 20 69 6E 6B 20 63 6C 65 61 72 69 This ink cleari
000150: 6E 67 20 74 65 63 68 6E 69 71 75 65 20 69 73 20 ng technique is
000160: 75 73 65 64 20 62 79 20 74 68 65 20 53 63 72 65 used by the Scre
000170: 65 6E 20 50 61 63 6B 20 20 77 68 65 6E 20 20 63 en Pack when c
000180: 6C 65 61 72 69 6E 67 0D 0A 20 20 20 20 20 20 20 learing..
000190: 74 68 65 20 73 63 72 65 65 6E 20 6F 72 20 63 68 the screen or ch
0001A0: 61 6E 67 69 6E 67 20 6D 6F 64 65 20 28 62 79 20 anging mode (by
0001B0: 53 43 52 20 43 4C 45 41 52 20 61 6E 64 20 53 43 SCR CLEAR and SC
0001C0: 52 20 53 45 54 20 4D 4F 44 45 29 2E 0D 0A 0D 0A R SET MODE).....
0001D0: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
0001E0: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 entries:....
0001F0: 20 20 20 20 4D 43 20 53 45 54 20 49 4E 4B 53 0D MC SET INKS.
Size : 512 (Real : 512)
000000: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D ....... AM
000010: 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 STRAD CPC464/664
000020: 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 /6128 FIRMWARE
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 35 page 15
000050: 2E 32 32 30 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A .220............
000060: 0D 0A 20 20 20 20 20 20 20 31 38 33 3A 20 4D 43 .. 183: MC
000070: 20 53 45 54 20 49 4E 4B 53 20 20 20 20 20 20 20 SET INKS
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 20 20 20 20 20 20 20 23 42 44 32 35 0D #BD25.
0000B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 74 20 ..... Set
0000C0: 63 6F 6C 6F 75 72 73 20 6F 66 20 61 6C 6C 20 74 colours of all t
0000D0: 68 65 20 69 6E 6B 73 2E 0D 0A 0D 0A 0D 0A 20 20 he inks.......
0000E0: 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A Action:....
0000F0: 0D 0A 20 20 20 20 20 20 20 53 65 74 20 74 68 65 .. Set the
000100: 20 63 6F 6C 6F 75 72 73 20 6F 66 20 61 6C 6C 20 colours of all
000110: 74 68 65 20 69 6E 6B 73 20 61 6E 64 20 74 68 65 the inks and the
000120: 20 62 6F 72 64 65 72 2E 0D 0A 0D 0A 0D 0A 20 20 border.......
000130: 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 Entry condi
000140: 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tions:......
000150: 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 DE contains t
000160: 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 61 6E he address of an
000170: 20 69 6E 6B 20 76 65 63 74 6F 72 2E 0D 0A 0D 0A ink vector.....
000180: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
000190: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
0001A0: 20 20 20 20 20 20 41 46 20 63 6F 72 72 75 70 74 AF corrupt
0001B0: 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 ... All ot
0001C0: 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 her registers pr
0001D0: 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 eserved.......
0001E0: 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D Notes:.....
0001F0: 0A 20 20 20 20 20 20 20 54 68 65 20 69 6E 6B 20 . The ink
Size : 512 (Real : 512)
000000: 76 65 63 74 6F 72 20 70 61 73 73 65 64 20 68 61 vector passed ha
000010: 73 20 74 68 65 20 66 6F 6C 6C 6F 77 69 6E 67 20 s the following
000020: 6C 61 79 6F 75 74 3A 0D 0A 0D 0A 0D 0A 20 20 20 layout:......
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 Byt
000040: 65 20 30 3A 20 20 20 43 6F 6C 6F 75 72 20 6F 66 e 0: Colour of
000050: 20 74 68 65 20 62 6F 72 64 65 72 2E 0D 0A 20 20 the border...
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 By
000070: 74 65 20 31 3A 20 20 20 43 6F 6C 6F 75 72 20 66 te 1: Colour f
000080: 6F 72 20 69 6E 6B 20 30 2E 0D 0A 20 20 20 20 20 or ink 0...
000090: 20 20 20 20 20 20 20 20 20 20 20 42 79 74 65 20 Byte
0000A0: 32 3A 20 20 20 43 6F 6C 6F 75 72 20 66 6F 72 20 2: Colour for
0000B0: 69 6E 6B 20 31 2E 0D 0A 0D 0A 20 20 20 20 20 20 ink 1.....
0000C0: 20 20 20 20 20 20 20 20 20 20 2E 2E 20 20 20 20 ..
0000D0: 20 20 20 20 20 20 20 20 20 2E 2E 0D 0A 20 20 20 ....
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 Byt
0000F0: 65 20 31 36 3A 20 20 43 6F 6C 6F 75 72 20 66 6F e 16: Colour fo
000100: 72 20 69 6E 6B 20 31 35 2E 0D 0A 0D 0A 0D 0A 20 r ink 15.......
000110: 20 20 20 20 20 20 54 68 65 20 63 6F 6C 6F 75 72 The colour
000120: 73 20 73 75 70 70 6C 69 65 64 20 61 72 65 20 74 s supplied are t
000130: 68 65 20 6E 75 6D 62 65 72 73 20 75 73 65 64 20 he numbers used
000140: 62 79 20 74 68 65 20 68 61 72 64 77 61 72 65 20 by the hardware
000150: 72 61 74 68 65 72 20 20 74 68 61 6E 0D 0A 20 20 rather than..
000160: 20 20 20 20 20 74 68 65 20 67 72 65 79 20 73 63 the grey sc
000170: 61 6C 65 20 6E 75 6D 62 65 72 73 20 73 75 70 70 ale numbers supp
000180: 6C 69 65 64 20 74 6F 20 53 43 52 20 53 45 54 20 lied to SCR SET
000190: 49 4E 4B 20 28 73 65 65 20 41 70 70 65 6E 64 69 INK (see Appendi
0001A0: 78 20 56 29 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 x V).......
0001B0: 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 73 This routine s
0001C0: 65 74 73 20 74 68 65 20 63 6F 6C 6F 75 72 73 20 ets the colours
0001D0: 66 6F 72 20 61 6C 6C 20 69 6E 6B 73 20 69 6E 63 for all inks inc
0001E0: 6C 75 64 69 6E 67 20 74 68 6F 73 65 20 74 68 61 luding those tha
0001F0: 74 20 63 61 6E 6E 6F 74 0D 0A 20 20 20 20 20 20 t cannot..
Size : 512 (Real : 512)
000000: 20 62 65 20 76 69 73 69 62 6C 65 20 69 6E 20 74 be visible in t
000010: 68 65 20 63 75 72 72 65 6E 74 20 73 63 72 65 65 he current scree
000020: 6E 20 6D 6F 64 65 2E 20 48 6F 77 65 76 65 72 2C n mode. However,
000030: 20 69 74 20 69 73 20 20 6F 6E 6C 79 20 20 6E 65 it is only ne
000040: 63 65 73 73 61 72 79 0D 0A 20 20 20 20 20 20 20 cessary..
000050: 74 6F 20 73 75 70 70 6C 79 20 73 65 6E 73 69 62 to supply sensib
000060: 6C 65 20 63 6F 6C 6F 75 72 73 20 66 6F 72 20 74 le colours for t
000070: 68 65 20 76 69 73 69 62 6C 65 20 69 6E 6B 73 2E he visible inks.
000080: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 53 .... The S
000090: 63 72 65 65 6E 20 50 61 63 6B 20 73 65 74 73 20 creen Pack sets
0000A0: 74 68 65 20 63 6F 6C 6F 75 72 73 20 66 6F 72 20 the colours for
0000B0: 61 6C 6C 20 74 68 65 20 69 6E 6B 73 20 65 61 63 all the inks eac
0000C0: 68 20 74 69 6D 65 20 20 74 68 65 20 20 69 6E 6B h time the ink
0000D0: 73 0D 0A 20 20 20 20 20 20 20 66 6C 61 73 68 20 s.. flash
0000E0: 61 6E 64 20 61 66 74 65 72 20 61 6E 20 69 6E 6B and after an ink
0000F0: 20 63 6F 6C 6F 75 72 20 68 61 73 20 62 65 65 6E colour has been
000100: 20 63 68 61 6E 67 65 64 20 28 62 79 20 63 61 6C changed (by cal
000110: 6C 69 6E 67 20 53 43 52 20 53 45 54 20 49 4E 4B ling SCR SET INK
000120: 0D 0A 20 20 20 20 20 20 20 6F 72 20 53 43 52 20 .. or SCR
000130: 53 45 54 20 42 4F 52 44 45 52 29 2E 0D 0A 0D 0A SET BORDER).....
000140: 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 Related e
000150: 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 ntries:....
000160: 20 20 4D 43 20 43 4C 45 41 52 20 49 4E 4B 53 0D MC CLEAR INKS.
000170: 0A 20 20 20 20 20 20 20 53 43 52 20 53 45 54 20 . SCR SET
000180: 42 4F 52 44 45 52 0D 0A 20 20 20 20 20 20 20 53 BORDER.. S
000190: 43 52 20 53 45 54 20 49 4E 4B 0D 0A 0D 0A 0D 0A CR SET INK......
0001A0: 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 .. AMSTRAD
0001B0: 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 CPC464/664/6128
0001C0: 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 FIRMWARE
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 20 20 20 70 61 67 65 20 31 35 2E 32 32 31 0D page 15.221.
0001F0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
Size : 512 (Real : 512)
000000: 20 20 20 20 31 38 34 3A 20 4D 43 20 52 45 53 45 184: MC RESE
000010: 54 20 50 52 49 4E 54 45 52 20 20 20 20 20 20 20 T PRINTER
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 #
000040: 42 44 32 38 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 BD28......
000050: 20 52 65 73 65 74 20 74 68 65 20 70 72 69 6E 74 Reset the print
000060: 65 72 20 69 6E 64 69 72 65 63 74 69 6F 6E 2E 0D er indirection..
000070: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 ..... Acti
000080: 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 on:......
000090: 53 65 74 20 74 68 65 20 70 72 69 6E 74 65 72 20 Set the printer
0000A0: 69 6E 64 69 72 65 63 74 69 6F 6E 2C 20 4D 43 20 indirection, MC
0000B0: 57 41 49 54 20 50 52 49 4E 54 45 52 2C 20 74 6F WAIT PRINTER, to
0000C0: 20 69 74 73 20 20 64 65 66 61 75 6C 74 20 20 72 its default r
0000D0: 6F 75 74 69 6E 65 0D 0A 20 20 20 20 20 20 20 61 outine.. a
0000E0: 6E 64 2C 20 69 6E 20 56 31 2E 31 20 66 69 72 6D nd, in V1.1 firm
0000F0: 77 61 72 65 2C 20 73 65 74 20 75 70 20 74 68 65 ware, set up the
000100: 20 64 65 66 61 75 6C 74 20 70 72 69 6E 74 65 72 default printer
000110: 20 74 72 61 6E 73 6C 61 74 69 6F 6E 20 74 61 62 translation tab
000120: 6C 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 le.......
000130: 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 Entry conditions
000140: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F :...... No
000150: 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A conditions.....
000160: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
000170: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
000180: 20 20 20 20 20 20 41 46 2C 20 42 43 2C 20 44 45 AF, BC, DE
000190: 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E and HL corrupt.
0001A0: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 .. All oth
0001B0: 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 er registers pre
0001C0: 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 served.......
0001D0: 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A Notes:......
0001E0: 20 20 20 20 20 20 20 54 68 65 20 64 65 66 61 75 The defau
0001F0: 6C 74 20 70 72 69 6E 74 65 72 20 74 72 61 6E 73 lt printer trans
Size : 512 (Real : 512)
000000: 6C 61 74 69 6F 6E 20 74 61 62 6C 65 20 69 73 20 lation table is
000010: 64 65 73 63 72 69 62 65 64 20 20 69 6E 20 20 41 described in A
000020: 70 70 65 6E 64 69 78 20 20 58 49 56 2E 0D 0A 0D ppendix XIV....
000030: 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 69 ... This i
000040: 73 20 64 65 73 69 67 6E 65 64 20 74 6F 20 64 72 s designed to dr
000050: 69 76 65 20 74 68 65 20 44 4D 50 2D 31 20 70 72 ive the DMP-1 pr
000060: 69 6E 74 65 72 2E 20 49 74 20 20 6F 6E 6C 79 20 inter. It only
000070: 20 74 72 61 6E 73 6C 61 74 65 73 20 20 74 68 65 translates the
000080: 0D 0A 20 20 20 20 20 20 20 61 64 64 69 74 69 6F .. additio
000090: 6E 61 6C 20 63 68 61 72 61 63 74 65 72 73 20 69 nal characters i
0000A0: 6E 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 n the character
0000B0: 73 65 74 20 20 28 23 30 41 2E 2E 23 41 46 29 3B set (#0A..#AF);
0000C0: 20 20 69 74 20 20 64 6F 65 73 20 20 6E 6F 74 0D it does not.
0000D0: 0A 20 20 20 20 20 20 20 74 72 61 6E 73 6C 61 74 . translat
0000E0: 65 20 61 6E 79 20 20 6F 66 20 20 74 68 65 20 20 e any of the
0000F0: 73 74 61 6E 64 61 72 64 20 20 41 53 43 49 49 20 standard ASCII
000100: 20 63 68 61 72 61 63 74 65 72 73 20 20 6F 72 20 characters or
000110: 20 74 68 65 20 20 67 72 61 70 68 69 63 73 0D 0A the graphics..
000120: 20 20 20 20 20 20 20 63 68 61 72 61 63 74 65 72 character
000130: 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 s.........
000140: 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 Related entries
000150: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4D 43 :...... MC
000160: 20 57 41 49 54 20 50 52 49 4E 54 45 52 0D 0A 20 WAIT PRINTER..
000170: 20 20 20 20 20 20 4D 43 20 50 52 49 4E 54 20 43 MC PRINT C
000180: 48 41 52 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D HAR.............
000190: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001A0: 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 ... AMSTRA
0001B0: 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 D CPC464/664/612
0001C0: 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 8 FIRMWARE
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 32 32 page 15.222
0001F0: 0D 0A 1A 6C 20 73 79 6E 63 68 72 6F 6E 6F 75 73 ...l synchronous
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 31 38 35 3A 20 4D 43 20 50 52 49 4E 54 185: MC PRINT
000020: 20 43 48 41 52 20 20 20 20 20 20 20 20 20 20 20 CHAR
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 23 42 44 32 42 0D 0A 0D 0A 20 20 20 #BD2B....
000060: 20 20 20 20 54 72 79 20 74 6F 20 73 65 6E 64 20 Try to send
000070: 61 20 63 68 61 72 61 63 74 65 72 20 74 6F 20 74 a character to t
000080: 68 65 20 43 65 6E 74 72 6F 6E 69 63 73 20 70 6F he Centronics po
000090: 72 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 rt..... Ac
0000A0: 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 tion:....
0000B0: 53 65 6E 64 20 61 20 63 68 61 72 61 63 74 65 72 Send a character
0000C0: 20 74 6F 20 74 68 65 20 70 72 69 6E 74 65 72 20 to the printer
0000D0: 28 43 65 6E 74 72 6F 6E 69 63 73 20 70 6F 72 74 (Centronics port
0000E0: 29 20 6F 72 20 74 69 6D 65 20 6F 75 74 20 20 69 ) or time out i
0000F0: 66 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 70 f the.. p
000100: 72 69 6E 74 65 72 20 69 73 20 62 75 73 79 20 66 rinter is busy f
000110: 6F 72 20 74 6F 6F 20 6C 6F 6E 67 2E 0D 0A 0D 0A or too long.....
000120: 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E Entry con
000130: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 ditions:....
000140: 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 74 68 A contains th
000150: 65 20 63 68 61 72 61 63 74 65 72 20 74 6F 20 73 e character to s
000160: 65 6E 64 20 28 62 69 74 20 37 20 69 73 20 69 67 end (bit 7 is ig
000170: 6E 6F 72 65 64 29 2E 0D 0A 0D 0A 20 20 20 20 20 nored).....
000180: 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E Exit condition
000190: 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 s:.... If
0001A0: 74 68 65 20 63 68 61 72 61 63 74 65 72 20 77 61 the character wa
0001B0: 73 20 73 65 6E 74 20 4F 4B 3A 0D 0A 0D 0A 20 20 s sent OK:....
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 C
0001D0: 61 72 72 79 20 74 72 75 65 2E 0D 0A 0D 0A 20 20 arry true.....
0001E0: 20 20 20 20 20 49 66 20 74 68 65 20 70 72 69 6E If the prin
0001F0: 74 65 72 20 74 69 6D 65 64 20 6F 75 74 3A 0D 0A ter timed out:..
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000010: 20 20 20 43 61 72 72 79 20 66 61 6C 73 65 2E 0D Carry false..
000020: 0A 0D 0A 20 20 20 20 20 20 20 41 6C 77 61 79 73 ... Always
000030: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 :....
000040: 20 20 20 20 20 41 20 61 6E 64 20 6F 74 68 65 72 A and other
000050: 20 66 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D flags corrupt..
000060: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000070: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
000080: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D ters preserved..
000090: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A ... Notes:
0000A0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 6E 20 ...... In
0000B0: 56 31 2E 31 20 66 69 72 6D 77 61 72 65 2C 20 74 V1.1 firmware, t
0000C0: 68 65 20 63 68 61 72 61 63 74 65 72 20 74 6F 20 he character to
0000D0: 62 65 20 73 65 6E 74 20 20 69 73 20 20 74 72 61 be sent is tra
0000E0: 6E 73 6C 61 74 65 64 20 20 75 73 69 6E 67 20 20 nslated using
0000F0: 74 68 65 0D 0A 20 20 20 20 20 20 20 70 72 69 6E the.. prin
000100: 74 65 72 20 74 72 61 6E 73 6C 61 74 69 6F 6E 20 ter translation
000110: 74 61 62 6C 65 20 61 73 20 73 65 74 20 20 62 79 table as set by
000120: 20 20 4D 43 20 20 50 52 49 4E 54 20 20 54 52 41 MC PRINT TRA
000130: 4E 53 4C 41 54 49 4F 4E 2E 20 20 49 66 20 20 74 NSLATION. If t
000140: 68 65 0D 0A 20 20 20 20 20 20 20 73 75 70 70 6C he.. suppl
000150: 69 65 64 20 63 68 61 72 61 63 74 65 72 20 69 73 ied character is
000160: 20 6E 6F 74 20 66 6F 75 6E 64 20 69 6E 20 20 74 not found in t
000170: 68 65 20 20 74 61 62 6C 65 20 20 74 68 65 6E 20 he table then
000180: 20 69 74 20 20 69 73 20 20 73 65 6E 74 20 20 61 it is sent a
000190: 73 0D 0A 20 20 20 20 20 20 20 73 75 70 70 6C 69 s.. suppli
0001A0: 65 64 20 77 69 74 68 6F 75 74 20 74 72 61 6E 73 ed without trans
0001B0: 6C 61 74 69 6F 6E 2E 20 48 6F 77 65 76 65 72 2C lation. However,
0001C0: 20 69 66 20 74 68 65 20 63 68 61 72 61 63 74 65 if the characte
0001D0: 72 20 20 69 73 20 20 66 6F 75 6E 64 20 20 69 6E r is found in
0001E0: 0D 0A 20 20 20 20 20 20 20 74 68 65 20 74 72 61 .. the tra
0001F0: 6E 73 6C 61 74 69 6F 6E 20 74 61 62 6C 65 20 20 nslation table
Size : 512 (Real : 512)
000000: 74 68 65 6E 20 20 74 68 65 20 20 63 6F 72 72 65 then the corre
000010: 73 70 6F 6E 64 69 6E 67 20 20 74 72 61 6E 73 6C sponding transl
000020: 61 74 69 6F 6E 20 20 69 73 20 20 73 65 6E 74 0D ation is sent.
000030: 0A 20 20 20 20 20 20 20 69 6E 73 74 65 61 64 3B . instead;
000040: 20 75 6E 6C 65 73 73 20 74 68 65 20 74 72 61 6E unless the tran
000050: 73 6C 61 74 69 6F 6E 20 69 73 20 46 46 20 69 6E slation is FF in
000060: 20 77 68 69 63 68 20 63 61 73 65 20 74 68 65 20 which case the
000070: 20 63 68 61 72 61 63 74 65 72 20 20 69 73 0D 0A character is..
000080: 20 20 20 20 20 20 20 69 67 6E 6F 72 65 64 20 61 ignored a
000090: 6E 64 20 6E 6F 74 68 69 6E 67 20 69 73 20 73 65 nd nothing is se
0000A0: 6E 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 nt.......
0000B0: 54 68 69 73 20 72 6F 75 74 69 6E 65 20 63 61 6C This routine cal
0000C0: 6C 73 20 74 68 65 20 4D 61 63 68 69 6E 65 20 50 ls the Machine P
0000D0: 61 63 6B 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 ack indirection
0000E0: 20 4D 43 20 20 57 41 49 54 20 20 50 52 49 4E 54 MC WAIT PRINT
0000F0: 45 52 20 20 74 6F 0D 0A 20 20 20 20 20 20 20 73 ER to.. s
000100: 65 6E 74 20 74 68 65 20 63 68 61 72 61 63 74 65 ent the characte
000110: 72 2E 20 54 68 65 20 64 65 66 61 75 6C 74 20 20 r. The default
000120: 69 6E 64 69 72 65 63 74 69 6F 6E 20 20 72 6F 75 indirection rou
000130: 74 69 6E 65 20 20 77 61 69 74 73 20 20 66 6F 72 tine waits for
000140: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 43 65 the.. Ce
000150: 6E 74 72 6F 6E 69 63 73 20 70 6F 72 74 20 74 6F ntronics port to
000160: 20 62 65 63 6F 6D 65 20 6E 6F 6E 2D 62 75 73 79 become non-busy
000170: 20 74 68 65 6E 20 73 65 6E 64 73 20 74 68 65 20 then sends the
000180: 20 63 68 61 72 61 63 74 65 72 2E 20 20 49 66 20 character. If
000190: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 70 6F 72 the.. por
0001A0: 74 20 72 65 6D 61 69 6E 73 20 62 75 73 79 20 66 t remains busy f
0001B0: 6F 72 20 74 6F 6F 20 6C 6F 6E 67 20 28 61 70 70 or too long (app
0001C0: 72 6F 78 69 6D 61 74 65 6C 79 20 30 2E 34 20 20 roximately 0.4
0001D0: 73 65 63 6F 6E 64 73 29 20 20 74 68 65 6E 20 20 seconds) then
0001E0: 74 68 65 0D 0A 20 20 20 20 20 20 20 72 6F 75 74 the.. rout
0001F0: 69 6E 65 20 74 69 6D 65 73 20 6F 75 74 20 61 6E ine times out an
Size : 512 (Real : 512)
000000: 64 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 d the character
000010: 69 73 20 6E 6F 74 20 20 73 65 6E 74 2E 20 20 54 is not sent. T
000020: 68 69 73 20 20 74 69 6D 65 20 20 6F 75 74 20 20 his time out
000030: 69 73 0D 0A 20 20 20 20 20 20 20 70 72 6F 76 69 is.. provi
000040: 64 65 64 20 73 6F 20 74 68 61 74 20 74 68 65 20 ded so that the
000050: 63 61 6C 6C 65 72 20 63 61 6E 20 74 65 73 74 20 caller can test
000060: 20 66 6F 72 20 20 62 72 65 61 6B 20 20 77 68 69 for break whi
000070: 6C 73 74 20 20 64 72 69 76 69 6E 67 20 20 74 68 lst driving th
000080: 65 0D 0A 20 20 20 20 20 20 20 70 72 69 6E 74 65 e.. printe
000090: 72 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 r...........
0000A0: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
0000B0: 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 4D 43 es:.... MC
0000C0: 20 50 52 49 4E 54 20 54 52 41 4E 53 4C 41 54 49 PRINT TRANSLATI
0000D0: 4F 4E 0D 0A 20 20 20 20 20 20 20 4D 43 20 52 45 ON.. MC RE
0000E0: 53 45 54 20 50 52 49 4E 54 45 52 0D 0A 20 20 20 SET PRINTER..
0000F0: 20 20 20 20 4D 43 20 57 41 49 54 20 50 52 49 4E MC WAIT PRIN
000100: 54 45 52 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 TER........
000110: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
000120: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
000130: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
000150: 65 20 31 35 2E 32 32 33 0D 0A 0D 0A 0D 0A 0D 0A e 15.223........
000160: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 38 36 ...... 186
000170: 3A 20 4D 43 20 42 55 53 59 20 50 52 49 4E 54 45 : MC BUSY PRINTE
000180: 52 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 R
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
0001B0: 44 32 45 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 D2E......
0001C0: 54 65 73 74 20 69 66 20 74 68 65 20 43 65 6E 74 Test if the Cent
0001D0: 72 6F 6E 69 63 73 20 70 6F 72 74 20 69 73 20 62 ronics port is b
0001E0: 75 73 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 usy.......
0001F0: 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 Action:......
Size : 512 (Real : 512)
000000: 20 20 20 20 20 54 65 73 74 20 69 66 20 74 68 65 Test if the
000010: 20 70 72 69 6E 74 65 72 20 28 43 65 6E 74 72 6F printer (Centro
000020: 6E 69 63 73 20 70 6F 72 74 29 20 69 73 20 62 75 nics port) is bu
000030: 73 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 sy.......
000040: 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 Entry conditions
000050: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F :...... No
000060: 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A conditions.....
000070: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
000080: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
000090: 20 20 20 20 20 20 49 66 20 43 65 6E 74 72 6F 6E If Centron
0000A0: 69 63 73 20 70 6F 72 74 20 69 73 20 62 75 73 79 ics port is busy
0000B0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 :......
0000C0: 20 20 20 20 20 20 20 43 61 72 72 79 20 74 72 75 Carry tru
0000D0: 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 e....... I
0000E0: 66 20 43 65 6E 74 72 6F 6E 69 63 73 20 70 6F 72 f Centronics por
0000F0: 74 20 69 73 20 69 64 6C 65 3A 0D 0A 0D 0A 0D 0A t is idle:......
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 43 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 0D 0A Carry false.....
000120: 0D 0A 20 20 20 20 20 20 20 41 6C 77 61 79 73 3A .. Always:
000130: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 ......
000140: 20 20 20 20 20 20 4F 74 68 65 72 20 66 6C 61 67 Other flag
000150: 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 s corrupt...
000160: 20 20 20 20 20 20 20 20 20 20 20 20 41 6C 6C 20 All
000170: 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 other registers
000180: 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A preserved.......
000190: 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D Notes:...
0001A0: 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 ... This r
0001B0: 6F 75 74 69 6E 65 20 68 61 73 20 6E 6F 20 6F 74 outine has no ot
0001C0: 68 65 72 20 65 66 66 65 63 74 73 2E 0D 0A 0D 0A her effects.....
0001D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 .... Relat
0001E0: 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D ed entries:.....
0001F0: 0A 20 20 20 20 20 20 20 4D 43 20 53 45 4E 44 20 . MC SEND
Size : 512 (Real : 512)
000000: 50 52 49 4E 54 45 52 0D 0A 0D 0A 0D 0A 0D 0A 0D PRINTER.........
000010: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000020: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000030: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
000060: 31 35 2E 32 32 34 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.224..........
000070: 0D 0A 0D 0A 20 20 20 20 20 20 20 31 38 37 3A 20 .... 187:
000080: 4D 43 20 53 45 4E 44 20 50 52 49 4E 54 45 52 20 MC SEND PRINTER
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 23 42 44 33 #BD3
0000C0: 31 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 1...... Se
0000D0: 6E 64 20 61 20 63 68 61 72 61 63 74 65 72 20 74 nd a character t
0000E0: 6F 20 74 68 65 20 43 65 6E 74 72 6F 6E 69 63 73 o the Centronics
0000F0: 20 70 6F 72 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 port.......
000100: 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A Action:......
000110: 20 20 20 20 20 20 20 53 65 6E 64 20 61 20 63 68 Send a ch
000120: 61 72 61 63 74 65 72 20 74 6F 20 74 68 65 20 70 aracter to the p
000130: 72 69 6E 74 65 72 20 28 43 65 6E 74 72 6F 6E 69 rinter (Centroni
000140: 63 73 20 70 6F 72 74 29 20 77 68 69 63 68 20 20 cs port) which
000150: 6D 75 73 74 20 20 6E 6F 74 20 20 62 65 0D 0A 20 must not be..
000160: 20 20 20 20 20 20 62 75 73 79 2E 0D 0A 0D 0A 0D busy......
000170: 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F . Entry co
000180: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
000190: 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 A contains
0001A0: 20 74 68 65 20 63 68 61 72 61 63 74 65 72 20 74 the character t
0001B0: 6F 20 73 65 6E 64 20 28 62 69 74 20 37 20 69 73 o send (bit 7 is
0001C0: 20 69 67 6E 6F 72 65 64 29 2E 0D 0A 0D 0A 0D 0A ignored).......
0001D0: 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 Exit cond
0001E0: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 itions:......
0001F0: 20 20 20 20 43 61 72 72 79 20 74 72 75 65 2E 0D Carry true..
Size : 512 (Real : 512)
000000: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 61 6E ..... A an
000010: 64 20 6F 74 68 65 72 20 66 6C 61 67 73 20 63 6F d other flags co
000020: 72 72 75 70 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 rrupt.......
000030: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000040: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
000050: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ....... No
000060: 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 tes:......
000070: 20 54 68 65 20 70 72 69 6E 74 65 72 20 6D 75 73 The printer mus
000080: 74 20 6E 6F 74 20 62 65 20 62 75 73 79 20 77 68 t not be busy wh
000090: 65 6E 20 61 20 20 63 68 61 72 61 63 74 65 72 20 en a character
0000A0: 20 69 73 20 20 73 65 6E 74 2E 20 20 54 68 65 20 is sent. The
0000B0: 20 68 69 67 68 65 72 0D 0A 20 20 20 20 20 20 20 higher..
0000C0: 6C 65 76 65 6C 20 72 6F 75 74 69 6E 65 20 4D 43 level routine MC
0000D0: 20 50 52 49 4E 54 20 43 48 41 52 20 77 69 6C 6C PRINT CHAR will
0000E0: 20 61 75 74 6F 6D 61 74 69 63 61 6C 6C 79 20 77 automatically w
0000F0: 61 69 74 20 66 6F 72 20 74 68 65 20 70 72 69 6E ait for the prin
000100: 74 65 72 20 74 6F 0D 0A 20 20 20 20 20 20 20 62 ter to.. b
000110: 65 63 6F 6D 65 20 6E 6F 6E 2D 62 75 73 79 20 61 ecome non-busy a
000120: 6E 64 20 73 68 6F 75 6C 64 20 62 65 20 75 73 65 nd should be use
000130: 64 20 69 6E 20 70 72 65 66 65 72 65 6E 63 65 2E d in preference.
000140: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 ........ R
000150: 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D elated entries:.
000160: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4D 43 20 42 ..... MC B
000170: 55 53 59 20 50 52 49 4E 54 45 52 0D 0A 20 20 20 USY PRINTER..
000180: 20 20 20 20 4D 43 20 50 52 49 4E 54 20 43 48 41 MC PRINT CHA
000190: 52 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D R...............
0001A0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ...............
0001B0: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
0001C0: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
0001D0: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 70 61 67 65 20 31 35 2E 32 32 35 0D 0A 0D 0A page 15.225....
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000010: 20 31 38 38 3A 20 4D 43 20 53 4F 55 4E 44 20 52 188: MC SOUND R
000020: 45 47 49 53 54 45 52 20 20 20 20 20 20 20 20 20 EGISTER
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 23 42 44 33 34 0D 0A 0D 0A 0D 0A 20 20 20 #BD34......
000060: 20 20 20 20 53 65 6E 64 20 64 61 74 61 20 74 6F Send data to
000070: 20 61 20 73 6F 75 6E 64 20 63 68 69 70 20 72 65 a sound chip re
000080: 67 69 73 74 65 72 2E 0D 0A 0D 0A 0D 0A 20 20 20 gister.......
000090: 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D Action:.....
0000A0: 0A 20 20 20 20 20 20 20 53 65 74 20 73 6F 75 6E . Set soun
0000B0: 64 20 63 68 69 70 20 72 65 67 69 73 74 65 72 2E d chip register.
0000C0: 20 54 68 69 73 20 69 73 20 61 20 72 61 74 68 65 This is a rathe
0000D0: 72 20 63 6F 6E 76 6F 6C 75 74 65 64 20 61 63 74 r convoluted act
0000E0: 69 6F 6E 20 62 65 63 61 75 73 65 20 6F 66 0D 0A ion because of..
0000F0: 20 20 20 20 20 20 20 74 68 65 20 77 61 79 20 74 the way t
000100: 68 65 20 68 61 72 64 77 61 72 65 20 68 61 73 20 he hardware has
000110: 62 65 65 6E 20 64 65 73 69 67 6E 65 64 2E 0D 0A been designed...
000120: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 .... Entry
000130: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000140: 0D 0A 20 20 20 20 20 20 20 41 20 63 6F 6E 74 61 .. A conta
000150: 69 6E 73 20 74 68 65 20 73 6F 75 6E 64 20 63 68 ins the sound ch
000160: 69 70 20 72 65 67 69 73 74 65 72 20 6E 75 6D 62 ip register numb
000170: 65 72 2E 0D 0A 20 20 20 20 20 20 20 43 20 63 6F er... C co
000180: 6E 74 61 69 6E 73 20 74 68 65 20 64 61 74 61 20 ntains the data
000190: 74 6F 20 73 65 6E 64 2E 0D 0A 0D 0A 0D 0A 20 20 to send.......
0001A0: 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 Exit condit
0001B0: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
0001C0: 20 20 41 46 20 61 6E 64 20 42 43 20 63 6F 72 72 AF and BC corr
0001D0: 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C upt... All
0001E0: 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 other registers
0001F0: 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D preserved......
Size : 512 (Real : 512)
000000: 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A . Notes:..
000010: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 .... This
000020: 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 73 20 routine enables
000030: 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D 0A 0D interrupts......
000040: 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 ... Relate
000050: 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A d entries:......
000060: 20 20 20 20 20 20 20 4E 6F 6E 65 21 0D 0A 0D 0A None!....
000070: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000080: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000090: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
0000A0: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
0000B0: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 page 1
0000E0: 35 2E 32 32 36 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 5.226...........
0000F0: 0A 0D 0A 20 20 20 20 20 20 20 31 38 39 3A 20 4A ... 189: J
000100: 55 4D 50 20 52 45 53 54 4F 52 45 20 20 20 20 20 UMP RESTORE
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000130: 20 20 20 20 20 20 20 20 20 20 20 23 42 44 33 37 #BD37
000140: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 73 ...... Res
000150: 74 6F 72 65 20 74 68 65 20 73 74 61 6E 64 61 72 tore the standar
000160: 64 20 6A 75 6D 70 62 6C 6F 63 6B 2E 0D 0A 0D 0A d jumpblock.....
000170: 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A .. Action:
000180: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 74 ...... Set
000190: 20 74 68 65 20 6D 61 69 6E 20 66 69 72 6D 77 61 the main firmwa
0001A0: 72 65 20 6A 75 6D 70 62 6C 6F 63 6B 20 74 6F 20 re jumpblock to
0001B0: 69 74 73 20 73 74 61 6E 64 61 72 64 20 73 74 61 its standard sta
0001C0: 74 65 20 61 73 20 64 65 73 63 72 69 62 65 64 20 te as described
0001D0: 20 69 6E 0D 0A 20 20 20 20 20 20 20 73 65 63 74 in.. sect
0001E0: 69 6F 6E 73 20 31 34 2E 31 20 61 6E 64 20 31 35 ions 14.1 and 15
0001F0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E ....... En
Size : 512 (Real : 512)
000000: 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D try conditions:.
000010: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 20 63 ..... No c
000020: 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A onditions.......
000030: 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 Exit cond
000040: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 itions:......
000050: 20 20 20 20 41 46 2C 20 42 43 2C 20 44 45 20 61 AF, BC, DE a
000060: 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E 0D 0A nd HL corrupt...
000070: 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 All other
000080: 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 65 registers prese
000090: 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 rved.......
0000A0: 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 Notes:......
0000B0: 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E This routin
0000C0: 65 20 6D 61 79 20 62 65 20 75 73 65 64 20 74 6F e may be used to
0000D0: 20 72 65 73 74 6F 72 65 20 20 74 68 65 20 20 6A restore the j
0000E0: 75 6D 70 62 6C 6F 63 6B 20 20 74 6F 20 20 69 74 umpblock to it
0000F0: 73 20 20 73 74 61 6E 64 61 72 64 0D 0A 20 20 20 s standard..
000100: 20 20 20 20 72 6F 75 74 69 6E 65 73 20 61 66 74 routines aft
000110: 65 72 20 74 68 65 20 75 73 65 72 20 68 61 73 20 er the user has
000120: 63 68 61 6E 67 65 64 20 65 6E 74 72 69 65 73 20 changed entries
000130: 69 6E 20 69 74 2E 20 54 68 65 20 20 77 68 6F 6C in it. The whol
000140: 65 20 20 6F 66 20 20 74 68 65 0D 0A 20 20 20 20 e of the..
000150: 20 20 20 6A 75 6D 70 62 6C 6F 63 6B 20 69 73 20 jumpblock is
000160: 73 65 74 20 75 70 20 73 6F 20 63 61 72 65 20 6D set up so care m
000170: 75 73 74 20 62 65 20 74 61 6B 65 6E 20 69 66 20 ust be taken if
000180: 6F 74 68 65 72 20 70 72 6F 67 72 61 6D 73 2C 20 other programs,
000190: 20 73 75 63 68 20 20 61 73 0D 0A 20 20 20 20 20 such as..
0001A0: 20 20 41 4D 53 44 4F 53 2C 20 68 61 76 65 20 70 AMSDOS, have p
0001B0: 61 74 63 68 65 64 20 69 74 2E 0D 0A 0D 0A 0D 0A atched it.......
0001C0: 20 20 20 20 20 20 20 54 68 65 20 69 6E 64 69 72 The indir
0001D0: 65 63 74 69 6F 6E 73 20 6A 75 6D 70 62 6C 6F 63 ections jumpbloc
0001E0: 6B 20 69 73 20 73 65 74 20 75 70 20 70 69 65 63 k is set up piec
0001F0: 65 6D 65 61 6C 20 62 79 20 74 68 65 20 20 76 61 emeal by the va
Size : 512 (Real : 512)
000000: 72 69 6F 75 73 20 20 70 61 63 6B 73 27 0D 0A 20 rious packs'..
000010: 20 20 20 20 20 20 69 6E 69 74 69 61 6C 69 7A 61 initializa
000020: 74 69 6F 6E 20 61 6E 64 20 72 65 73 65 74 20 72 tion and reset r
000030: 6F 75 74 69 6E 65 73 2E 20 4A 55 4D 50 20 52 45 outines. JUMP RE
000040: 53 54 4F 52 45 20 64 6F 65 73 20 6E 6F 74 20 20 STORE does not
000050: 73 65 74 20 20 75 70 20 20 74 68 65 0D 0A 20 20 set up the..
000060: 20 20 20 20 20 69 6E 64 69 72 65 63 74 69 6F 6E indirection
000070: 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 s.........
000080: 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 Related entries
000090: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 47 52 :...... GR
0000A0: 41 20 52 45 53 45 54 0D 0A 20 20 20 20 20 20 20 A RESET..
0000B0: 4B 4D 20 52 45 53 45 54 0D 0A 20 20 20 20 20 20 KM RESET..
0000C0: 20 4D 43 20 52 45 53 45 54 20 50 52 49 4E 54 45 MC RESET PRINTE
0000D0: 52 0D 0A 20 20 20 20 20 20 20 53 43 52 20 52 45 R.. SCR RE
0000E0: 53 45 54 0D 0A 20 20 20 20 20 20 20 54 58 54 20 SET.. TXT
0000F0: 52 45 53 45 54 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D RESET...........
000100: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000110: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
000120: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
000130: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
000150: 65 20 31 35 2E 32 32 37 0D 0A 0D 0A 0D 0A 0D 0A e 15.227........
000160: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 39 30 ...... 190
000170: 3A 20 4B 4D 20 53 45 54 20 4C 4F 43 4B 53 20 20 : KM SET LOCKS
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
0001B0: 44 33 41 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 D3A......
0001C0: 53 65 74 20 74 68 65 20 73 68 69 66 74 20 61 6E Set the shift an
0001D0: 64 20 63 61 70 73 20 6C 6F 63 6B 20 73 74 61 74 d caps lock stat
0001E0: 65 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es.......
0001F0: 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 Action:......
Size : 512 (Real : 512)
000000: 20 20 20 20 54 75 72 6E 20 74 68 65 20 73 68 69 Turn the shi
000010: 66 74 20 61 6E 64 20 63 61 70 73 20 6C 6F 63 6B ft and caps lock
000020: 73 20 6F 6E 20 6F 72 20 6F 66 66 2E 0D 0A 0D 0A s on or off.....
000030: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
000040: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
000050: 20 20 20 20 20 20 20 48 20 63 6F 6E 74 61 69 6E H contain
000060: 73 20 74 68 65 20 72 65 71 75 69 72 65 64 20 63 s the required c
000070: 61 70 73 20 6C 6F 63 6B 20 73 74 61 74 65 2E 0D aps lock state..
000080: 0A 20 20 20 20 20 20 20 4C 20 63 6F 6E 74 61 69 . L contai
000090: 6E 73 20 74 68 65 20 72 65 71 75 69 72 65 64 20 ns the required
0000A0: 73 68 69 66 74 20 6C 6F 63 6B 20 73 74 61 74 65 shift lock state
0000B0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 ....... Ex
0000C0: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
0000D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 20 63 6F .... AF co
0000E0: 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 rrupt... A
0000F0: 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 ll other registe
000100: 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D rs preserved....
000110: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A ... Notes:
000120: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 ...... Thi
000130: 73 20 72 6F 75 74 69 6E 65 20 69 73 20 6E 6F 74 s routine is not
000140: 20 61 76 61 69 6C 61 62 6C 65 20 6F 6E 20 56 31 available on V1
000150: 2E 30 20 66 69 72 6D 77 61 72 65 2E 0D 0A 0D 0A .0 firmware.....
000160: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 6C 6F 63 .. The loc
000170: 6B 20 73 74 61 74 65 73 20 61 72 65 3A 0D 0A 0D k states are:...
000180: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000190: 20 20 20 23 30 30 20 6D 65 61 6E 73 20 74 68 61 #00 means tha
0001A0: 74 20 74 68 65 20 6C 6F 63 6B 20 69 73 20 74 6F t the lock is to
0001B0: 20 62 65 20 74 75 72 6E 65 64 20 6F 66 66 2E 0D be turned off..
0001C0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0001D0: 20 23 46 46 20 6D 65 61 6E 73 20 74 68 61 74 20 #FF means that
0001E0: 74 68 65 20 6C 6F 63 6B 20 69 73 20 74 6F 20 62 the lock is to b
0001F0: 65 20 74 75 72 6E 65 64 20 6F 6E 2E 0D 0A 0D 0A e turned on.....
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 64 65 66 .. The def
000010: 61 75 6C 74 20 6C 6F 63 6B 20 73 74 61 74 65 73 ault lock states
000020: 20 61 72 65 20 6F 66 66 2E 0D 0A 0D 0A 0D 0A 0D are off........
000030: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
000040: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 entries:......
000050: 20 20 20 20 20 4B 4D 20 47 45 54 20 53 54 41 54 KM GET STAT
000060: 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D E...............
000070: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000080: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
000090: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
0000A0: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
0000C0: 65 20 31 35 2E 32 32 38 0D 0A 0D 0A 0D 0A 0D 0A e 15.228........
0000D0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 39 31 ...... 191
0000E0: 3A 20 4B 4D 20 46 4C 55 53 48 20 20 20 20 20 20 : KM FLUSH
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
000120: 44 33 44 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 D3D......
000130: 46 6C 75 73 68 20 74 68 65 20 6B 65 79 62 6F 61 Flush the keyboa
000140: 72 64 20 62 75 66 66 65 72 73 2E 0D 0A 0D 0A 0D rd buffers......
000150: 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D . Action:.
000160: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 69 73 63 ..... Disc
000170: 61 72 64 20 61 6C 6C 20 70 65 6E 64 69 6E 67 20 ard all pending
000180: 6B 65 79 73 20 66 72 6F 6D 20 74 68 65 20 6B 65 keys from the ke
000190: 79 20 62 75 66 66 65 72 2C 20 74 68 65 20 27 70 y buffer, the 'p
0001A0: 75 74 20 62 61 63 6B 27 20 63 68 61 72 61 63 74 ut back' charact
0001B0: 65 72 0D 0A 20 20 20 20 20 20 20 61 6E 64 20 61 er.. and a
0001C0: 6E 79 20 63 75 72 72 65 6E 74 20 65 78 70 61 6E ny current expan
0001D0: 73 69 6F 6E 20 73 74 72 69 6E 67 2E 0D 0A 0D 0A sion string.....
0001E0: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
0001F0: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 4E 6F 20 63 6F 6E 64 69 74 No condit
000010: 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions.......
000020: 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E Exit condition
000030: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 s:...... A
000040: 46 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 F corrupt...
000050: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000060: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
000070: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ....... No
000080: 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 tes:......
000090: 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 69 73 This routine is
0000A0: 20 6E 6F 74 20 61 76 61 69 6C 61 62 6C 65 20 6F not available o
0000B0: 6E 20 56 31 2E 30 20 66 69 72 6D 77 61 72 65 2E n V1.0 firmware.
0000C0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
0000D0: 20 6E 65 78 74 20 63 68 61 72 61 63 74 65 72 20 next character
0000E0: 74 68 61 74 20 77 69 6C 6C 20 62 65 20 72 65 74 that will be ret
0000F0: 75 72 6E 65 64 20 62 79 20 4B 4D 20 52 45 41 44 urned by KM READ
000100: 20 43 48 41 52 20 28 6F 72 20 61 20 73 69 6D 69 CHAR (or a simi
000110: 6C 61 72 0D 0A 20 20 20 20 20 20 20 72 6F 75 74 lar.. rout
000120: 69 6E 65 29 20 61 66 74 65 72 20 4B 4D 20 46 4C ine) after KM FL
000130: 55 53 48 20 69 73 20 63 61 6C 6C 65 64 20 77 69 USH is called wi
000140: 6C 6C 20 62 65 20 74 68 65 20 66 69 72 73 74 20 ll be the first
000150: 63 68 61 72 61 63 74 65 72 20 74 68 61 74 20 74 character that t
000160: 68 65 0D 0A 20 20 20 20 20 20 20 75 73 65 72 20 he.. user
000170: 74 79 70 65 73 20 61 66 74 65 72 20 74 68 65 20 types after the
000180: 63 61 6C 6C 20 6F 66 20 4B 4D 20 46 4C 55 53 48 call of KM FLUSH
000190: 20 73 69 6E 63 65 20 61 6C 6C 20 74 68 65 20 70 since all the p
0001A0: 65 6E 64 69 6E 67 20 63 68 61 72 61 63 74 65 72 ending character
0001B0: 73 0D 0A 20 20 20 20 20 20 20 77 69 6C 6C 20 68 s.. will h
0001C0: 61 76 65 20 62 65 65 6E 20 64 69 73 63 61 72 64 ave been discard
0001D0: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
0001E0: 4F 6E 20 56 31 2E 30 20 66 69 72 6D 77 61 72 65 On V1.0 firmware
0001F0: 20 74 68 65 20 65 66 66 65 63 74 20 20 6F 66 20 the effect of
Size : 512 (Real : 512)
000000: 20 74 68 69 73 20 20 72 6F 75 74 69 6E 65 20 20 this routine
000010: 63 61 6E 20 20 62 65 20 20 73 69 6D 75 6C 61 74 can be simulat
000020: 65 64 20 20 62 79 0D 0A 20 20 20 20 20 20 20 72 ed by.. r
000030: 65 70 65 61 74 65 64 6C 79 20 63 61 6C 6C 69 6E epeatedly callin
000040: 67 20 4B 4D 20 52 45 41 44 20 43 48 41 52 20 75 g KM READ CHAR u
000050: 6E 74 69 6C 20 69 74 20 63 6F 6D 65 73 20 62 61 ntil it comes ba
000060: 63 6B 20 77 69 74 68 20 63 61 72 72 79 20 66 61 ck with carry fa
000070: 6C 73 65 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 lse.........
000080: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
000090: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
0000A0: 4B 4D 20 52 45 41 44 20 43 48 41 52 0D 0A 20 20 KM READ CHAR..
0000B0: 20 20 20 20 20 4B 4D 20 52 45 41 44 20 4B 45 59 KM READ KEY
0000C0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000D0: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
0000E0: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
0000F0: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 page 1
000120: 35 2E 32 32 39 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 5.229...........
000130: 0A 0D 0A 20 20 20 20 20 20 20 31 39 32 3A 20 54 ... 192: T
000140: 58 54 20 41 53 4B 20 53 54 41 54 45 20 20 20 20 XT ASK STATE
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 20 20 20 20 20 20 20 20 20 20 23 42 44 34 30 #BD40
000180: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 47 65 74 ...... Get
000190: 20 74 68 65 20 73 74 61 74 65 20 6F 66 20 74 68 the state of th
0001A0: 65 20 54 65 78 74 20 56 44 55 2E 0D 0A 0D 0A 0D e Text VDU......
0001B0: 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D . Action:.
0001C0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 74 75 ..... Retu
0001D0: 72 6E 73 20 74 68 65 20 56 44 55 20 65 6E 61 62 rns the VDU enab
0001E0: 6C 65 2F 64 69 73 61 62 6C 65 20 73 74 61 74 65 le/disable state
0001F0: 20 61 6E 64 20 74 68 65 20 63 75 72 73 6F 72 20 and the cursor
Size : 512 (Real : 512)
000000: 6F 6E 2F 6F 66 66 20 61 6E 64 20 20 63 75 72 73 on/off and curs
000010: 6F 72 0D 0A 20 20 20 20 20 20 20 65 6E 61 62 6C or.. enabl
000020: 65 2F 64 69 73 61 62 6C 65 20 73 74 61 74 65 73 e/disable states
000030: 20 6F 66 20 74 68 65 20 63 75 72 72 65 6E 74 20 of the current
000040: 73 65 6C 65 63 74 65 64 20 73 74 72 65 61 6D 2E selected stream.
000050: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 ...... Ent
000060: 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A ry conditions:..
000070: 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 20 63 6F .... No co
000080: 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 20 nditions.......
000090: 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 Exit condi
0000A0: 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tions:......
0000B0: 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 74 68 A contains th
0000C0: 65 20 73 74 72 65 61 6D 20 73 74 61 74 65 2E 0D e stream state..
0000D0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 6C 61 67 ..... Flag
0000E0: 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 s corrupt...
0000F0: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000100: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
000110: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ....... No
000120: 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 tes:......
000130: 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 69 73 This routine is
000140: 20 6E 6F 74 20 61 76 61 69 6C 61 62 6C 65 20 6F not available o
000150: 6E 20 56 31 2E 30 20 66 69 72 6D 77 61 72 65 2E n V1.0 firmware.
000160: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
000170: 20 73 74 72 65 61 6D 20 73 74 61 74 65 20 69 73 stream state is
000180: 20 72 65 74 75 72 6E 65 64 20 61 73 20 66 6F 6C returned as fol
000190: 6C 6F 77 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 lows:......
0001A0: 20 20 20 20 20 20 42 69 74 20 30 20 20 20 20 20 Bit 0
0001B0: 20 20 20 20 20 30 20 2D 2D 3E 20 63 75 72 73 6F 0 --> curso
0001C0: 72 20 65 6E 61 62 6C 65 64 2C 20 20 20 20 20 20 r enabled,
0001D0: 20 20 31 20 2D 2D 3E 20 63 75 72 73 6F 72 20 64 1 --> cursor d
0001E0: 69 73 61 62 6C 65 64 2E 0D 0A 20 20 20 20 20 20 isabled...
0001F0: 20 20 20 20 20 42 69 74 20 31 20 20 20 20 20 20 Bit 1
Size : 512 (Real : 512)
000000: 20 20 20 20 30 20 2D 2D 3E 20 63 75 72 73 6F 72 0 --> cursor
000010: 20 6F 6E 2C 20 20 20 20 20 20 20 20 20 20 20 20 on,
000020: 20 31 20 2D 2D 3E 20 63 75 72 73 6F 72 20 6F 66 1 --> cursor of
000030: 66 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 42 f... B
000040: 69 74 73 20 32 2E 2E 36 20 20 20 20 20 20 61 72 its 2..6 ar
000050: 65 20 75 6E 64 65 66 69 6E 65 64 2E 0D 0A 20 20 e undefined...
000060: 20 20 20 20 20 20 20 20 20 42 69 74 20 37 20 20 Bit 7
000070: 20 20 20 20 20 20 20 20 30 20 2D 2D 3E 20 56 44 0 --> VD
000080: 55 20 64 69 73 61 62 6C 65 64 2C 20 20 20 20 20 U disabled,
000090: 20 20 20 20 20 31 20 2D 2D 3E 20 56 44 55 20 65 1 --> VDU e
0000A0: 6E 61 62 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 nabled.........
0000B0: 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E Related en
0000C0: 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tries:......
0000D0: 20 20 20 54 58 54 20 43 55 52 20 44 49 53 41 42 TXT CUR DISAB
0000E0: 4C 45 0D 0A 20 20 20 20 20 20 20 54 58 54 20 43 LE.. TXT C
0000F0: 55 52 20 45 4E 41 42 4C 45 0D 0A 20 20 20 20 20 UR ENABLE..
000100: 20 20 54 58 54 20 43 55 52 20 4F 46 46 0D 0A 20 TXT CUR OFF..
000110: 20 20 20 20 20 20 54 58 54 20 43 55 52 20 4F 4E TXT CUR ON
000120: 0D 0A 20 20 20 20 20 20 20 54 58 54 20 56 44 55 .. TXT VDU
000130: 20 44 49 53 41 42 4C 45 0D 0A 20 20 20 20 20 20 DISABLE..
000140: 20 54 58 54 20 56 44 55 20 45 4E 41 42 4C 45 0D TXT VDU ENABLE.
000150: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000160: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
000170: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
000180: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
0001A0: 65 20 31 35 2E 32 33 30 0D 0A 0D 0A 0D 0A 0D 0A e 15.230........
0001B0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 39 33 ...... 193
0001C0: 3A 20 47 52 41 20 44 45 46 41 55 4C 54 20 20 20 : GRA DEFAULT
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
Size : 512 (Real : 512)
000000: 44 33 34 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 D34......
000010: 53 65 74 20 74 68 65 20 64 65 66 61 75 6C 74 20 Set the default
000020: 47 72 61 70 68 69 63 73 20 56 44 55 20 6D 6F 64 Graphics VDU mod
000030: 65 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es.......
000040: 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 Action:......
000050: 20 20 20 20 53 65 74 73 20 74 68 65 20 67 72 61 Sets the gra
000060: 70 68 69 63 73 20 77 72 69 74 65 20 6D 6F 64 65 phics write mode
000070: 2C 20 62 61 63 6B 67 72 6F 75 6E 64 20 6D 6F 64 , background mod
000080: 65 2C 20 20 66 69 72 73 74 20 20 70 69 78 65 6C e, first pixel
000090: 20 20 6D 6F 64 65 20 20 61 6E 64 0D 0A 20 20 20 mode and..
0000A0: 20 20 20 20 6C 69 6E 65 20 6D 61 73 6B 20 74 6F line mask to
0000B0: 20 74 68 65 69 72 20 64 65 66 61 75 6C 74 20 73 their default s
0000C0: 65 74 74 69 6E 67 73 2E 0D 0A 0D 0A 0D 0A 20 20 ettings.......
0000D0: 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 Entry condi
0000E0: 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tions:......
0000F0: 20 20 20 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 No conditions
000100: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 ....... Ex
000110: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
000120: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 2C 20 42 .... AF, B
000130: 43 2C 20 44 45 20 61 6E 64 20 48 4C 20 63 6F 72 C, DE and HL cor
000140: 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C rupt... Al
000150: 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 l other register
000160: 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A s preserved.....
000170: 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D .. Notes:.
000180: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ..... This
000190: 20 72 6F 75 74 69 6E 65 20 69 73 20 6E 6F 74 20 routine is not
0001A0: 61 76 61 69 6C 61 62 6C 65 20 6F 6E 20 56 31 2E available on V1.
0001B0: 30 20 66 69 72 6D 77 61 72 65 2E 0D 0A 0D 0A 0D 0 firmware......
0001C0: 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 . This rou
0001D0: 74 69 6E 65 20 73 65 74 73 20 74 68 65 20 66 6F tine sets the fo
0001E0: 6C 6C 6F 77 69 6E 67 20 6D 6F 64 65 73 3A 0D 0A llowing modes:..
0001F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 47 72 61 70 68 .... Graph
Size : 512 (Real : 512)
000000: 69 63 73 20 77 72 69 74 65 20 6D 6F 64 65 20 69 ics write mode i
000010: 73 20 73 65 74 20 74 6F 20 66 6F 72 63 65 2E 0D s set to force..
000020: 0A 20 20 20 20 20 20 20 47 72 61 70 68 69 63 73 . Graphics
000030: 20 62 61 63 6B 67 72 6F 75 6E 64 20 6D 6F 64 65 background mode
000040: 20 69 73 20 73 65 74 20 74 6F 20 6F 70 61 71 75 is set to opaqu
000050: 65 2E 0D 0A 20 20 20 20 20 20 20 46 69 72 73 74 e... First
000060: 20 70 6F 69 6E 74 20 6D 6F 64 65 20 69 73 20 73 point mode is s
000070: 65 74 20 74 6F 20 70 6C 6F 74 20 74 68 65 20 66 et to plot the f
000080: 69 72 73 74 20 70 69 78 65 6C 20 6F 66 20 6C 69 irst pixel of li
000090: 6E 65 73 2E 0D 0A 20 20 20 20 20 20 20 4C 69 6E nes... Lin
0000A0: 65 20 6D 61 73 6B 20 69 73 20 73 65 74 20 74 6F e mask is set to
0000B0: 20 67 69 76 65 20 63 6F 6E 74 69 6E 75 6F 75 73 give continuous
0000C0: 20 6C 69 6E 65 73 20 28 6D 61 73 6B 20 6F 66 20 lines (mask of
0000D0: 23 46 46 29 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 #FF).........
0000E0: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
0000F0: 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ies:......
000100: 20 47 52 41 20 49 4E 49 54 49 41 4C 49 53 45 0D GRA INITIALISE.
000110: 0A 20 20 20 20 20 20 20 47 52 41 20 52 45 53 45 . GRA RESE
000120: 54 0D 0A 20 20 20 20 20 20 20 47 52 41 20 53 45 T.. GRA SE
000130: 54 20 42 41 43 4B 0D 0A 20 20 20 20 20 20 20 47 T BACK.. G
000140: 52 41 20 53 45 54 20 46 49 52 53 54 0D 0A 20 20 RA SET FIRST..
000150: 20 20 20 20 20 47 52 41 20 53 45 54 20 4C 49 4E GRA SET LIN
000160: 45 20 4D 41 53 4B 0D 0A 20 20 20 20 20 20 20 53 E MASK.. S
000170: 43 52 20 41 43 43 45 53 53 0D 0A 0D 0A 0D 0A 0D CR ACCESS.......
000180: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000190: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
0001A0: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
0001B0: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
0001D0: 65 20 31 35 2E 32 33 31 0D 0A 0D 0A 0D 0A 0D 0A e 15.231........
0001E0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 39 34 ...... 194
0001F0: 3A 20 47 52 41 20 53 45 54 20 42 41 43 4B 20 20 : GRA SET BACK
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
000030: 44 34 36 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 D46.... Se
000040: 74 20 77 68 65 74 68 65 72 20 62 61 63 6B 67 72 t whether backgr
000050: 6F 75 6E 64 20 69 73 20 74 6F 20 62 65 20 77 72 ound is to be wr
000060: 69 74 74 65 6E 2E 0D 0A 0D 0A 20 20 20 20 20 20 itten.....
000070: 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 Action:....
000080: 20 20 20 53 65 74 20 74 68 65 20 67 72 61 70 68 Set the graph
000090: 69 63 73 20 62 61 63 6B 67 72 6F 75 6E 64 20 77 ics background w
0000A0: 72 69 74 65 20 6D 6F 64 65 20 74 6F 20 6F 70 61 rite mode to opa
0000B0: 71 75 65 20 6F 72 20 74 72 61 6E 73 70 61 72 65 que or transpare
0000C0: 6E 74 2E 20 20 54 68 69 73 0D 0A 20 20 20 20 20 nt. This..
0000D0: 20 20 61 66 66 65 63 74 73 20 68 6F 77 20 47 52 affects how GR
0000E0: 41 20 4C 49 4E 45 20 41 42 53 4F 4C 55 54 45 2C A LINE ABSOLUTE,
0000F0: 20 47 52 41 20 4C 49 4E 45 20 52 45 4C 41 54 49 GRA LINE RELATI
000100: 56 45 20 61 6E 64 20 47 52 41 20 57 52 20 43 48 VE and GRA WR CH
000110: 41 52 20 77 72 69 74 65 0D 0A 20 20 20 20 20 20 AR write..
000120: 20 27 62 61 63 6B 67 72 6F 75 6E 64 27 20 70 69 'background' pi
000130: 78 65 6C 73 2E 20 49 6E 20 6F 70 61 71 75 65 20 xels. In opaque
000140: 6D 6F 64 65 20 74 68 65 20 20 70 69 78 65 6C 73 mode the pixels
000150: 20 20 61 72 65 20 20 77 72 69 74 74 65 6E 20 20 are written
000160: 69 6E 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 in the..
000170: 63 75 72 72 65 6E 74 20 20 70 61 70 65 72 20 20 current paper
000180: 69 6E 6B 20 20 75 73 69 6E 67 20 20 74 68 65 20 ink using the
000190: 20 63 75 72 72 65 6E 74 20 20 67 72 61 70 68 69 current graphi
0001A0: 63 73 20 20 77 72 69 74 65 20 20 20 6D 6F 64 65 cs write mode
0001B0: 2E 20 20 20 49 6E 0D 0A 20 20 20 20 20 20 20 74 . In.. t
0001C0: 72 61 6E 73 70 61 72 65 6E 74 20 6D 6F 64 65 20 ransparent mode
0001D0: 74 68 65 73 65 20 70 69 78 65 6C 73 20 61 72 65 these pixels are
0001E0: 20 6E 6F 74 20 70 6C 6F 74 74 65 64 20 61 74 20 not plotted at
0001F0: 61 6C 6C 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 all..... E
Size : 512 (Real : 512)
000000: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
000010: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 62 61 .... If ba
000020: 63 6B 67 72 6F 75 6E 64 20 69 73 20 74 6F 20 62 ckground is to b
000030: 65 20 77 72 69 74 74 65 6E 20 28 6F 70 61 71 75 e written (opaqu
000040: 65 20 6D 6F 64 65 29 3A 0D 0A 0D 0A 20 20 20 20 e mode):....
000050: 20 20 20 20 20 20 20 20 20 20 20 20 41 20 6D 75 A mu
000060: 73 74 20 62 65 20 7A 65 72 6F 2E 0D 0A 0D 0A 20 st be zero.....
000070: 20 20 20 20 20 20 49 66 20 62 61 63 6B 67 72 6F If backgro
000080: 75 6E 64 20 69 73 20 6E 6F 74 20 74 6F 20 62 65 und is not to be
000090: 20 77 72 69 74 74 65 6E 20 28 74 72 61 6E 73 70 written (transp
0000A0: 61 72 65 6E 74 20 6D 6F 64 65 29 3A 0D 0A 0D 0A arent mode):....
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 41 20 6D 75 73 74 20 62 65 20 6E 6F 6E 2D 7A 65 A must be non-ze
0000D0: 72 6F 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 ro..... Ex
0000E0: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
0000F0: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 72 65 67 .. All reg
000100: 69 73 74 65 72 73 20 61 6E 64 20 66 6C 61 67 73 isters and flags
000110: 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D preserved......
000120: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A ... Notes:
000130: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 ...... Thi
000140: 73 20 72 6F 75 74 69 6E 65 20 69 73 20 6E 6F 74 s routine is not
000150: 20 61 76 61 69 6C 61 62 6C 65 20 6F 6E 20 56 31 available on V1
000160: 2E 30 20 66 69 72 6D 77 61 72 65 2E 0D 0A 0D 0A .0 firmware.....
000170: 0D 0A 20 20 20 20 20 20 20 54 72 61 6E 73 70 61 .. Transpa
000180: 72 65 6E 74 20 77 72 69 74 65 20 6D 6F 64 65 20 rent write mode
000190: 69 73 20 20 75 73 65 66 75 6C 20 20 66 6F 72 20 is useful for
0001A0: 20 61 6E 6E 6F 74 61 74 69 6E 67 20 20 64 69 61 annotating dia
0001B0: 67 72 61 6D 73 20 20 61 6E 64 20 20 66 6F 72 0D grams and for.
0001C0: 0A 20 20 20 20 20 20 20 73 69 6D 69 6C 61 72 20 . similar
0001D0: 61 70 70 6C 69 63 61 74 69 6F 6E 73 2E 0D 0A 0D applications....
0001E0: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 67 72 ... The gr
0001F0: 61 70 68 69 63 73 20 62 61 63 6B 67 72 6F 75 6E aphics backgroun
Size : 512 (Real : 512)
000000: 64 20 77 72 69 74 65 20 6D 6F 64 65 20 69 73 20 d write mode is
000010: 73 69 6D 69 6C 61 72 20 74 6F 20 20 62 75 74 20 similar to but
000020: 20 69 6E 64 65 70 65 6E 64 65 6E 74 20 20 6F 66 independent of
000030: 0D 0A 20 20 20 20 20 20 20 74 68 65 20 63 68 61 .. the cha
000040: 72 61 63 74 65 72 20 77 72 69 74 65 20 6D 6F 64 racter write mod
000050: 65 20 6F 66 20 65 61 63 68 20 73 74 72 65 61 6D e of each stream
000060: 20 6F 66 20 74 68 65 20 54 65 78 74 20 56 44 55 of the Text VDU
000070: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
000080: 65 20 64 65 66 61 75 6C 74 20 73 65 74 74 69 6E e default settin
000090: 67 20 69 73 20 6F 70 61 71 75 65 20 6D 6F 64 65 g is opaque mode
0000A0: 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
0000B0: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
0000C0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 47 52 41 ...... GRA
0000D0: 20 44 45 46 41 55 4C 54 0D 0A 20 20 20 20 20 20 DEFAULT..
0000E0: 20 47 52 41 20 4C 49 4E 45 0D 0A 20 20 20 20 20 GRA LINE..
0000F0: 20 20 47 52 41 20 4C 49 4E 45 20 41 42 53 4F 4C GRA LINE ABSOL
000100: 55 54 45 0D 0A 20 20 20 20 20 20 20 47 52 41 20 UTE.. GRA
000110: 4C 49 4E 45 20 52 45 4C 41 54 49 56 45 0D 0A 20 LINE RELATIVE..
000120: 20 20 20 20 20 20 47 52 41 20 53 45 54 20 4C 49 GRA SET LI
000130: 4E 45 20 4D 41 53 4B 0D 0A 20 20 20 20 20 20 20 NE MASK..
000140: 47 52 41 20 57 52 20 43 48 41 52 0D 0A 20 20 20 GRA WR CHAR..
000150: 20 20 20 20 54 58 54 20 53 45 54 20 42 41 43 4B TXT SET BACK
000160: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
000170: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
000180: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 page 1
0001B0: 35 2E 32 33 32 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 5.232...........
0001C0: 0A 0D 0A 20 20 20 20 20 20 20 31 39 35 3A 20 47 ... 195: G
0001D0: 52 41 20 53 45 54 20 46 49 52 53 54 20 20 20 20 RA SET FIRST
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 23 42 44 34 39 #BD49
000010: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 74 ...... Set
000020: 20 77 68 65 74 68 65 72 20 74 68 65 20 66 69 72 whether the fir
000030: 73 74 20 70 6F 69 6E 74 20 6F 66 20 61 20 6C 69 st point of a li
000040: 6E 65 20 69 73 20 74 6F 20 62 65 20 70 6C 6F 74 ne is to be plot
000050: 74 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ted.......
000060: 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 Action:......
000070: 20 20 20 20 20 54 75 72 6E 20 70 6C 6F 74 74 69 Turn plotti
000080: 6E 67 20 6F 66 20 74 68 65 20 66 69 72 73 74 20 ng of the first
000090: 70 69 78 65 6C 20 6F 66 20 6C 69 6E 65 73 20 6F pixel of lines o
0000A0: 6E 20 6F 72 20 6F 66 66 2E 0D 0A 0D 0A 0D 0A 20 n or off.......
0000B0: 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 Entry cond
0000C0: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 itions:......
0000D0: 20 20 20 20 49 66 20 74 68 65 20 66 69 72 73 74 If the first
0000E0: 20 70 69 78 65 6C 20 69 73 20 6E 6F 74 20 74 6F pixel is not to
0000F0: 20 62 65 20 70 6C 6F 74 74 65 64 3A 0D 0A 0D 0A be plotted:....
000100: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000110: 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 7A 65 72 A contains zer
000120: 6F 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 o....... I
000130: 66 20 74 68 65 20 66 69 72 73 74 20 70 69 78 65 f the first pixe
000140: 6C 20 69 73 20 74 6F 20 62 65 20 70 6C 6F 74 74 l is to be plott
000150: 65 64 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed:......
000160: 20 20 20 20 20 20 20 20 20 41 20 63 6F 6E 74 61 A conta
000170: 69 6E 73 20 6E 6F 6E 2D 7A 65 72 6F 2E 0D 0A 0D ins non-zero....
000180: 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 ... Exit c
000190: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
0001A0: 20 20 20 20 20 20 20 41 6C 6C 20 72 65 67 69 73 All regis
0001B0: 74 65 72 73 20 61 6E 64 20 66 6C 61 67 73 20 70 ters and flags p
0001C0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
0001D0: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
0001E0: 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F .. This ro
0001F0: 75 74 69 6E 65 20 69 73 20 6E 6F 74 20 61 76 61 utine is not ava
Size : 512 (Real : 512)
000000: 69 6C 61 62 6C 65 20 6F 6E 20 56 31 2E 30 20 66 ilable on V1.0 f
000010: 69 72 6D 77 61 72 65 2E 0D 0A 0D 0A 0D 0A 20 20 irmware.......
000020: 20 20 20 20 20 54 75 72 6E 69 6E 67 20 6F 66 66 Turning off
000030: 20 74 68 65 20 70 6C 6F 74 74 69 6E 67 20 6F 66 the plotting of
000040: 20 74 68 65 20 66 69 72 73 74 20 70 69 78 65 6C the first pixel
000050: 20 6F 66 20 61 20 6C 69 6E 65 20 69 73 20 20 70 of a line is p
000060: 61 72 74 69 63 75 6C 61 72 6C 79 0D 0A 20 20 20 articularly..
000070: 20 20 20 20 75 73 65 66 75 6C 20 77 68 65 6E 20 useful when
000080: 64 72 61 77 69 6E 67 20 75 73 69 6E 67 20 58 4F drawing using XO
000090: 52 20 67 72 61 70 68 69 63 73 20 77 72 69 74 65 R graphics write
0000A0: 20 6D 6F 64 65 2E 20 46 6F 72 20 65 78 61 6D 70 mode. For examp
0000B0: 6C 65 2C 20 20 69 66 20 20 61 0D 0A 20 20 20 20 le, if a..
0000C0: 20 20 20 62 6F 78 20 69 73 20 64 72 61 77 6E 20 box is drawn
0000D0: 69 6E 20 58 4F 52 20 6D 6F 64 65 20 77 68 65 6E in XOR mode when
0000E0: 20 74 68 65 20 20 66 69 72 73 74 20 20 70 69 78 the first pix
0000F0: 65 6C 20 20 6F 66 20 20 6C 69 6E 65 73 20 20 61 el of lines a
000100: 72 65 20 20 62 65 69 6E 67 0D 0A 20 20 20 20 20 re being..
000110: 20 20 70 6C 6F 74 74 65 64 20 74 68 65 6E 20 74 plotted then t
000120: 68 65 20 63 6F 72 6E 65 72 20 70 69 78 65 6C 73 he corner pixels
000130: 20 77 69 6C 6C 20 65 20 70 6C 6F 74 74 65 64 20 will e plotted
000140: 74 77 69 63 65 20 61 6E 64 20 77 69 6C 6C 20 74 twice and will t
000150: 68 65 72 65 66 6F 72 65 0D 0A 20 20 20 20 20 20 herefore..
000160: 20 6E 6F 74 20 62 65 20 73 65 74 2E 20 42 79 20 not be set. By
000170: 6E 6F 74 20 70 6C 6F 74 74 69 6E 67 20 74 68 65 not plotting the
000180: 20 66 69 72 73 74 20 70 69 78 65 6C 20 6F 66 20 first pixel of
000190: 6C 69 6E 65 73 20 20 74 68 69 73 20 20 65 66 66 lines this eff
0001A0: 65 63 74 20 20 69 73 0D 0A 20 20 20 20 20 20 20 ect is..
0001B0: 61 76 6F 69 64 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 avoided.......
0001C0: 20 20 20 20 20 54 68 65 20 64 65 66 61 75 6C 74 The default
0001D0: 20 73 65 74 74 69 6E 67 20 66 6F 72 20 74 68 69 setting for thi
0001E0: 73 20 6D 6F 64 65 20 69 73 20 74 6F 20 70 6C 6F s mode is to plo
0001F0: 74 20 74 68 65 20 66 69 72 73 74 20 70 69 78 65 t the first pixe
Size : 512 (Real : 512)
000000: 6C 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 l....... R
000010: 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D elated entries:.
000020: 0A 0D 0A 20 20 20 20 20 20 20 47 52 41 20 44 45 ... GRA DE
000030: 46 41 55 4C 54 0D 0A 20 20 20 20 20 20 20 47 52 FAULT.. GR
000040: 41 20 4C 49 4E 45 0D 0A 20 20 20 20 20 20 20 47 A LINE.. G
000050: 52 41 20 4C 49 4E 45 20 41 42 53 4F 4C 55 54 45 RA LINE ABSOLUTE
000060: 0D 0A 20 20 20 20 20 20 20 47 52 41 20 4C 49 4E .. GRA LIN
000070: 45 20 52 45 4C 41 54 49 56 45 0D 0A 0D 0A 0D 0A E RELATIVE......
000080: 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 .. AMSTRAD
000090: 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 CPC464/664/6128
0000A0: 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 FIRMWARE
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 70 61 67 65 20 31 35 2E 32 33 33 0D page 15.233.
0000D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
0000E0: 20 20 20 20 31 39 36 3A 20 47 52 41 20 53 45 54 196: GRA SET
0000F0: 20 4C 49 4E 45 20 4D 41 53 4B 20 20 20 20 20 20 LINE MASK
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 23 42 44 34 43 0D 0A 0D 0A 20 20 #BD4C....
000130: 20 20 20 20 20 53 65 74 20 74 68 65 20 6C 69 6E Set the lin
000140: 65 20 6D 61 73 6B 20 66 6F 72 20 70 6C 6F 74 74 e mask for plott
000150: 69 6E 67 20 70 69 78 65 6C 73 20 6F 66 20 6C 69 ing pixels of li
000160: 6E 65 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 nes..... A
000170: 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 ction:....
000180: 20 53 65 74 20 74 68 65 20 6C 69 6E 65 20 6D 61 Set the line ma
000190: 73 6B 20 74 68 61 74 20 20 73 70 65 63 69 66 69 sk that specifi
0001A0: 65 73 20 20 68 6F 77 20 20 70 69 78 65 6C 73 20 es how pixels
0001B0: 20 6F 6E 20 20 6C 69 6E 65 73 20 20 61 72 65 20 on lines are
0001C0: 20 74 6F 20 20 62 65 0D 0A 20 20 20 20 20 20 20 to be..
0001D0: 70 6C 6F 74 74 65 64 2E 20 57 68 65 72 65 20 61 plotted. Where a
0001E0: 20 62 69 74 20 69 6E 20 74 68 65 20 6D 61 73 6B bit in the mask
0001F0: 20 69 73 20 73 65 74 20 74 68 65 20 70 69 78 65 is set the pixe
Size : 512 (Real : 512)
000000: 6C 20 77 69 6C 6C 20 62 65 20 20 70 6C 6F 74 74 l will be plott
000010: 65 64 20 20 69 6E 0D 0A 20 20 20 20 20 20 20 74 ed in.. t
000020: 68 65 20 66 6F 72 65 67 72 6F 75 6E 64 20 28 69 he foreground (i
000030: 6E 20 67 72 61 70 68 69 63 73 20 70 65 6E 20 69 n graphics pen i
000040: 6E 6B 20 75 73 69 6E 67 20 74 68 65 20 20 67 72 nk using the gr
000050: 61 70 68 69 63 73 20 20 77 72 69 74 65 20 20 6D aphics write m
000060: 6F 64 65 29 2E 0D 0A 20 20 20 20 20 20 20 57 68 ode)... Wh
000070: 65 72 65 20 61 20 70 69 78 65 6C 20 69 6E 20 74 ere a pixel in t
000080: 68 65 20 6D 61 73 6B 20 69 73 20 6E 6F 74 20 73 he mask is not s
000090: 65 74 20 74 68 65 20 70 69 78 65 6C 20 77 69 6C et the pixel wil
0000A0: 6C 20 65 69 74 68 65 72 20 62 65 20 20 70 6C 6F l either be plo
0000B0: 74 74 65 64 0D 0A 20 20 20 20 20 20 20 69 6E 20 tted.. in
0000C0: 74 68 65 20 67 72 61 70 68 69 63 73 20 70 61 70 the graphics pap
0000D0: 65 72 20 69 6E 6B 20 75 73 69 6E 67 20 74 68 65 er ink using the
0000E0: 20 67 72 61 70 68 69 63 73 20 77 72 69 74 65 20 graphics write
0000F0: 6D 6F 64 65 20 6F 72 20 77 69 6C 6C 20 6E 6F 74 mode or will not
000100: 20 62 65 0D 0A 20 20 20 20 20 20 20 70 6C 6F 74 be.. plot
000110: 74 65 64 20 61 74 20 61 6C 6C 20 64 65 70 65 6E ted at all depen
000120: 64 69 6E 67 20 6F 6E 20 74 68 65 20 67 72 61 70 ding on the grap
000130: 68 69 63 73 20 62 61 63 6B 67 72 6F 75 6E 64 20 hics background
000140: 77 72 69 74 65 20 6D 6F 64 65 2E 0D 0A 0D 0A 20 write mode.....
000150: 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 Entry cond
000160: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
000170: 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 A contains the
000180: 20 6C 69 6E 65 20 6D 61 73 6B 20 74 6F 20 75 73 line mask to us
000190: 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 e..... Exi
0001A0: 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D t conditions:...
0001B0: 0A 20 20 20 20 20 20 20 41 6C 6C 20 72 65 67 69 . All regi
0001C0: 73 74 65 72 73 20 61 6E 64 20 66 6C 61 67 73 20 sters and flags
0001D0: 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 preserved.....
0001E0: 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 Notes:....
0001F0: 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 This routi
Size : 512 (Real : 512)
000000: 6E 65 20 69 73 20 6E 6F 74 20 61 76 61 69 6C 61 ne is not availa
000010: 62 6C 65 20 6F 6E 20 56 31 2E 30 20 66 69 72 6D ble on V1.0 firm
000020: 77 61 72 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 ware.....
000030: 54 68 65 20 6C 69 6E 65 20 6D 61 73 6B 20 69 73 The line mask is
000040: 20 75 73 65 64 20 73 74 61 72 74 69 6E 67 20 77 used starting w
000050: 69 74 68 20 62 69 74 20 37 20 61 6E 64 20 72 75 ith bit 7 and ru
000060: 6E 6E 69 6E 67 20 20 74 6F 20 20 62 69 74 20 20 nning to bit
000070: 30 20 20 61 6E 64 0D 0A 20 20 20 20 20 20 20 74 0 and.. t
000080: 68 65 6E 20 73 74 61 72 74 69 6E 67 20 77 69 74 hen starting wit
000090: 68 20 62 69 74 20 37 20 61 67 61 69 6E 2E 20 53 h bit 7 again. S
0000A0: 75 63 63 65 73 73 69 76 65 20 6C 69 6E 65 73 20 uccessive lines
0000B0: 77 69 6C 6C 20 75 73 65 20 74 68 65 20 6D 61 73 will use the mas
0000C0: 6B 20 20 61 73 0D 0A 20 20 20 20 20 20 20 69 74 k as.. it
0000D0: 20 77 61 73 20 6C 65 66 74 20 77 68 65 6E 20 74 was left when t
0000E0: 68 65 20 70 72 65 76 69 6F 75 73 20 6C 69 6E 65 he previous line
0000F0: 20 66 69 6E 69 73 68 65 64 2C 20 74 68 65 20 20 finished, the
000100: 6D 61 73 6B 20 20 69 73 20 20 6E 6F 74 20 20 72 mask is not r
000110: 65 73 65 74 0D 0A 20 20 20 20 20 20 20 62 65 74 eset.. bet
000120: 77 65 65 6E 20 6C 69 6E 65 73 2E 0D 0A 0D 0A 20 ween lines.....
000130: 20 20 20 20 20 20 54 68 65 20 6C 69 6E 65 20 6D The line m
000140: 61 73 6B 20 73 70 65 63 69 66 69 65 73 20 68 6F ask specifies ho
000150: 77 20 70 69 78 65 6C 73 20 61 72 65 20 74 6F 20 w pixels are to
000160: 62 65 20 70 6C 6F 74 74 65 64 2E 20 54 68 69 73 be plotted. This
000170: 20 6D 65 61 6E 73 20 20 74 68 61 74 0D 0A 20 20 means that..
000180: 20 20 20 20 20 74 68 65 20 73 61 6D 65 20 6D 61 the same ma
000190: 73 6B 20 77 69 6C 6C 20 67 69 76 65 20 6E 6F 74 sk will give not
0001A0: 69 63 65 61 62 6C 79 20 64 69 66 66 65 72 65 6E iceably differen
0001B0: 74 20 65 66 66 65 63 74 73 20 20 69 6E 20 20 74 t effects in t
0001C0: 68 65 20 20 76 61 72 69 6F 75 73 0D 0A 20 20 20 he various..
0001D0: 20 20 20 20 73 63 72 65 65 6E 20 6D 6F 64 65 73 screen modes
0001E0: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
0001F0: 6D 61 73 6B 20 69 73 20 61 70 70 6C 69 65 64 20 mask is applied
Size : 512 (Real : 512)
000000: 74 6F 20 74 68 65 20 6C 69 6E 65 20 72 75 6E 6E to the line runn
000010: 69 6E 67 20 66 72 6F 6D 20 6C 65 66 74 20 20 74 ing from left t
000020: 6F 20 20 72 69 67 68 74 20 20 6F 72 20 20 66 72 o right or fr
000030: 6F 6D 0D 0A 20 20 20 20 20 20 20 62 6F 74 74 6F om.. botto
000040: 6D 20 74 6F 20 74 6F 70 2C 20 64 65 70 65 6E 64 m to top, depend
000050: 69 6E 67 20 6F 6E 20 74 68 65 20 61 6E 67 6C 65 ing on the angle
000060: 20 6F 66 20 20 74 68 65 20 20 6C 69 6E 65 2C 20 of the line,
000070: 20 69 72 72 65 73 70 65 63 74 69 76 65 20 20 6F irrespective o
000080: 66 0D 0A 20 20 20 20 20 20 20 77 68 69 63 68 20 f.. which
000090: 77 61 79 20 72 6F 75 6E 64 20 74 68 65 20 65 6E way round the en
0000A0: 64 20 70 6F 69 6E 74 73 20 6F 66 20 74 68 65 20 d points of the
0000B0: 6C 69 6E 65 20 61 72 65 20 73 70 65 63 69 66 69 line are specifi
0000C0: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
0000D0: 49 66 20 74 68 65 20 66 69 72 73 74 20 70 69 78 If the first pix
0000E0: 65 6C 20 6F 66 20 74 68 65 20 6C 69 6E 65 20 69 el of the line i
0000F0: 73 20 6E 6F 74 20 62 65 69 6E 67 20 70 6C 6F 74 s not being plot
000100: 74 65 64 20 74 68 65 6E 20 74 68 65 20 6C 69 6E ted then the lin
000110: 65 20 6D 61 73 6B 0D 0A 20 20 20 20 20 20 20 69 e mask.. i
000120: 73 20 61 70 70 6C 69 65 64 20 74 6F 20 74 68 65 s applied to the
000130: 20 73 65 63 6F 6E 64 20 70 69 78 65 6C 20 6F 66 second pixel of
000140: 20 74 68 65 20 6C 69 6E 65 20 66 69 72 73 74 2E the line first.
000150: 20 49 74 20 69 73 20 6E 6F 74 20 73 74 65 70 70 It is not stepp
000160: 65 64 20 6F 6E 0D 0A 20 20 20 20 20 20 20 66 6F ed on.. fo
000170: 72 20 74 68 65 20 6D 69 73 73 69 6E 67 20 66 69 r the missing fi
000180: 72 73 74 20 70 69 78 65 6C 2E 0D 0A 0D 0A 0D 0A rst pixel.......
000190: 20 20 20 20 20 20 20 54 68 65 20 64 65 66 61 75 The defau
0001A0: 6C 74 20 6C 69 6E 65 20 6D 61 73 6B 20 20 69 73 lt line mask is
0001B0: 20 20 23 46 46 20 20 77 68 69 63 68 20 20 70 6C #FF which pl
0001C0: 6F 74 20 20 74 68 65 20 20 77 68 6F 6C 65 20 20 ot the whole
0001D0: 6C 69 6E 65 20 20 69 6E 20 20 74 68 65 0D 0A 20 line in the..
0001E0: 20 20 20 20 20 20 66 6F 72 65 67 72 6F 75 6E 64 foreground
0001F0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 ....... Re
Size : 512 (Real : 512)
000000: 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A lated entries:..
000010: 0D 0A 20 20 20 20 20 20 20 47 52 41 20 44 45 46 .. GRA DEF
000020: 41 55 4C 54 0D 0A 20 20 20 20 20 20 20 47 52 41 AULT.. GRA
000030: 20 4C 49 4E 45 0D 0A 20 20 20 20 20 20 20 47 52 LINE.. GR
000040: 41 20 4C 49 4E 45 20 41 42 53 4F 4C 55 54 45 0D A LINE ABSOLUTE.
000050: 0A 20 20 20 20 20 20 20 47 52 41 20 4C 49 4E 45 . GRA LINE
000060: 20 52 45 4C 41 54 49 56 45 0D 0A 20 20 20 20 20 RELATIVE..
000070: 20 20 47 52 41 20 53 45 54 20 42 41 43 4B 0D 0A GRA SET BACK..
000080: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
000090: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
0000A0: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 page 1
0000D0: 35 2E 32 33 34 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 5.234...........
0000E0: 0A 0D 0A 20 20 20 20 20 20 20 31 39 37 3A 20 47 ... 197: G
0000F0: 52 41 20 46 52 4F 4D 20 55 53 45 52 20 20 20 20 RA FROM USER
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 20 20 20 20 20 20 20 20 20 20 23 42 44 34 46 #BD4F
000130: 0D 0A 0D 0A 20 20 20 20 20 20 20 43 6F 6E 76 65 .... Conve
000140: 72 74 20 75 73 65 72 20 63 6F 6F 72 64 69 6E 61 rt user coordina
000150: 74 65 73 20 74 6F 20 62 61 73 65 20 63 6F 6F 72 tes to base coor
000160: 64 69 6E 61 74 65 73 2E 0D 0A 0D 0A 20 20 20 20 dinates.....
000170: 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 Action:....
000180: 20 20 20 20 20 43 6F 6E 76 65 72 74 20 74 68 65 Convert the
000190: 20 63 6F 6F 72 64 69 6E 61 74 65 73 20 6F 66 20 coordinates of
0001A0: 61 20 20 70 6F 69 6E 74 20 20 66 72 6F 6D 20 20 a point from
0001B0: 75 73 65 72 20 20 63 6F 6F 72 64 69 6E 61 74 65 user coordinate
0001C0: 73 20 20 74 6F 20 20 62 61 73 65 0D 0A 20 20 20 s to base..
0001D0: 20 20 20 20 63 6F 6F 72 64 69 6E 61 74 65 73 20 coordinates
0001E0: 72 6F 75 6E 64 69 6E 67 20 61 73 20 61 70 70 72 rounding as appr
0001F0: 6F 70 72 69 61 74 65 2E 0D 0A 0D 0A 20 20 20 20 opriate.....
Size : 512 (Real : 512)
000000: 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 Entry conditi
000010: 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 ons:.... D
000020: 45 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 75 E contains the u
000030: 73 65 72 20 58 20 63 6F 6F 72 64 69 6E 61 74 65 ser X coordinate
000040: 2E 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 6E ... HL con
000050: 74 61 69 6E 73 20 74 68 65 20 75 73 65 72 20 59 tains the user Y
000060: 20 63 6F 6F 72 64 69 6E 61 74 65 2E 0D 0A 0D 0A coordinate.....
000070: 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 Exit cond
000080: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
000090: 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 68 DE contains th
0000A0: 65 20 62 61 73 65 20 58 20 63 6F 6F 72 64 69 6E e base X coordin
0000B0: 61 74 65 2E 0D 0A 20 20 20 20 20 20 20 48 4C 20 ate... HL
0000C0: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 62 61 73 contains the bas
0000D0: 65 20 59 20 63 6F 6F 72 64 69 6E 61 74 65 2E 0D e Y coordinate..
0000E0: 0A 0D 0A 20 20 20 20 20 20 20 41 46 20 63 6F 72 ... AF cor
0000F0: 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C rupt... Al
000100: 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 l other register
000110: 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A s preserved.....
000120: 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D Notes:...
000130: 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 ... This r
000140: 6F 75 74 69 6E 65 20 69 73 20 6E 6F 74 20 61 76 outine is not av
000150: 61 69 6C 61 62 6C 65 20 6F 6E 20 56 31 2E 30 20 ailable on V1.0
000160: 66 69 72 6D 77 61 72 65 2E 0D 0A 0D 0A 0D 0A 20 firmware.......
000170: 20 20 20 20 20 20 54 68 65 20 66 6F 6C 6C 6F 77 The follow
000180: 69 6E 67 20 66 6F 72 6D 75 6C 61 65 20 61 72 65 ing formulae are
000190: 20 75 73 65 64 20 20 74 6F 20 20 63 6F 6E 76 65 used to conve
0001A0: 72 74 20 20 62 65 74 77 65 65 6E 20 20 74 68 65 rt between the
0001B0: 20 20 63 6F 6F 72 64 69 6E 61 74 65 0D 0A 20 20 coordinate..
0001C0: 20 20 20 20 20 73 79 73 74 65 6D 73 3A 0D 0A 0D systems:...
0001D0: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
0001E0: 20 20 20 42 61 73 65 20 58 20 20 20 20 3D 20 28 Base X = (
0001F0: 4F 72 69 67 69 6E 20 58 20 2B 20 52 6F 75 6E 64 Origin X + Round
Size : 512 (Real : 512)
000000: 65 64 20 58 29 20 2F 20 50 6F 69 6E 74 73 20 70 ed X) / Points p
000010: 65 72 20 70 69 78 65 6C 0D 0A 20 20 20 20 20 20 er pixel..
000020: 20 20 20 20 20 20 20 20 20 20 52 6F 75 6E 64 65 Rounde
000030: 64 20 58 20 3D 20 28 55 73 65 72 20 58 20 2B 20 d X = (User X +
000040: 52 6F 75 6E 64 20 66 61 63 74 6F 72 29 20 41 4E Round factor) AN
000050: 44 20 52 6F 75 6E 64 20 6D 61 73 6B 0D 0A 0D 0A D Round mask....
000060: 0D 0A 20 20 20 20 20 20 20 57 68 65 72 65 3A 0D .. Where:.
000070: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 .....
000080: 20 20 20 20 20 20 20 52 6F 75 6E 64 20 66 61 63 Round fac
000090: 74 6F 72 20 20 20 20 20 20 20 20 20 20 52 6F 75 tor Rou
0000A0: 6E 64 20 6D 61 73 6B 20 20 20 20 20 20 20 20 20 nd mask
0000B0: 50 6F 69 6E 74 73 20 70 65 72 20 70 69 78 65 6C Points per pixel
0000C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
0000D0: 20 2B 76 65 20 75 73 65 72 20 58 20 2D 76 65 20 +ve user X -ve
0000E0: 75 73 65 72 20 58 0D 0A 0D 0A 20 20 20 20 20 20 user X....
0000F0: 20 4D 6F 64 65 20 30 3A 20 20 20 20 20 30 20 20 Mode 0: 0
000100: 20 20 20 20 20 20 30 20 20 20 20 20 20 20 20 20 0
000110: 20 20 20 20 23 46 46 46 46 20 20 20 20 20 20 20 #FFFF
000120: 20 20 20 20 20 20 20 20 20 20 20 20 31 0D 0A 20 1..
000130: 20 20 20 20 20 20 4D 6F 64 65 20 31 3A 20 20 20 Mode 1:
000140: 20 20 30 20 20 20 20 20 20 20 20 31 20 20 20 20 0 1
000150: 20 20 20 20 20 20 20 20 20 23 46 46 46 45 20 20 #FFFE
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 32 0D 0A 20 20 20 20 20 20 20 4D 6F 64 65 20 2.. Mode
000180: 32 3A 20 20 20 20 20 30 20 20 20 20 20 20 20 20 2: 0
000190: 33 20 20 20 20 20 20 20 20 20 20 20 20 20 23 46 3 #F
0001A0: 46 46 43 20 20 20 20 20 20 20 20 20 20 20 20 20 FFC
0001B0: 20 20 20 20 20 20 34 0D 0A 0D 0A 20 20 20 20 20 4....
0001C0: 20 20 20 20 20 20 20 20 20 20 42 61 73 65 20 59 Base Y
0001D0: 20 20 20 20 20 3D 20 28 4F 72 69 67 69 6E 20 59 = (Origin Y
0001E0: 20 2B 20 52 6F 75 6E 64 65 64 20 59 29 20 2F 20 + Rounded Y) /
0001F0: 50 6F 69 6E 74 73 20 70 65 72 20 70 69 78 65 6C Points per pixel
Size : 512 (Real : 512)
000000: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000010: 20 52 6F 75 6E 64 65 64 20 59 20 20 3D 20 28 55 Rounded Y = (U
000020: 73 65 72 20 59 20 2B 20 52 6F 75 6E 64 20 66 61 ser Y + Round fa
000030: 63 74 6F 72 29 20 41 4E 44 20 52 6F 75 6E 64 20 ctor) AND Round
000040: 6D 61 73 6B 0D 0A 0D 0A 20 20 20 20 20 20 20 57 mask.... W
000050: 68 65 72 65 3A 20 20 20 20 20 20 20 20 20 20 20 here:
000060: 20 20 52 6F 75 6E 64 20 66 61 63 74 6F 72 20 20 Round factor
000070: 20 20 20 20 20 20 3D 20 30 20 66 6F 72 20 2B 76 = 0 for +v
000080: 65 20 75 73 65 72 20 59 0D 0A 20 20 20 20 20 20 e user Y..
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 3D 20 31 20 66 6F 72 20 = 1 for
0000C0: 2D 76 65 20 75 73 65 72 20 59 0D 0A 20 20 20 20 -ve user Y..
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000E0: 20 20 20 20 20 20 52 6F 75 6E 64 20 6D 61 73 6B Round mask
0000F0: 20 20 20 20 20 20 20 20 20 20 3D 20 23 46 46 46 = #FFF
000100: 45 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 E..
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 50 6F 69 Poi
000120: 6E 74 73 20 70 65 72 20 70 69 78 65 6C 20 20 20 nts per pixel
000130: 20 3D 20 32 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A = 2............
000140: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
000150: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
000160: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 20 70 61 67 65 20 31 35 2E 32 33 35 0D 0A 0D page 15.235...
000190: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
0001A0: 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 69 This routine i
0001B0: 73 20 70 61 72 74 69 63 75 6C 61 72 6C 79 20 75 s particularly u
0001C0: 73 65 66 75 6C 20 77 68 65 6E 20 63 61 6C 6C 69 seful when calli
0001D0: 6E 67 20 53 63 72 65 65 6E 20 70 61 63 6B 20 20 ng Screen pack
0001E0: 72 6F 75 74 69 6E 65 73 0D 0A 20 20 20 20 20 20 routines..
0001F0: 20 77 68 69 63 68 20 74 61 6B 65 20 74 68 65 20 which take the
Size : 512 (Real : 512)
000000: 70 6F 73 69 74 69 6F 6E 73 20 6F 66 20 70 6F 69 positions of poi
000010: 6E 74 73 20 69 6E 20 62 61 73 65 20 63 6F 6F 72 nts in base coor
000020: 64 69 6E 61 74 65 73 2E 0D 0A 0D 0A 0D 0A 0D 0A dinates.........
000030: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
000040: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 entries:......
000050: 20 20 20 20 20 20 47 52 41 20 53 45 54 20 4F 52 GRA SET OR
000060: 49 47 49 4E 0D 0A 20 20 20 20 20 20 20 53 43 52 IGIN.. SCR
000070: 20 44 4F 54 20 50 4F 53 49 54 49 4F 4E 0D 0A 0D DOT POSITION...
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000090: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000A0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ...............
0000E0: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
0000F0: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
000100: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 20 70 61 67 65 20 31 35 2E 32 33 36 0D 0A 1A 20 page 15.236...
000130: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
000140: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
000150: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
000170: 65 20 31 35 2E 32 33 38 0D 0A 1A 6F 6E 6F 75 73 e 15.238...onous
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 31 39 38 3A 20 47 52 41 20 46 49 4C 4C 198: GRA FILL
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 23 42 44 35 32 0D 0A 0D 0A 20 20 20 #BD52....
000060: 20 20 20 20 46 69 6C 6C 20 61 6E 20 61 72 65 61 Fill an area
000070: 20 6F 66 20 74 68 65 20 73 63 72 65 65 6E 2E 0D of the screen..
000080: 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F 6E ... Action
000090: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 69 6C 6C :.... Fill
0000A0: 20 61 6E 20 61 72 65 61 20 6F 66 20 74 68 65 20 an area of the
0000B0: 73 63 72 65 65 6E 20 63 6F 6E 74 61 69 6E 69 6E screen containin
0000C0: 67 20 74 68 65 20 20 63 75 72 72 65 6E 74 20 20 g the current
0000D0: 67 72 61 70 68 69 63 73 20 20 70 6F 73 69 74 69 graphics positi
0000E0: 6F 6E 0D 0A 20 20 20 20 20 20 20 61 6E 64 20 62 on.. and b
0000F0: 6F 75 6E 64 65 64 20 62 79 20 74 68 65 20 65 64 ounded by the ed
000100: 67 65 20 6F 66 20 74 68 65 20 77 69 6E 64 6F 77 ge of the window
000110: 20 61 6E 64 20 70 69 78 65 6C 73 20 73 65 74 20 and pixels set
000120: 74 6F 20 74 68 65 20 70 65 6E 20 69 6E 6B 2E 0D to the pen ink..
000130: 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 ... Entry
000140: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
000150: 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 A contains
000160: 20 74 68 65 20 28 75 6E 65 6E 63 6F 64 65 64 29 the (unencoded)
000170: 20 69 6E 6B 20 74 6F 20 66 69 6C 6C 20 74 68 65 ink to fill the
000180: 20 61 72 65 61 20 77 69 74 68 2E 0D 0A 20 20 20 area with...
000190: 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 HL contains
0001A0: 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 61 the address of a
0001B0: 20 62 75 66 66 65 72 2E 0D 0A 20 20 20 20 20 20 buffer...
0001C0: 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 DE contains the
0001D0: 20 6C 65 6E 67 74 68 20 6F 66 20 74 68 65 20 62 length of the b
0001E0: 75 66 66 65 72 2E 0D 0A 0D 0A 20 20 20 20 20 20 uffer.....
0001F0: 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 Exit conditions
Size : 512 (Real : 512)
000000: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 :.... If t
000010: 68 65 20 61 72 65 61 20 77 61 73 20 66 69 6C 6C he area was fill
000020: 65 64 20 73 75 63 63 65 73 73 66 75 6C 6C 79 3A ed successfully:
000030: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
000040: 20 20 20 20 43 61 72 72 79 20 74 72 75 65 2E 0D Carry true..
000050: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 ... If the
000060: 20 61 72 65 61 20 77 61 73 20 6E 6F 74 20 66 69 area was not fi
000070: 6C 6C 65 64 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 lled:....
000080: 20 20 20 20 20 20 20 20 20 43 61 72 72 79 20 66 Carry f
000090: 61 6C 73 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 alse.....
0000A0: 41 6C 77 61 79 73 3A 0D 0A 0D 0A 20 20 20 20 20 Always:....
0000B0: 20 20 20 20 20 20 20 20 20 20 20 41 2C 20 42 43 A, BC
0000C0: 2C 20 44 45 2C 20 48 4C 20 61 6E 64 20 6F 74 68 , DE, HL and oth
0000D0: 65 72 20 66 6C 61 67 73 20 63 6F 72 72 75 70 74 er flags corrupt
0000E0: 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
0000F0: 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 All other reg
000100: 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 64 isters preserved
000110: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 ..... Note
000120: 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 s:.... Thi
000130: 73 20 72 6F 75 74 69 6E 65 20 69 73 20 6E 6F 74 s routine is not
000140: 20 61 76 61 69 6C 61 62 6C 65 20 6F 6E 20 56 31 available on V1
000150: 2E 30 20 66 69 72 6D 77 61 72 65 2E 0D 0A 0D 0A .0 firmware.....
000160: 20 20 20 20 20 20 20 54 68 65 20 66 69 6C 6C 69 The filli
000170: 6E 67 20 61 6C 67 6F 72 69 74 68 6D 20 74 72 65 ng algorithm tre
000180: 61 74 73 20 70 69 78 65 6C 73 20 73 65 74 20 74 ats pixels set t
000190: 6F 20 74 68 65 20 20 63 75 72 72 65 6E 74 20 20 o the current
0001A0: 70 65 6E 20 20 69 6E 6B 20 20 61 6E 64 0D 0A 20 pen ink and..
0001B0: 20 20 20 20 20 20 70 69 78 65 6C 73 20 73 65 74 pixels set
0001C0: 20 74 6F 20 74 68 65 20 69 6E 6B 20 74 68 61 74 to the ink that
0001D0: 20 69 73 20 62 65 69 6E 67 20 75 73 65 64 20 66 is being used f
0001E0: 6F 72 20 66 69 6C 6C 69 6E 67 20 61 73 20 64 65 or filling as de
0001F0: 6C 69 6D 69 74 65 72 73 20 20 6F 66 0D 0A 20 20 limiters of..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 74 68 65 20 65 64 67 65 20 6F 66 the edge of
000010: 20 74 68 65 20 61 72 65 61 2E 20 54 68 65 20 66 the area. The f
000020: 69 6C 6C 20 69 6E 6B 20 61 6E 64 20 74 68 65 20 ill ink and the
000030: 70 65 6E 20 69 6E 6B 20 20 6D 61 79 20 20 62 65 pen ink may be
000040: 20 20 74 68 65 20 20 73 61 6D 65 0D 0A 20 20 20 the same..
000050: 20 20 20 20 69 6E 6B 2E 0D 0A 0D 0A 20 20 20 20 ink.....
000060: 20 20 20 50 69 78 65 6C 73 20 74 68 61 74 20 61 Pixels that a
000070: 72 65 20 66 69 6C 6C 65 64 20 61 72 65 20 73 65 re filled are se
000080: 74 20 74 6F 20 74 68 65 20 66 69 6C 6C 20 20 69 t to the fill i
000090: 6E 6B 2E 20 20 54 68 65 20 20 67 72 61 70 68 69 nk. The graphi
0000A0: 63 73 20 20 77 72 69 74 65 0D 0A 20 20 20 20 20 cs write..
0000B0: 20 20 6D 6F 64 65 20 64 6F 65 73 20 6E 6F 74 20 mode does not
0000C0: 61 66 66 65 63 74 20 74 68 65 20 77 61 79 20 70 affect the way p
0000D0: 69 78 65 6C 73 20 61 72 65 20 77 72 69 74 74 65 ixels are writte
0000E0: 6E 20 77 68 65 6E 20 66 69 6C 6C 69 6E 67 2E 0D n when filling..
0000F0: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 69 ... The fi
000100: 6C 6C 69 6E 67 20 61 6C 67 6F 72 69 74 68 6D 20 lling algorithm
000110: 6F 6E 6C 79 20 6D 6F 76 65 73 20 75 70 2C 20 64 only moves up, d
000120: 6F 77 6E 2C 20 72 69 67 68 74 20 6F 72 20 6C 65 own, right or le
000130: 66 74 2E 20 49 74 20 64 6F 65 73 20 20 6E 6F 74 ft. It does not
000140: 0D 0A 20 20 20 20 20 20 20 6D 6F 76 65 20 64 69 .. move di
000150: 61 67 6F 6E 61 6C 6C 79 20 61 6E 64 20 73 6F 20 agonally and so
000160: 74 68 65 20 61 6C 67 6F 72 69 74 68 6D 20 77 69 the algorithm wi
000170: 6C 6C 20 6E 6F 74 20 27 65 73 63 61 70 65 27 20 ll not 'escape'
000180: 74 68 72 6F 75 67 68 20 20 61 20 20 67 61 70 0D through a gap.
000190: 0A 20 20 20 20 20 20 20 62 65 74 77 65 65 6E 20 . between
0001A0: 74 68 65 20 65 64 67 65 20 70 69 78 65 6C 73 20 the edge pixels
0001B0: 74 68 61 74 20 61 72 65 20 64 69 61 67 6F 6E 61 that are diagona
0001C0: 6C 6C 79 20 61 64 6A 61 63 65 6E 74 2E 20 54 68 lly adjacent. Th
0001D0: 69 73 20 6D 65 61 6E 73 20 20 74 68 61 74 0D 0A is means that..
0001E0: 20 20 20 20 20 20 20 74 68 65 20 65 64 67 65 20 the edge
0001F0: 63 61 6E 20 62 65 20 64 65 6C 69 6D 69 74 65 64 can be delimited
Size : 512 (Real : 512)
000000: 20 75 73 69 6E 67 20 74 68 65 20 6E 6F 72 6D 61 using the norma
000010: 6C 20 6C 69 6E 65 73 20 64 72 61 77 6E 20 62 79 l lines drawn by
000020: 20 74 68 65 20 47 72 61 70 68 69 63 73 0D 0A 20 the Graphics..
000030: 20 20 20 20 20 20 56 44 55 2E 0D 0A 0D 0A 20 20 VDU.....
000040: 20 20 20 20 20 54 68 65 20 66 69 6C 6C 69 6E 67 The filling
000050: 20 61 6C 67 6F 72 69 74 68 6D 20 61 76 6F 69 64 algorithm avoid
000060: 73 20 72 65 63 75 72 73 69 6E 67 2E 20 49 6E 73 s recursing. Ins
000070: 74 65 61 64 20 69 74 20 73 74 6F 72 65 73 20 27 tead it stores '
000080: 69 6E 74 65 72 65 73 74 69 6E 67 0D 0A 20 20 20 interesting..
000090: 20 20 20 20 70 6F 69 6E 74 73 27 2C 20 70 6C 61 points', pla
0000A0: 63 65 73 20 74 68 61 74 20 74 68 65 20 61 6C 67 ces that the alg
0000B0: 6F 72 69 74 68 6D 20 68 61 73 20 63 68 6F 73 65 orithm has chose
0000C0: 6E 20 6F 6E 65 20 72 6F 75 74 65 20 20 74 6F 20 n one route to
0000D0: 20 66 69 6C 6C 20 20 62 75 74 0D 0A 20 20 20 20 fill but..
0000E0: 20 20 20 6D 69 67 68 74 20 68 61 76 65 20 63 68 might have ch
0000F0: 6F 73 65 6E 20 61 6E 6F 74 68 65 72 20 72 6F 75 osen another rou
000100: 74 65 2C 20 69 6E 20 74 68 65 20 62 75 66 66 65 te, in the buffe
000110: 72 20 73 75 70 70 6C 69 65 64 20 62 79 20 20 74 r supplied by t
000120: 68 65 20 20 75 73 65 72 2E 0D 0A 20 20 20 20 20 he user...
000130: 20 20 54 68 65 20 62 75 66 66 65 72 20 6D 61 79 The buffer may
000140: 20 6C 69 65 20 61 6E 79 77 68 65 72 65 20 69 6E lie anywhere in
000150: 20 52 41 4D 2E 20 45 61 63 68 20 20 27 69 6E 74 RAM. Each 'int
000160: 65 72 65 73 74 69 6E 67 20 20 70 6F 69 6E 74 27 eresting point'
000170: 20 20 73 74 6F 72 65 64 0D 0A 20 20 20 20 20 20 stored..
000180: 20 75 73 65 73 20 37 20 62 79 74 65 73 20 6F 66 uses 7 bytes of
000190: 20 74 68 65 20 62 75 66 66 65 72 20 61 6E 64 20 the buffer and
0001A0: 74 68 65 72 65 20 69 73 20 61 6E 20 6F 76 65 72 there is an over
0001B0: 68 65 61 64 20 6F 66 20 31 20 62 79 74 65 20 75 head of 1 byte u
0001C0: 73 65 64 20 20 74 6F 0D 0A 20 20 20 20 20 20 20 sed to..
0001D0: 6D 61 72 6B 20 74 68 65 20 65 6E 64 20 6F 66 20 mark the end of
0001E0: 74 68 65 20 62 75 66 66 65 72 2E 20 54 68 75 73 the buffer. Thus
0001F0: 20 61 20 62 75 66 66 65 72 20 36 34 20 62 79 74 a buffer 64 byt
Size : 512 (Real : 512)
000000: 65 73 20 6C 6F 6E 67 20 77 69 6C 6C 20 20 61 6C es long will al
000010: 6C 6F 77 20 20 39 0D 0A 20 20 20 20 20 20 20 27 low 9.. '
000020: 69 6E 74 65 72 65 73 74 69 6E 67 20 70 6F 69 6E interesting poin
000030: 74 73 27 20 74 6F 20 62 65 20 20 73 74 6F 72 65 ts' to be store
000040: 64 20 20 77 68 69 63 68 20 20 73 68 6F 75 6C 64 d which should
000050: 20 20 62 65 20 20 73 75 66 66 69 63 69 65 6E 74 be sufficient
000060: 20 20 66 6F 72 0D 0A 20 20 20 20 20 20 20 66 69 for.. fi
000070: 6C 6C 69 6E 67 20 6D 6F 73 74 20 73 69 6D 70 6C lling most simpl
000080: 65 20 61 72 65 61 73 2E 0D 0A 0D 0A 0D 0A 0D 0A e areas.........
000090: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
0000A0: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
0000B0: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 20 70 61 67 65 20 31 35 2E 32 33 37 0D 0A 0D page 15.237...
0000E0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
0000F0: 20 20 54 68 65 20 61 72 65 61 20 74 6F 20 62 65 The area to be
000100: 20 66 69 6C 6C 65 64 20 6D 61 79 20 62 65 20 61 filled may be a
000110: 73 20 63 6F 6D 70 6C 69 63 61 74 65 64 20 61 73 s complicated as
000120: 20 72 65 71 75 69 72 65 64 20 62 75 74 20 20 74 required but t
000130: 68 65 20 20 6D 6F 72 65 0D 0A 20 20 20 20 20 20 he more..
000140: 20 63 6F 6D 70 6C 69 63 61 74 65 64 20 74 68 65 complicated the
000150: 20 73 68 61 70 65 20 74 68 65 20 6C 6F 6E 67 65 shape the longe
000160: 72 20 74 68 65 20 27 69 6E 74 65 72 65 73 74 69 r the 'interesti
000170: 6E 67 20 70 6F 69 6E 74 27 20 62 75 66 66 65 72 ng point' buffer
000180: 20 20 6E 65 65 64 73 0D 0A 20 20 20 20 20 20 20 needs..
000190: 74 6F 20 62 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 to be.......
0001A0: 20 20 20 54 68 65 20 66 61 69 6C 75 72 65 20 72 The failure r
0001B0: 65 74 75 72 6E 20 66 72 6F 6D 20 74 68 69 73 20 eturn from this
0001C0: 72 6F 75 74 69 6E 65 20 20 63 61 6E 20 20 6F 63 routine can oc
0001D0: 63 75 72 20 20 66 6F 72 20 20 74 68 72 65 65 20 cur for three
0001E0: 20 72 65 61 73 6F 6E 73 2E 0D 0A 20 20 20 20 20 reasons...
0001F0: 20 20 46 69 72 73 74 6C 79 2C 20 74 68 65 20 63 Firstly, the c
Size : 512 (Real : 512)
000000: 75 72 72 65 6E 74 20 67 72 61 70 68 69 63 73 20 urrent graphics
000010: 70 6F 73 69 74 69 6F 6E 20 20 6D 61 79 20 20 62 position may b
000020: 65 20 20 6F 75 74 73 69 64 65 20 20 74 68 65 20 e outside the
000030: 20 77 69 6E 64 6F 77 2E 0D 0A 20 20 20 20 20 20 window...
000040: 20 53 65 63 6F 6E 64 6C 79 2C 20 74 68 65 20 70 Secondly, the p
000050: 69 78 65 6C 20 61 74 20 74 68 65 20 63 75 72 72 ixel at the curr
000060: 65 6E 74 20 67 72 61 70 68 69 63 73 20 70 6F 73 ent graphics pos
000070: 69 74 69 6F 6E 20 6D 61 79 20 62 65 20 65 64 67 ition may be edg
000080: 65 20 20 28 70 65 6E 0D 0A 20 20 20 20 20 20 20 e (pen..
000090: 6F 72 20 66 69 6C 6C 20 69 6E 6B 29 2E 20 49 6E or fill ink). In
0000A0: 20 74 68 65 73 65 20 63 61 73 65 73 20 74 68 65 these cases the
0000B0: 20 72 6F 75 74 69 6E 65 20 77 69 6C 6C 20 72 65 routine will re
0000C0: 74 75 72 6E 20 20 77 69 74 68 6F 75 74 20 20 66 turn without f
0000D0: 69 6C 6C 69 6E 67 0D 0A 20 20 20 20 20 20 20 61 illing.. a
0000E0: 6E 79 74 68 69 6E 67 2E 20 54 68 69 72 64 6C 79 nything. Thirdly
0000F0: 20 74 68 65 20 61 6C 67 6F 72 69 74 68 6D 20 6D the algorithm m
000100: 61 79 20 65 78 68 61 75 73 74 20 74 68 65 20 20 ay exhaust the
000110: 27 69 6E 74 65 72 65 73 74 69 6E 67 20 20 70 6F 'interesting po
000120: 69 6E 74 27 0D 0A 20 20 20 20 20 20 20 62 75 66 int'.. buf
000130: 66 65 72 20 69 6E 20 77 68 69 63 68 20 63 61 73 fer in which cas
000140: 65 20 73 6F 6D 65 20 70 6F 72 74 69 6F 6E 20 6F e some portion o
000150: 66 20 74 68 65 20 61 72 65 61 20 77 69 6C 6C 20 f the area will
000160: 6E 6F 74 20 62 65 20 66 69 6C 6C 65 64 2E 0D 0A not be filled...
000170: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 ........ R
000180: 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D elated entries:.
000190: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 47 52 41 20 ..... GRA
0001A0: 53 45 54 20 50 45 4E 0D 0A 0D 0A 0D 0A 0D 0A 0D SET PEN.........
0001B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001E0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001F0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
Size : 512 (Real : 512)
000000: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000010: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
000040: 31 35 2E 32 33 38 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 15.238..........
000050: 0D 0A 0D 0A 20 20 20 20 20 20 20 31 39 39 3A 20 .... 199:
000060: 53 43 52 20 53 45 54 20 50 4F 53 49 54 49 4F 4E SCR SET POSITION
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 20 20 20 20 20 20 20 23 42 44 35 #BD5
0000A0: 35 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 5...... Se
0000B0: 74 20 74 68 65 20 6C 6F 63 61 74 69 6F 6E 20 6F t the location o
0000C0: 66 20 74 68 65 20 73 63 72 65 65 6E 20 6D 65 6D f the screen mem
0000D0: 6F 72 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ory.......
0000E0: 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 Action:......
0000F0: 20 20 20 20 20 54 65 6C 6C 20 74 68 65 20 53 63 Tell the Sc
000100: 72 65 65 6E 20 70 61 63 6B 20 74 68 65 20 73 63 reen pack the sc
000110: 72 65 65 6E 20 62 61 73 65 20 61 6E 64 20 74 68 reen base and th
000120: 65 20 20 6F 66 66 73 65 74 20 20 77 69 74 68 6F e offset witho
000130: 75 74 20 20 74 65 6C 6C 69 6E 67 0D 0A 20 20 20 ut telling..
000140: 20 20 20 20 74 68 65 20 68 61 72 64 77 61 72 65 the hardware
000150: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E ....... En
000160: 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D try conditions:.
000170: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 6F ..... A co
000180: 6E 74 61 69 6E 73 20 74 68 65 20 73 63 72 65 65 ntains the scree
000190: 6E 20 62 61 73 65 2E 0D 0A 20 20 20 20 20 20 20 n base...
0001A0: 48 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 HL contains the
0001B0: 73 63 72 65 65 6E 20 6F 66 66 73 65 74 2E 0D 0A screen offset...
0001C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
0001D0: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D conditions:.....
0001E0: 0A 20 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 . A contai
0001F0: 6E 73 20 74 68 65 20 73 63 72 65 65 6E 20 62 61 ns the screen ba
Size : 512 (Real : 512)
000000: 73 65 20 6D 61 73 6B 65 64 20 61 73 20 72 65 71 se masked as req
000010: 75 69 72 65 64 2E 0D 0A 20 20 20 20 20 20 20 48 uired... H
000020: 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 73 L contains the s
000030: 63 72 65 65 6E 20 6F 66 66 73 65 74 20 6D 61 73 creen offset mas
000040: 6B 65 64 20 61 73 20 72 65 71 75 69 72 65 64 2E ked as required.
000050: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 6C 61 ...... Fla
000060: 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 gs corrupt...
000070: 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 All other re
000080: 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 65 gisters preserve
000090: 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E d....... N
0000A0: 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 otes:......
0000B0: 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 69 This routine i
0000C0: 73 20 6E 6F 74 20 61 76 61 69 6C 61 62 6C 65 20 s not available
0000D0: 6F 6E 20 56 31 2E 30 20 66 69 72 6D 77 61 72 65 on V1.0 firmware
0000E0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
0000F0: 69 73 20 72 6F 75 74 69 6E 65 20 63 68 61 6E 67 is routine chang
000100: 65 73 20 74 68 65 20 6C 6F 63 61 74 69 6F 6E 20 es the location
000110: 6F 66 20 74 68 65 20 73 63 72 65 65 6E 20 77 69 of the screen wi
000120: 74 68 6F 75 74 20 6E 6F 74 69 66 79 69 6E 67 20 thout notifying
000130: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 68 61 72 the.. har
000140: 64 77 61 72 65 20 6F 66 20 74 68 65 20 63 68 61 dware of the cha
000150: 6E 67 65 2E 20 54 68 69 73 20 65 66 66 65 63 74 nge. This effect
000160: 20 6D 61 79 20 62 65 20 75 73 65 64 20 74 6F 20 may be used to
000170: 63 6F 6E 73 74 72 75 63 74 20 61 20 20 73 65 63 construct a sec
000180: 6F 6E 64 0D 0A 20 20 20 20 20 20 20 73 63 72 65 ond.. scre
000190: 65 6E 20 6F 66 20 74 65 78 74 20 6F 72 20 67 72 en of text or gr
0001A0: 61 70 68 69 63 73 20 77 69 74 68 6F 75 74 20 63 aphics without c
0001B0: 6C 65 61 72 69 6E 67 20 74 68 65 20 70 72 65 76 learing the prev
0001C0: 69 6F 75 73 20 73 63 72 65 65 6E 2E 20 20 57 68 ious screen. Wh
0001D0: 65 6E 0D 0A 20 20 20 20 20 20 20 74 68 65 20 6E en.. the n
0001E0: 65 77 20 73 63 72 65 65 6E 20 68 61 73 20 62 65 ew screen has be
0001F0: 65 6E 20 63 6F 6E 73 74 72 75 63 74 65 64 20 74 en constructed t
Size : 512 (Real : 512)
000000: 68 65 20 68 61 72 64 77 61 72 65 20 6D 61 79 20 he hardware may
000010: 62 65 20 20 6E 6F 74 69 66 69 65 64 20 20 61 6E be notified an
000020: 64 0D 0A 20 20 20 20 20 20 20 74 68 65 20 70 69 d.. the pi
000030: 63 74 75 72 65 20 77 69 6C 6C 20 61 70 70 65 61 cture will appea
000040: 72 20 69 6E 73 74 61 6E 74 6C 79 2E 0D 0A 0D 0A r instantly.....
000050: 20 20 20 20 20 20 20 49 6E 20 67 65 6E 65 72 61 In genera
000060: 6C 20 74 68 65 20 75 73 65 72 20 69 73 20 61 64 l the user is ad
000070: 76 69 73 65 64 20 74 6F 20 73 65 74 20 74 68 65 vised to set the
000080: 20 62 61 73 65 20 75 73 69 6E 67 20 53 43 52 20 base using SCR
000090: 53 45 54 20 42 41 53 45 20 20 61 6E 64 0D 0A 20 SET BASE and..
0000A0: 20 20 20 20 20 20 74 68 65 20 6F 66 66 73 65 74 the offset
0000B0: 20 75 73 69 6E 67 20 53 43 52 20 53 45 54 20 4F using SCR SET O
0000C0: 46 46 53 45 54 2E 0D 0A 0D 0A 20 20 20 20 20 20 FFSET.....
0000D0: 20 54 68 65 20 73 63 72 65 65 6E 20 62 61 73 65 The screen base
0000E0: 20 69 73 20 6D 61 73 6B 65 64 20 77 69 74 68 20 is masked with
0000F0: 23 43 30 20 61 6E 64 20 74 68 65 20 73 63 72 65 #C0 and the scre
000100: 65 6E 20 6F 66 66 73 65 74 20 77 69 74 68 20 23 en offset with #
000110: 30 37 46 45 20 74 6F 0D 0A 20 20 20 20 20 20 20 07FE to..
000120: 6D 61 6B 65 20 74 68 65 20 76 61 6C 75 65 73 20 make the values
000130: 6C 65 67 61 6C 2E 0D 0A 0D 0A 20 20 20 20 20 20 legal.....
000140: 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 Related entries
000150: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 43 52 20 :.... SCR
000160: 47 45 54 20 4C 4F 43 41 54 49 4F 4E 0D 0A 20 20 GET LOCATION..
000170: 20 20 20 20 20 53 43 52 20 53 45 54 20 42 41 53 SCR SET BAS
000180: 45 0D 0A 20 20 20 20 20 20 20 53 43 52 20 53 45 E.. SCR SE
000190: 54 20 4F 46 46 53 45 54 0D 0A 0D 0A 0D 0A 0D 0A T OFFSET........
0001A0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
0001B0: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
0001C0: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 33 page 15.23
0001F0: 39 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 9..............
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 32 30 30 3A 20 4D 43 20 50 52 200: MC PR
000010: 49 4E 54 20 54 52 41 4E 53 4C 41 54 49 4F 4E 20 INT TRANSLATION
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 23 42 44 35 38 0D 0A 0D 0A #BD58....
000050: 20 20 20 20 20 20 20 53 65 74 20 74 68 65 20 70 Set the p
000060: 72 69 6E 74 65 72 20 74 72 61 6E 73 6C 61 74 69 rinter translati
000070: 6F 6E 20 74 61 62 6C 65 2E 0D 0A 0D 0A 20 20 20 on table.....
000080: 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 Action:....
000090: 20 20 20 20 20 20 53 65 74 20 68 6F 77 20 63 68 Set how ch
0000A0: 61 72 61 63 74 65 72 73 20 61 72 65 20 74 6F 20 aracters are to
0000B0: 62 65 20 20 74 72 61 6E 73 6C 61 74 65 64 20 20 be translated
0000C0: 62 65 66 6F 72 65 20 20 62 65 69 6E 67 20 20 73 before being s
0000D0: 65 6E 74 20 20 74 6F 20 20 74 68 65 0D 0A 20 20 ent to the..
0000E0: 20 20 20 20 20 70 72 69 6E 74 65 72 2E 0D 0A 0D printer....
0000F0: 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F . Entry co
000100: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 nditions:....
000110: 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 6E 73 20 HL contains
000120: 74 68 65 20 61 64 64 72 65 73 73 20 6F 66 20 74 the address of t
000130: 68 65 20 74 61 62 6C 65 2E 0D 0A 0D 0A 0D 0A 0D he table........
000140: 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E . Exit con
000150: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 ditions:....
000160: 20 20 20 49 66 20 74 68 65 20 74 61 62 6C 65 20 If the table
000170: 69 73 20 74 6F 6F 20 6C 6F 6E 67 20 28 6D 6F 72 is too long (mor
000180: 65 20 74 68 61 6E 20 32 30 20 65 6E 74 72 69 65 e than 20 entrie
000190: 73 29 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 s):....
0001A0: 20 20 20 20 20 20 20 43 61 72 72 79 20 66 61 6C Carry fal
0001B0: 73 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 se..... If
0001C0: 20 74 68 65 20 74 61 62 6C 65 20 69 73 20 4F 4B the table is OK
0001D0: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 :....
0001E0: 20 20 20 20 20 43 61 72 72 79 20 74 72 75 65 2E Carry true.
0001F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C 77 61 79 .... Alway
Size : 512 (Real : 512)
000000: 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 s:....
000010: 20 20 20 20 20 20 41 2C 20 42 43 2C 20 44 45 2C A, BC, DE,
000020: 20 48 4C 20 61 6E 64 20 6F 74 68 65 72 20 66 6C HL and other fl
000030: 61 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 ags corrupt...
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 6C Al
000050: 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 l other register
000060: 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A s preserved.....
000070: 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D Notes:...
000080: 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 . This rou
000090: 74 69 6E 65 20 69 73 20 6E 6F 74 20 61 76 61 69 tine is not avai
0000A0: 6C 61 62 6C 65 20 6F 6E 20 56 31 2E 30 20 66 69 lable on V1.0 fi
0000B0: 72 6D 77 61 72 65 2E 0D 0A 0D 0A 20 20 20 20 20 rmware.....
0000C0: 20 20 54 68 65 20 73 75 70 70 6C 69 65 64 20 74 The supplied t
0000D0: 72 61 6E 73 6C 61 74 69 6F 6E 20 74 61 62 6C 65 ranslation table
0000E0: 20 6D 61 79 20 6C 69 65 20 61 6E 79 77 68 65 72 may lie anywher
0000F0: 65 20 69 6E 20 52 41 4D 2E 20 20 54 68 69 73 20 e in RAM. This
000100: 20 72 6F 75 74 69 6E 65 0D 0A 20 20 20 20 20 20 routine..
000110: 20 63 6F 70 69 65 73 20 74 68 65 20 74 61 62 6C copies the tabl
000120: 65 20 61 6E 64 20 73 6F 20 74 68 65 20 6D 65 6D e and so the mem
000130: 6F 72 79 20 6D 61 79 20 62 65 20 72 65 2D 75 73 ory may be re-us
000140: 65 64 20 69 66 20 72 65 71 75 69 72 65 64 2E 0D ed if required..
000150: 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 6F ... The fo
000160: 72 6D 61 74 20 6F 66 20 74 68 65 20 74 61 62 6C rmat of the tabl
000170: 65 20 69 73 20 61 73 20 66 6F 6C 6C 6F 77 73 3A e is as follows:
000180: 0D 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 ....
000190: 20 20 20 20 42 79 74 65 20 30 3A 20 20 20 20 20 Byte 0:
0001A0: 20 20 20 20 20 20 20 20 4E 75 6D 62 65 72 20 6F Number o
0001B0: 66 20 65 6E 74 72 69 65 73 20 69 6E 20 74 68 65 f entries in the
0001C0: 20 74 61 62 6C 65 20 28 4E 29 2E 0D 0A 20 20 20 table (N)...
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 Byt
0001E0: 65 73 20 31 2C 32 3A 20 20 20 20 20 20 20 20 20 es 1,2:
0001F0: 20 45 6E 74 72 79 20 31 0D 0A 20 20 20 20 20 20 Entry 1..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 2E 2E 2E 20 20 20 ...
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2E 2E ..
000020: 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000030: 20 20 20 42 79 74 65 73 20 32 4E 2D 31 2C 32 4E Bytes 2N-1,2N
000040: 3A 20 20 20 20 20 20 45 6E 74 72 79 20 4E 0D 0A : Entry N..
000050: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 66 6F 72 .. The for
000060: 6D 61 74 20 6F 66 20 65 61 63 68 20 74 77 6F 20 mat of each two
000070: 62 79 74 65 20 65 6E 74 72 79 20 69 73 20 61 73 byte entry is as
000080: 20 66 6F 6C 6C 6F 77 73 3A 0D 0A 0D 0A 20 20 20 follows:....
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 74 Byt
0000A0: 65 20 30 3A 20 20 20 20 20 20 20 20 20 20 20 20 e 0:
0000B0: 20 43 68 61 72 61 63 74 65 72 20 74 6F 20 62 65 Character to be
0000C0: 20 74 72 61 6E 73 6C 61 74 65 64 2E 0D 0A 20 20 translated...
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 42 79 By
0000E0: 74 65 20 31 3A 20 20 20 20 20 20 20 20 20 20 20 te 1:
0000F0: 20 20 43 68 61 72 61 63 74 65 72 20 74 6F 20 74 Character to t
000100: 72 61 6E 73 6C 61 74 65 20 74 6F 2E 0D 0A 0D 0A ranslate to.....
000110: 20 20 20 20 20 20 20 49 66 20 74 68 65 20 63 68 If the ch
000120: 61 72 61 63 74 65 72 20 74 6F 20 74 72 61 6E 73 aracter to trans
000130: 6C 61 74 65 20 74 6F 20 69 73 20 23 46 46 20 74 late to is #FF t
000140: 68 65 6E 20 74 68 65 20 63 68 61 72 61 63 74 65 hen the characte
000150: 72 20 69 73 20 20 69 67 6E 6F 72 65 64 0D 0A 20 r is ignored..
000160: 20 20 20 20 20 20 61 6E 64 20 6E 6F 74 68 69 6E and nothin
000170: 67 20 69 73 20 73 65 6E 74 20 74 6F 20 74 68 65 g is sent to the
000180: 20 70 72 69 6E 74 65 72 2E 0D 0A 20 20 20 20 20 printer...
000190: 20 20 54 72 61 6E 73 6C 61 74 69 6F 6E 20 6F 66 Translation of
0001A0: 20 63 68 61 72 61 63 74 65 72 73 20 62 79 20 74 characters by t
0001B0: 68 65 20 70 72 69 6E 74 65 72 20 64 72 69 76 65 he printer drive
0001C0: 72 20 20 6F 63 63 75 72 73 20 20 69 6E 20 20 4D r occurs in M
0001D0: 43 20 20 50 52 49 4E 54 0D 0A 20 20 20 20 20 20 C PRINT..
0001E0: 20 43 48 41 52 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A CHAR...........
0001F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
Size : 512 (Real : 512)
000000: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
000010: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 70 61 67 65 20 31 35 2E 32 34 page 15.24
000040: 30 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 0..............
000050: 20 20 20 20 20 20 54 68 65 20 64 65 66 61 75 6C The defaul
000060: 74 20 74 72 61 6E 73 6C 61 74 69 6F 6E 20 74 61 t translation ta
000070: 62 6C 65 20 69 73 20 73 65 74 20 20 75 70 20 20 ble is set up
000080: 77 68 65 6E 20 20 4D 43 20 20 52 45 53 45 54 20 when MC RESET
000090: 20 50 52 49 4E 54 45 52 20 20 69 73 0D 0A 20 20 PRINTER is..
0000A0: 20 20 20 20 20 63 61 6C 6C 65 64 2E 20 54 68 65 called. The
0000B0: 20 64 65 66 61 75 6C 74 20 74 61 62 6C 65 20 69 default table i
0000C0: 73 20 64 65 73 69 67 6E 65 64 20 74 6F 20 64 72 s designed to dr
0000D0: 69 76 65 20 74 68 65 20 44 4D 50 2D 31 20 70 72 ive the DMP-1 pr
0000E0: 69 6E 74 65 72 20 20 28 73 65 65 0D 0A 20 20 20 inter (see..
0000F0: 20 20 20 20 41 70 70 65 6E 64 69 78 20 58 49 56 Appendix XIV
000100: 29 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C )..... Rel
000110: 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D ated entries:...
000120: 0A 20 20 20 20 20 20 20 4D 43 20 50 52 49 4E 54 . MC PRINT
000130: 20 43 48 41 52 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D CHAR...........
000140: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000150: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000160: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000170: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000180: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000190: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ...............
0001A0: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
0001B0: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
0001C0: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 70 61 67 65 20 31 35 2E 32 34 31 0D 0A 0D 0A page 15.241....
0001F0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
Size : 512 (Real : 512)
000000: 20 32 30 31 3A 20 4B 4C 20 42 41 4E 4B 20 53 57 201: KL BANK SW
000010: 49 54 43 48 20 20 20 20 20 20 20 20 20 20 20 20 ITCH
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 23 42 44 35 42 0D 0A 0D 0A 0D 0A 20 20 20 #BD5B......
000050: 20 20 20 20 53 65 6C 65 63 74 20 61 20 6D 65 6D Select a mem
000060: 6F 72 79 20 6F 72 67 61 6E 69 7A 61 74 69 6F 6E ory organization
000070: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 ....... Ac
000080: 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 tion:......
000090: 20 20 53 65 74 20 77 68 69 63 68 20 52 41 4D 20 Set which RAM
0000A0: 62 61 6E 6B 73 20 61 72 65 20 73 77 69 74 63 68 banks are switch
0000B0: 65 64 20 69 6E 74 6F 20 74 68 65 20 36 34 4B 20 ed into the 64K
0000C0: 6F 66 20 20 52 41 4D 20 20 69 6E 20 20 74 68 65 of RAM in the
0000D0: 20 20 6D 65 6D 6F 72 79 0D 0A 20 20 20 20 20 20 memory..
0000E0: 20 6D 61 70 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 map.......
0000F0: 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F Entry conditio
000100: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
000110: 41 20 63 6F 6E 74 61 69 6E 73 20 6E 65 77 20 6F A contains new o
000120: 72 67 61 6E 69 7A 61 74 69 6F 6E 2E 0D 0A 0D 0A rganization.....
000130: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
000140: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
000150: 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 A contains
000160: 20 6F 6C 64 20 6F 72 67 61 6E 69 7A 61 74 69 6F old organizatio
000170: 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 n....... F
000180: 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 lags corrupt...
000190: 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 All other
0001A0: 72 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 registers preser
0001B0: 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ved.......
0001C0: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 Notes:......
0001D0: 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 This routine
0001E0: 20 69 73 20 6F 6E 6C 79 20 61 76 61 69 6C 61 62 is only availab
0001F0: 6C 65 20 6F 6E 20 74 68 65 20 43 50 43 36 31 32 le on the CPC612
Size : 512 (Real : 512)
000000: 38 20 20 28 69 2E 65 2E 20 20 56 31 2E 32 20 20 8 (i.e. V1.2
000010: 66 69 72 6D 77 61 72 65 29 2E 0D 0A 20 20 20 20 firmware)...
000020: 20 20 20 54 68 65 20 6D 65 6D 6F 72 79 20 6F 72 The memory or
000030: 67 61 6E 69 7A 61 74 69 6F 6E 73 20 61 6E 64 20 ganizations and
000040: 62 61 6E 6B 20 73 77 69 74 63 68 69 6E 67 20 20 bank switching
000050: 61 72 65 20 20 64 69 73 63 75 73 73 65 64 20 20 are discussed
000060: 66 75 6C 6C 79 20 20 69 6E 0D 0A 20 20 20 20 20 fully in..
000070: 20 20 73 65 63 74 69 6F 6E 20 32 2E 35 2E 0D 0A section 2.5...
000080: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 74 20 69 73 .... It is
000090: 20 69 6E 61 64 76 69 73 61 62 6C 65 20 74 6F 20 inadvisable to
0000A0: 62 61 6E 6B 20 73 77 69 74 63 68 20 74 6F 20 61 bank switch to a
0000B0: 20 6D 65 6D 6F 72 79 20 20 6F 72 67 61 6E 69 7A memory organiz
0000C0: 61 74 69 6F 6E 20 20 77 68 65 72 65 20 20 74 68 ation where th
0000D0: 65 0D 0A 20 20 20 20 20 20 20 63 6F 64 65 20 74 e.. code t
0000E0: 68 61 74 20 69 73 20 62 65 69 6E 67 20 65 78 65 hat is being exe
0000F0: 63 75 74 65 64 2C 20 6F 72 20 73 74 61 63 6B 20 cuted, or stack
000100: 61 72 65 20 69 6E 61 63 63 65 73 73 69 62 6C 65 are inaccessible
000110: 21 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 !........
000120: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
000130: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ...... KL
000140: 4C 20 52 4F 4D 20 44 49 53 41 42 4C 45 0D 0A 20 L ROM DISABLE..
000150: 20 20 20 20 20 20 4B 4C 20 4C 20 52 4F 4D 20 45 KL L ROM E
000160: 4E 41 42 4C 45 0D 0A 20 20 20 20 20 20 20 4B 4C NABLE.. KL
000170: 20 52 4F 4D 20 53 45 4C 45 43 54 0D 0A 20 20 20 ROM SELECT..
000180: 20 20 20 20 4B 4C 20 55 20 52 4F 4D 20 44 49 53 KL U ROM DIS
000190: 41 42 4C 45 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ABLE.. KL
0001A0: 55 20 52 4F 4D 20 45 4E 41 42 4C 45 0D 0A 0D 0A U ROM ENABLE....
0001B0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0001C0: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
0001D0: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
0001E0: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 20 20 70 61 67 65 20 31 35 2E 32 34 32 0D 0A 1A page 15.242...
000010: 20 20 20 31 38 35 3A 20 4D 43 20 50 52 49 4E 54 185: MC PRINT
000020: 20 43 48 41 52 20 20 20 20 20 20 20 20 20 20 20 CHAR
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 23 42 44 32 42 0D 0A 0D 0A 20 20 20 #BD2B....
000060: 20 20 20 20 54 72 79 20 74 6F 20 73 65 6E 64 20 Try to send
000070: 61 20 63 68 61 72 61 63 74 65 72 20 74 6F 20 74 a character to t
000080: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 74 20 69 73 .... It is
000090: 20 69 6E 61 64 76 69 73 61 62 6C 65 20 74 6F 20 inadvisable to
0000A0: 62 61 6E 6B 20 73 77 69 74 63 68 20 74 6F 20 61 bank switch to a
0000B0: 20 6D 65 6D 6F 72 79 20 20 6F 72 67 61 6E 69 7A memory organiz
0000C0: 61 74 69 6F 6E 20 20 77 68 65 72 65 20 20 74 68 ation where th
0000D0: 65 0D 0A 20 20 20 20 20 20 20 63 6F 64 65 20 74 e.. code t
0000E0: 68 61 74 20 69 73 20 62 65 69 6E 67 20 65 78 65 hat is being exe
0000F0: 63 75 74 65 64 2C 20 6F 72 20 73 74 61 63 6B 20 cuted, or stack
000100: 61 72 65 20 69 6E 61 63 63 65 73 73 69 62 6C 65 are inaccessible
000110: 21 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 !........
000120: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
000130: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ...... KL
000140: 4C 20 52 4F 4D 20 44 49 53 41 42 4C 45 0D 0A 20 L ROM DISABLE..
000150: 20 20 20 20 20 20 4B 4C 20 4C 20 52 4F 4D 20 45 KL L ROM E
000160: 4E 41 42 4C 45 0D 0A 20 20 20 20 20 20 20 4B 4C NABLE.. KL
000170: 20 52 4F 4D 20 53 45 4C 45 43 54 0D 0A 20 20 20 ROM SELECT..
000180: 20 20 20 20 4B 4C 20 55 20 52 4F 4D 20 44 49 53 KL U ROM DIS
000190: 41 42 4C 45 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ABLE.. KL
0001A0: 55 20 52 4F 4D 20 45 4E 41 42 4C 45 0D 0A 0D 0A U ROM ENABLE....
0001B0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0001C0: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
0001D0: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
0001E0: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 ........ 1
000010: 36 20 54 68 65 20 46 69 72 6D 77 61 72 65 20 49 6 The Firmware I
000020: 6E 64 69 72 65 63 74 69 6F 6E 73 2E 0D 0A 0D 0A ndirections.....
000030: 20 20 20 20 20 20 20 54 68 69 73 20 73 65 63 74 This sect
000040: 69 6F 6E 20 67 69 76 65 73 20 74 68 65 20 64 65 ion gives the de
000050: 74 61 69 6C 65 64 20 65 6E 74 72 79 20 61 6E 64 tailed entry and
000060: 20 65 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 exit conditions
000070: 20 61 6E 64 20 20 65 66 66 65 63 74 73 0D 0A 20 and effects..
000080: 20 20 20 20 20 20 6F 66 20 74 68 65 20 72 6F 75 of the rou
000090: 74 69 6E 65 73 20 69 6E 20 74 68 65 20 69 6E 64 tines in the ind
0000A0: 69 72 65 63 74 69 6F 6E 73 20 6A 75 6D 70 62 6C irections jumpbl
0000B0: 6F 63 6B 2E 20 53 65 65 20 73 65 63 74 69 6F 6E ock. See section
0000C0: 20 31 34 2E 32 20 66 6F 72 20 20 61 0D 0A 20 20 14.2 for a..
0000D0: 20 20 20 20 20 6C 69 73 74 20 61 20 74 68 65 73 list a thes
0000E0: 65 20 72 6F 75 74 69 6E 65 73 2E 0D 0A 0D 0A 20 e routines.....
0000F0: 20 20 20 20 20 20 54 68 65 20 66 69 72 6D 77 61 The firmwa
000100: 72 65 20 69 6E 64 69 72 65 63 74 69 6F 6E 73 20 re indirections
000110: 61 72 65 20 74 61 6B 65 6E 20 62 79 20 74 68 65 are taken by the
000120: 20 20 66 69 72 6D 77 61 72 65 20 20 61 74 20 20 firmware at
000130: 6B 65 79 20 20 70 6F 69 6E 74 73 2E 0D 0A 20 20 key points...
000140: 20 20 20 20 20 54 68 65 79 20 61 6C 6C 6F 77 20 They allow
000150: 74 68 65 20 75 73 65 72 20 74 6F 20 20 69 6E 74 the user to int
000160: 65 72 63 65 70 74 20 20 61 6E 64 20 20 61 6C 74 ercept and alt
000170: 65 72 20 20 61 20 20 6E 75 6D 62 65 72 20 20 6F er a number o
000180: 66 20 20 66 69 72 6D 77 61 72 65 0D 0A 20 20 20 f firmware..
000190: 20 20 20 20 61 63 74 69 6F 6E 73 20 77 69 74 68 actions with
0001A0: 6F 75 74 20 68 61 76 69 6E 67 20 74 6F 20 70 72 out having to pr
0001B0: 6F 76 69 64 65 20 61 20 63 6F 6D 70 6C 65 74 65 ovide a complete
0001C0: 20 6E 65 77 20 66 69 72 6D 77 61 72 65 20 70 61 new firmware pa
0001D0: 63 6B 61 67 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 ckage.......
0001E0: 20 20 20 54 68 65 20 20 64 65 73 63 72 69 70 74 The descript
0001F0: 69 6F 6E 73 20 20 67 69 76 65 6E 20 20 61 72 65 ions given are
Size : 512 (Real : 512)
000000: 20 20 66 6F 72 20 20 74 68 65 20 20 64 65 66 61 for the defa
000010: 75 6C 74 20 20 20 73 65 74 74 69 6E 67 73 20 20 ult settings
000020: 20 6F 66 20 20 20 74 68 65 0D 0A 20 20 20 20 20 of the..
000030: 20 20 69 6E 64 69 72 65 63 74 69 6F 6E 73 2E 20 indirections.
000040: 52 65 70 6C 61 63 65 6D 65 6E 74 20 72 6F 75 74 Replacement rout
000050: 69 6E 65 73 20 6E 65 65 64 20 6E 6F 74 20 70 65 ines need not pe
000060: 72 66 6F 72 6D 20 20 61 6C 6C 20 20 74 68 65 20 rform all the
000070: 20 61 63 74 69 6F 6E 73 0D 0A 20 20 20 20 20 20 actions..
000080: 20 74 68 61 74 20 74 68 65 20 64 65 66 61 75 6C that the defaul
000090: 74 20 72 6F 75 74 69 6E 65 20 70 65 72 66 6F 72 t routine perfor
0000A0: 6D 73 20 61 6C 74 68 6F 75 67 68 20 74 68 65 79 ms although they
0000B0: 20 61 72 65 20 61 64 76 69 73 65 64 20 74 6F 20 are advised to
0000C0: 64 6F 20 73 6F 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A do so...........
0000D0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000E0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000F0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000100: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000110: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000120: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000130: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000140: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 70 61 67 65 20 31 36 2E 31 0D 0A 0D 0A 0D page 16.1.....
000170: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000180: 49 4E 44 3A 20 54 58 54 20 44 52 41 57 20 43 55 IND: TXT DRAW CU
000190: 52 53 4F 52 20 20 20 20 20 20 20 20 20 20 20 20 RSOR
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 23 42 44 43 44 0D 0A 0D 0A 0D 0A 20 20 20 20 #BDCD......
0001D0: 20 20 20 50 6C 61 63 65 20 74 68 65 20 63 75 72 Place the cur
0001E0: 73 6F 72 20 62 6C 6F 62 20 6F 6E 20 74 68 65 20 sor blob on the
0001F0: 73 63 72 65 65 6E 20 28 69 66 20 65 6E 61 62 6C screen (if enabl
Size : 512 (Real : 512)
000000: 65 64 29 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ed).......
000010: 20 44 65 66 61 75 6C 74 20 61 63 74 69 6F 6E 3A Default action:
000020: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 ...... If
000030: 74 68 65 20 63 75 72 73 6F 72 20 69 73 20 65 6E the cursor is en
000040: 61 62 6C 65 64 20 61 6E 64 20 74 75 72 6E 65 64 abled and turned
000050: 20 6F 6E 20 74 68 65 6E 20 74 68 65 20 63 75 72 on then the cur
000060: 73 6F 72 20 62 6C 6F 62 20 20 69 73 20 20 64 72 sor blob is dr
000070: 61 77 6E 0D 0A 20 20 20 20 20 20 20 6F 6E 20 74 awn.. on t
000080: 68 65 20 73 63 72 65 65 6E 2E 20 49 66 20 6E 6F he screen. If no
000090: 74 20 74 68 65 6E 20 20 6E 6F 20 20 61 63 74 69 t then no acti
0000A0: 6F 6E 20 20 69 73 20 20 74 61 6B 65 6E 2E 20 20 on is taken.
0000B0: 54 68 65 20 20 63 75 72 72 65 6E 74 20 20 74 65 The current te
0000C0: 78 74 0D 0A 20 20 20 20 20 20 20 70 6F 73 69 74 xt.. posit
0000D0: 69 6F 6E 20 69 73 20 66 6F 72 63 65 64 20 69 6E ion is forced in
0000E0: 74 6F 20 74 68 65 20 77 69 6E 64 6F 77 20 28 73 to the window (s
0000F0: 65 65 20 54 58 54 20 56 41 4C 49 44 41 54 45 29 ee TXT VALIDATE)
000100: 20 61 6E 64 20 20 74 68 65 20 20 63 75 72 73 6F and the curso
000110: 72 0D 0A 20 20 20 20 20 20 20 62 6C 6F 62 20 69 r.. blob i
000120: 73 20 77 72 69 74 74 65 6E 20 61 74 20 74 68 65 s written at the
000130: 20 72 65 73 75 6C 74 69 6E 67 20 20 70 6F 73 69 resulting posi
000140: 74 69 6F 6E 2E 20 20 54 68 65 20 20 63 75 72 73 tion. The curs
000150: 6F 72 20 20 62 6C 6F 62 20 20 69 73 20 20 61 6E or blob is an
000160: 0D 0A 20 20 20 20 20 20 20 69 6E 76 65 72 73 65 .. inverse
000170: 20 70 61 74 63 68 2E 20 54 68 69 73 20 72 6F 75 patch. This rou
000180: 74 69 6E 65 20 77 69 6C 6C 20 6F 6E 6C 79 20 62 tine will only b
000190: 65 20 63 61 6C 6C 65 64 20 74 77 69 63 65 20 20 e called twice
0001A0: 69 66 20 20 54 58 54 20 20 55 4E 44 52 41 57 0D if TXT UNDRAW.
0001B0: 0A 20 20 20 20 20 20 20 43 55 52 53 4F 52 20 69 . CURSOR i
0001C0: 73 20 63 61 6C 6C 65 64 20 69 6E 20 62 65 74 77 s called in betw
0001D0: 65 65 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 een.......
0001E0: 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E Entry condition
0001F0: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E s:...... N
Size : 512 (Real : 512)
000000: 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D o conditions....
000010: 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 ... Exit c
000020: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
000030: 20 20 20 20 20 20 20 41 46 20 63 6F 72 72 75 70 AF corrup
000040: 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F t... All o
000050: 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 ther registers p
000060: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
000070: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
000080: 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 69 6E .. This in
000090: 64 69 72 65 63 74 69 6F 6E 20 69 73 20 70 72 6F direction is pro
0000A0: 76 69 64 65 64 20 74 6F 20 61 6C 6C 6F 77 20 74 vided to allow t
0000B0: 68 65 20 75 73 65 72 20 74 6F 20 63 68 61 6E 67 he user to chang
0000C0: 65 20 74 68 65 20 20 66 6F 72 6D 20 20 6F 66 0D e the form of.
0000D0: 0A 20 20 20 20 20 20 20 74 68 65 20 63 75 72 73 . the curs
0000E0: 6F 72 20 62 6C 6F 62 2E 20 53 65 65 20 54 58 54 or blob. See TXT
0000F0: 20 50 4C 41 43 45 20 43 55 52 53 4F 52 20 66 6F PLACE CURSOR fo
000100: 72 20 61 20 20 64 65 73 63 72 69 70 74 69 6F 6E r a description
000110: 20 20 6F 66 20 20 68 6F 77 20 20 74 68 65 0D 0A of how the..
000120: 20 20 20 20 20 20 20 63 75 72 73 6F 72 20 62 6C cursor bl
000130: 6F 62 20 69 73 20 6E 6F 72 6D 61 6C 6C 79 20 77 ob is normally w
000140: 72 69 74 74 65 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 ritten.......
000150: 20 20 20 20 54 68 65 20 54 65 78 74 20 56 44 55 The Text VDU
000160: 20 72 6F 75 74 69 6E 65 73 20 63 61 6C 6C 20 74 routines call t
000170: 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 his indirection
000180: 20 77 68 65 6E 65 76 65 72 20 20 74 68 65 20 20 whenever the
000190: 63 75 72 73 6F 72 20 20 69 73 0D 0A 20 20 20 20 cursor is..
0001A0: 20 20 20 70 6C 61 63 65 64 20 6F 6E 20 74 68 65 placed on the
0001B0: 20 73 63 72 65 65 6E 2E 20 41 6C 6C 20 74 68 65 screen. All the
0001C0: 20 54 65 78 74 20 56 44 55 20 72 6F 75 74 69 6E Text VDU routin
0001D0: 65 73 20 20 74 68 61 74 20 20 72 65 61 64 20 20 es that read
0001E0: 66 72 6F 6D 20 20 74 68 65 0D 0A 20 20 20 20 20 from the..
0001F0: 20 20 73 63 72 65 65 6E 2C 20 77 72 69 74 65 20 screen, write
Size : 512 (Real : 512)
000000: 74 6F 20 74 68 65 20 73 63 72 65 65 6E 20 6F 72 to the screen or
000010: 20 63 68 61 6E 67 65 20 74 68 65 20 63 75 72 72 change the curr
000020: 65 6E 74 20 70 6F 73 69 74 69 6F 6E 20 72 65 6D ent position rem
000030: 6F 76 65 20 20 74 68 65 0D 0A 20 20 20 20 20 20 ove the..
000040: 20 63 75 72 73 6F 72 20 28 75 73 69 6E 67 20 54 cursor (using T
000050: 58 54 20 55 4E 44 52 41 57 20 43 55 52 53 4F 52 XT UNDRAW CURSOR
000060: 29 20 62 65 66 6F 72 65 20 70 65 72 66 6F 72 6D ) before perform
000070: 69 6E 67 20 20 74 68 65 69 72 20 20 61 63 74 69 ing their acti
000080: 6F 6E 20 20 61 6E 64 0D 0A 20 20 20 20 20 20 20 on and..
000090: 70 6C 61 63 65 20 69 74 20 62 61 63 6B 20 6F 6E place it back on
0000A0: 20 74 68 65 20 73 63 72 65 65 6E 20 61 66 74 65 the screen afte
0000B0: 72 77 61 72 64 73 20 28 75 73 69 6E 67 20 20 54 rwards (using T
0000C0: 58 54 20 20 44 52 41 57 20 20 43 55 52 53 4F 52 XT DRAW CURSOR
0000D0: 29 2E 20 20 41 6E 0D 0A 20 20 20 20 20 20 20 65 ). An.. e
0000E0: 78 61 6D 70 6C 65 20 6F 66 20 73 75 63 68 20 61 xample of such a
0000F0: 20 72 6F 75 74 69 6E 65 20 69 73 20 54 58 54 20 routine is TXT
000100: 57 52 20 43 48 41 52 20 74 68 61 74 20 77 72 69 WR CHAR that wri
000110: 74 65 73 20 20 61 20 20 63 68 61 72 61 63 74 65 tes a characte
000120: 72 20 20 6F 6E 0D 0A 20 20 20 20 20 20 20 74 68 r on.. th
000130: 65 20 73 63 72 65 65 6E 2E 0D 0A 0D 0A 0D 0A 20 e screen.......
000140: 20 20 20 20 20 20 54 68 69 73 20 69 6E 64 69 72 This indir
000150: 65 63 74 69 6F 6E 20 69 73 20 73 65 74 20 75 70 ection is set up
000160: 20 77 68 65 6E 20 54 58 54 20 49 4E 49 54 49 41 when TXT INITIA
000170: 4C 49 53 45 20 6F 72 20 54 58 54 20 52 45 53 45 LISE or TXT RESE
000180: 54 20 69 73 20 63 61 6C 6C 65 64 2E 0D 0A 0D 0A T is called.....
000190: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 .... Relat
0001A0: 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 ed entries:....
0001B0: 20 20 20 20 20 20 54 58 54 20 50 4C 41 43 45 20 TXT PLACE
0001C0: 43 55 52 53 4F 52 0D 0A 20 20 20 20 20 20 20 54 CURSOR.. T
0001D0: 58 54 20 55 4E 44 52 41 57 20 43 55 52 53 4F 52 XT UNDRAW CURSOR
0001E0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
0001F0: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
Size : 512 (Real : 512)
000000: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
000010: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 pa
000030: 67 65 20 31 36 2E 32 0D 0A 0D 0A 0D 0A 0D 0A 0D ge 16.2.........
000040: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 4E 44 3A ..... IND:
000050: 20 54 58 54 20 55 4E 44 52 41 57 20 43 55 52 53 TXT UNDRAW CURS
000060: 4F 52 20 20 20 20 20 20 20 20 20 20 20 20 20 20 OR
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 44 #BD
000090: 44 30 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 D0...... R
0000A0: 65 6D 6F 76 65 20 74 68 65 20 63 75 72 73 6F 72 emove the cursor
0000B0: 20 62 6C 6F 62 20 6F 6E 20 74 68 65 20 73 63 72 blob on the scr
0000C0: 65 65 6E 20 28 69 66 20 65 6E 61 62 6C 65 64 29 een (if enabled)
0000D0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 65 ....... De
0000E0: 66 61 75 6C 74 20 61 63 74 69 6F 6E 3A 0D 0A 0D fault action:...
0000F0: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 ... If the
000100: 20 63 75 72 73 6F 72 20 69 73 20 65 6E 61 62 6C cursor is enabl
000110: 65 64 20 61 6E 64 20 74 75 72 6E 65 64 20 6F 6E ed and turned on
000120: 20 74 68 65 6E 20 74 68 65 20 63 75 72 73 6F 72 then the cursor
000130: 20 62 6C 6F 62 20 69 73 20 72 65 6D 6F 76 65 64 blob is removed
000140: 0D 0A 20 20 20 20 20 20 20 66 72 6F 6D 20 74 68 .. from th
000150: 65 20 73 63 72 65 65 6E 2E 20 49 66 20 6E 6F 74 e screen. If not
000160: 20 74 68 65 6E 20 6E 6F 20 61 63 74 69 6F 6E 20 then no action
000170: 69 73 20 74 61 6B 65 6E 2E 20 54 68 65 20 54 68 is taken. The Th
000180: 65 20 20 63 75 72 73 6F 72 20 20 62 6C 6F 62 0D e cursor blob.
000190: 0A 20 20 20 20 20 20 20 69 73 20 61 6E 20 69 6E . is an in
0001A0: 76 65 72 73 65 20 70 61 74 63 68 2E 20 54 68 69 verse patch. Thi
0001B0: 73 20 72 6F 75 74 69 6E 65 20 77 69 6C 6C 20 6F s routine will o
0001C0: 6E 6C 79 20 62 65 20 63 61 6C 6C 65 64 20 61 66 nly be called af
0001D0: 74 65 72 20 20 54 58 54 20 20 44 52 41 57 0D 0A ter TXT DRAW..
0001E0: 20 20 20 20 20 20 20 43 55 52 53 4F 52 20 68 61 CURSOR ha
0001F0: 73 20 62 65 65 6E 20 75 73 65 64 20 74 6F 20 70 s been used to p
Size : 512 (Real : 512)
000000: 6C 61 63 65 20 74 68 65 20 63 75 72 73 6F 72 20 lace the cursor
000010: 6F 6E 20 74 68 65 20 73 63 72 65 65 6E 2E 0D 0A on the screen...
000020: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 .... Entry
000030: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000040: 0D 0A 20 20 20 20 20 20 20 4E 6F 20 63 6F 6E 64 .. No cond
000050: 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 itions.......
000060: 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 Exit conditi
000070: 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ons:......
000080: 20 41 46 20 63 6F 72 72 75 70 74 2E 0D 0A 20 20 AF corrupt...
000090: 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 All other r
0000A0: 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 egisters preserv
0000B0: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
0000C0: 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 Notes:......
0000D0: 20 20 20 54 68 69 73 20 69 6E 64 69 72 65 63 74 This indirect
0000E0: 69 6F 6E 20 69 73 20 70 72 6F 76 69 64 65 64 20 ion is provided
0000F0: 74 6F 20 61 6C 6C 6F 77 20 74 68 65 20 75 73 65 to allow the use
000100: 72 20 74 6F 20 63 68 61 6E 67 65 20 74 68 65 20 r to change the
000110: 20 66 6F 72 6D 20 20 6F 66 0D 0A 20 20 20 20 20 form of..
000120: 20 20 74 68 65 20 63 75 72 73 6F 72 20 62 6C 6F the cursor blo
000130: 62 2E 20 53 65 65 20 54 58 54 20 52 45 4D 4F 56 b. See TXT REMOV
000140: 45 20 43 55 52 53 4F 52 20 66 6F 72 20 61 20 64 E CURSOR for a d
000150: 65 73 63 72 69 70 74 69 6F 6E 20 20 6F 66 20 20 escription of
000160: 68 6F 77 20 20 74 68 65 0D 0A 20 20 20 20 20 20 how the..
000170: 20 63 75 72 73 6F 72 20 62 6C 6F 62 20 69 73 20 cursor blob is
000180: 6E 6F 72 6D 61 6C 6C 79 20 72 65 6D 6F 76 65 64 normally removed
000190: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
0001A0: 65 20 54 65 78 74 20 56 44 55 20 72 6F 75 74 69 e Text VDU routi
0001B0: 6E 65 73 20 63 61 6C 6C 20 74 68 69 73 20 69 6E nes call this in
0001C0: 64 69 72 65 63 74 69 6F 6E 20 74 6F 20 72 65 6D direction to rem
0001D0: 6F 76 65 20 74 68 65 20 63 75 72 73 6F 72 20 20 ove the cursor
0001E0: 66 72 6F 6D 0D 0A 20 20 20 20 20 20 20 74 68 65 from.. the
0001F0: 20 73 63 72 65 65 6E 2E 20 41 6C 6C 20 74 68 65 screen. All the
Size : 512 (Real : 512)
000000: 20 54 65 78 74 20 56 44 55 20 72 6F 75 74 69 6E Text VDU routin
000010: 65 73 20 74 68 61 74 20 72 65 61 64 20 66 72 6F es that read fro
000020: 6D 20 74 68 65 20 73 63 72 65 65 6E 2C 20 77 72 m the screen, wr
000030: 69 74 65 0D 0A 20 20 20 20 20 20 20 74 6F 20 74 ite.. to t
000040: 68 65 20 73 63 72 65 65 6E 20 6F 72 20 63 68 61 he screen or cha
000050: 6E 67 65 20 74 68 65 20 63 75 72 72 65 6E 74 20 nge the current
000060: 70 6F 73 69 74 69 6F 6E 20 72 65 6D 6F 76 65 20 position remove
000070: 74 68 65 20 63 75 72 73 6F 72 20 20 28 75 73 69 the cursor (usi
000080: 6E 67 0D 0A 20 20 20 20 20 20 20 54 58 54 20 55 ng.. TXT U
000090: 4E 44 52 41 57 20 43 55 52 53 4F 52 29 20 62 65 NDRAW CURSOR) be
0000A0: 66 6F 72 65 20 70 65 72 66 6F 72 6D 69 6E 67 20 fore performing
0000B0: 74 68 65 69 72 20 61 63 74 69 6F 6E 20 61 6E 64 their action and
0000C0: 20 70 6C 61 63 65 20 69 74 20 62 61 63 6B 20 6F place it back o
0000D0: 6E 0D 0A 20 20 20 20 20 20 20 74 68 65 20 73 63 n.. the sc
0000E0: 72 65 65 6E 20 61 66 74 65 72 77 61 72 64 73 20 reen afterwards
0000F0: 28 75 73 69 6E 67 20 54 58 54 20 44 52 41 57 20 (using TXT DRAW
000100: 43 55 52 53 4F 52 29 2E 20 41 6E 20 65 78 61 6D CURSOR). An exam
000110: 70 6C 65 20 20 6F 66 20 20 73 75 63 68 20 20 61 ple of such a
000120: 0D 0A 20 20 20 20 20 20 20 72 6F 75 74 69 6E 65 .. routine
000130: 20 69 73 20 54 58 54 20 57 52 20 43 48 41 52 20 is TXT WR CHAR
000140: 74 68 61 74 20 77 72 69 74 65 73 20 61 20 63 68 that writes a ch
000150: 61 72 61 63 74 65 72 20 6F 6E 20 74 68 65 20 73 aracter on the s
000160: 63 72 65 65 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 creen.......
000170: 20 20 20 54 68 69 73 20 69 6E 64 69 72 65 63 74 This indirect
000180: 69 6F 6E 20 69 73 20 73 65 74 20 75 70 20 77 68 ion is set up wh
000190: 65 6E 20 54 58 54 20 49 4E 49 54 49 41 4C 49 53 en TXT INITIALIS
0001A0: 45 20 6F 72 20 54 58 54 20 52 45 53 45 54 20 69 E or TXT RESET i
0001B0: 73 20 63 61 6C 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D s called........
0001C0: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
0001D0: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 entries:......
0001E0: 20 20 20 20 20 54 58 54 20 44 52 41 57 20 43 55 TXT DRAW CU
0001F0: 52 53 4F 52 0D 0A 20 20 20 20 20 20 20 54 58 54 RSOR.. TXT
Size : 512 (Real : 512)
000000: 20 52 45 4D 4F 56 45 20 43 55 52 53 4F 52 0D 0A REMOVE CURSOR..
000010: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000020: 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 AMSTRAD CPC46
000030: 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 4/664/6128 FIRMW
000040: 41 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 ARE
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000060: 70 61 67 65 20 31 36 2E 33 0D 0A 0D 0A 0D 0A 0D page 16.3.......
000070: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 4E ....... IN
000080: 44 3A 20 54 58 54 20 57 52 49 54 45 20 43 48 41 D: TXT WRITE CHA
000090: 52 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 R
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 #
0000C0: 42 44 44 33 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 BDD3......
0000D0: 20 57 72 69 74 65 20 61 20 63 68 61 72 61 63 74 Write a charact
0000E0: 65 72 20 6F 6E 74 6F 20 74 68 65 20 73 63 72 65 er onto the scre
0000F0: 65 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 en.......
000100: 44 65 66 61 75 6C 74 20 61 63 74 69 6F 6E 3A 0D Default action:.
000110: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 50 75 74 20 ..... Put
000120: 61 20 63 68 61 72 61 63 74 65 72 20 6F 6E 20 74 a character on t
000130: 68 65 20 73 63 72 65 65 6E 20 61 74 20 61 20 63 he screen at a c
000140: 68 61 72 61 63 74 65 72 20 70 6F 73 69 74 69 6F haracter positio
000150: 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 n....... E
000160: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
000170: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 ...... A c
000180: 6F 6E 74 61 69 6E 73 20 74 68 65 20 63 68 61 72 ontains the char
000190: 61 63 74 65 72 20 74 6F 20 77 72 69 74 65 2E 0D acter to write..
0001A0: 0A 20 20 20 20 20 20 20 48 20 63 6F 6E 74 61 69 . H contai
0001B0: 6E 73 20 74 68 65 20 70 68 79 73 69 63 61 6C 20 ns the physical
0001C0: 63 6F 6C 75 6D 6E 20 74 6F 20 77 72 69 74 65 20 column to write
0001D0: 61 74 2E 0D 0A 20 20 20 20 20 20 20 4C 20 63 6F at... L co
0001E0: 6E 74 61 69 6E 73 20 74 68 65 20 70 68 79 73 69 ntains the physi
0001F0: 63 61 6C 20 72 6F 77 20 74 6F 20 77 72 69 74 65 cal row to write
Size : 512 (Real : 512)
000000: 20 61 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 at.......
000010: 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 Exit conditions
000020: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 :...... AF
000030: 2C 20 42 43 2C 20 44 45 20 61 6E 64 20 48 4C 20 , BC, DE and HL
000040: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
000050: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
000060: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D ters preserved..
000070: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 ..... Note
000080: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 s:...... T
000090: 68 65 20 63 68 61 72 61 63 74 65 72 20 70 6F 73 he character pos
0000A0: 69 74 69 6F 6E 20 74 6F 20 77 72 69 74 65 20 61 ition to write a
0000B0: 74 20 69 73 20 67 69 76 65 6E 20 69 6E 20 20 70 t is given in p
0000C0: 68 79 73 69 63 61 6C 20 20 63 6F 6F 72 64 69 6E hysical coordin
0000D0: 61 74 65 73 2E 0D 0A 20 20 20 20 20 20 20 69 2E ates... i.
0000E0: 65 2E 20 52 6F 77 20 30 2C 20 63 6F 6C 75 6D 6E e. Row 0, column
0000F0: 20 30 20 69 73 20 20 74 68 65 20 20 74 6F 70 20 0 is the top
000100: 20 6C 65 66 74 20 20 63 6F 72 6E 65 72 20 20 6F left corner o
000110: 66 20 20 74 68 65 20 20 73 63 72 65 65 6E 2E 20 f the screen.
000120: 20 54 68 65 0D 0A 20 20 20 20 20 20 20 70 6F 73 The.. pos
000130: 69 74 69 6F 6E 20 69 73 20 6E 6F 74 20 63 68 65 ition is not che
000140: 63 6B 65 64 20 66 6F 72 20 6C 65 67 61 6C 69 74 cked for legalit
000150: 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 y....... T
000160: 58 54 20 57 52 49 54 45 20 43 48 41 52 20 69 73 XT WRITE CHAR is
000170: 20 63 61 6C 6C 65 64 20 62 79 20 54 58 54 20 57 called by TXT W
000180: 52 20 43 48 41 52 20 74 6F 20 70 72 69 6E 74 20 R CHAR to print
000190: 61 20 20 63 68 61 72 61 63 74 65 72 20 20 6F 6E a character on
0001A0: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 73 63 the.. sc
0001B0: 72 65 65 6E 2E 20 54 68 65 20 72 65 6D 6F 76 69 reen. The removi
0001C0: 6E 67 20 6F 66 20 74 68 65 20 63 75 72 73 6F 72 ng of the cursor
0001D0: 20 62 6C 6F 62 20 61 6E 64 20 74 68 65 20 63 61 blob and the ca
0001E0: 6C 63 75 6C 61 74 69 6F 6E 20 6F 66 20 74 68 65 lculation of the
0001F0: 20 6E 65 77 0D 0A 20 20 20 20 20 20 20 63 75 72 new.. cur
Size : 512 (Real : 512)
000000: 72 65 6E 74 20 70 6F 73 69 74 69 6F 6E 20 61 72 rent position ar
000010: 65 20 70 65 72 66 6F 72 6D 65 64 20 62 79 20 54 e performed by T
000020: 58 54 20 57 52 20 43 48 41 52 20 61 6E 64 20 20 XT WR CHAR and
000030: 6E 6F 74 20 20 62 79 20 20 54 58 54 20 20 57 52 not by TXT WR
000040: 49 54 45 0D 0A 20 20 20 20 20 20 20 43 48 41 52 ITE.. CHAR
000050: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
000060: 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 is indirection i
000070: 73 20 73 65 74 20 75 70 20 77 68 65 6E 20 54 58 s set up when TX
000080: 54 20 49 4E 49 54 49 41 4C 49 53 45 20 6F 72 20 T INITIALISE or
000090: 54 58 54 20 52 45 53 45 54 20 69 73 20 63 61 6C TXT RESET is cal
0000A0: 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 led.........
0000B0: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
0000C0: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
0000D0: 54 58 54 20 4F 55 54 50 55 54 0D 0A 20 20 20 20 TXT OUTPUT..
0000E0: 20 20 20 54 58 54 20 55 4E 57 52 49 54 45 0D 0A TXT UNWRITE..
0000F0: 20 20 20 20 20 20 20 54 58 54 20 57 52 20 43 48 TXT WR CH
000100: 41 52 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A AR..............
000110: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
000120: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
000130: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 70 61 67 65 20 31 36 2E page 16.
000160: 34 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 4..............
000170: 20 20 20 20 20 20 49 4E 44 3A 20 54 58 54 20 55 IND: TXT U
000180: 4E 57 52 49 54 45 20 20 20 20 20 20 20 20 20 20 NWRITE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 23 42 44 44 36 0D 0A 0D 0A #BDD6....
0001C0: 20 20 20 20 20 20 20 52 65 61 64 20 61 20 63 68 Read a ch
0001D0: 61 72 61 63 74 65 72 20 66 72 6F 6D 20 74 68 65 aracter from the
0001E0: 20 73 63 72 65 65 6E 2E 0D 0A 0D 0A 20 20 20 20 screen.....
0001F0: 20 20 20 44 65 66 61 75 6C 74 20 61 63 74 69 6F Default actio
Size : 512 (Real : 512)
000000: 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 72 79 n:.... Try
000010: 20 74 6F 20 72 65 61 64 20 61 20 63 68 61 72 61 to read a chara
000020: 63 74 65 72 20 66 72 6F 6D 20 74 68 65 20 73 63 cter from the sc
000030: 72 65 65 6E 20 61 74 20 61 20 63 68 61 72 61 63 reen at a charac
000040: 74 65 72 20 70 6F 73 69 74 69 6F 6E 2E 0D 0A 0D ter position....
000050: 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F . Entry co
000060: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 nditions:....
000070: 20 20 20 20 48 20 63 6F 6E 74 61 69 6E 73 20 74 H contains t
000080: 68 65 20 70 68 79 73 69 63 61 6C 20 63 6F 6C 75 he physical colu
000090: 6D 6E 20 74 6F 20 72 65 61 64 20 66 72 6F 6D 2E mn to read from.
0000A0: 0D 0A 20 20 20 20 20 20 20 4C 20 63 6F 6E 74 61 .. L conta
0000B0: 69 6E 73 20 74 68 65 20 70 68 79 73 69 63 61 6C ins the physical
0000C0: 20 72 6F 77 20 74 6F 20 72 65 61 64 20 66 72 6F row to read fro
0000D0: 6D 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 m..... Exi
0000E0: 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D t conditions:...
0000F0: 0A 20 20 20 20 20 20 20 49 66 20 61 20 72 65 61 . If a rea
000100: 64 61 62 6C 65 20 63 68 61 72 61 63 74 65 72 20 dable character
000110: 77 61 73 20 66 6F 75 6E 64 3A 0D 0A 0D 0A 20 20 was found:....
000120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 61 Ca
000130: 72 72 79 20 74 72 75 65 2E 0D 0A 20 20 20 20 20 rry true...
000140: 20 20 20 20 20 20 20 20 20 20 20 41 20 63 6F 6E A con
000150: 74 61 69 6E 73 20 74 68 65 20 63 68 61 72 61 63 tains the charac
000160: 74 65 72 20 72 65 61 64 2E 0D 0A 0D 0A 20 20 20 ter read.....
000170: 20 20 20 20 49 66 20 6E 6F 20 72 65 63 6F 67 6E If no recogn
000180: 69 73 61 62 6C 65 20 63 68 61 72 61 63 74 65 72 isable character
000190: 20 77 61 73 20 66 6F 75 6E 64 3A 0D 0A 0D 0A 20 was found:....
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 43 C
0001B0: 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 20 20 20 arry false...
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 41 20 63 A c
0001D0: 6F 6E 74 61 69 6E 73 20 7A 65 72 6F 2E 0D 0A 0D ontains zero....
0001E0: 0A 20 20 20 20 20 20 20 41 6C 77 61 79 73 3A 0D . Always:.
0001F0: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
Size : 512 (Real : 512)
000000: 20 20 20 42 43 2C 20 44 45 2C 20 48 4C 20 61 6E BC, DE, HL an
000010: 64 20 6F 74 68 65 72 20 66 6C 61 67 73 20 63 6F d other flags co
000020: 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 20 rrupt...
000030: 20 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 All othe
000040: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
000050: 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 erved.....
000060: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 Notes:....
000070: 20 20 54 68 65 20 63 68 61 72 61 63 74 65 72 20 The character
000080: 70 6F 73 69 74 69 6F 6E 20 74 6F 20 72 65 61 64 position to read
000090: 20 66 72 6F 6D 20 69 73 20 67 69 76 65 6E 20 69 from is given i
0000A0: 6E 20 70 68 79 73 69 63 61 6C 20 20 63 6F 6F 72 n physical coor
0000B0: 64 69 6E 61 74 65 73 2E 0D 0A 20 20 20 20 20 20 dinates...
0000C0: 20 69 2E 65 2E 20 52 6F 77 20 30 2C 20 63 6F 6C i.e. Row 0, col
0000D0: 75 6D 6E 20 30 20 69 73 20 20 74 68 65 20 20 74 umn 0 is the t
0000E0: 6F 70 20 20 6C 65 66 74 20 20 63 6F 72 6E 65 72 op left corner
0000F0: 20 20 6F 66 20 20 74 68 65 20 20 73 63 72 65 65 of the scree
000100: 6E 2E 20 20 54 68 65 0D 0A 20 20 20 20 20 20 20 n. The..
000110: 70 6F 73 69 74 69 6F 6E 20 69 73 20 6E 6F 74 20 position is not
000120: 63 68 65 63 6B 65 64 20 66 6F 72 20 6C 65 67 61 checked for lega
000130: 6C 69 74 79 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 lity.....
000140: 54 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E This indirection
000150: 20 69 73 20 63 61 6C 6C 65 64 20 62 79 20 54 58 is called by TX
000160: 54 20 52 44 20 43 48 41 52 20 74 6F 20 72 65 61 T RD CHAR to rea
000170: 64 20 61 20 63 68 61 72 61 63 74 65 72 20 66 6F d a character fo
000180: 72 6D 20 74 68 65 0D 0A 20 20 20 20 20 20 20 73 rm the.. s
000190: 63 72 65 65 6E 2E 20 54 58 54 20 52 44 20 43 48 creen. TXT RD CH
0001A0: 41 52 20 72 65 6D 6F 76 65 73 20 74 68 65 20 63 AR removes the c
0001B0: 75 72 73 6F 72 20 66 72 6F 6D 20 74 68 65 20 73 ursor from the s
0001C0: 63 72 65 65 6E 20 62 65 66 6F 72 65 20 20 63 61 creen before ca
0001D0: 6C 6C 69 6E 67 0D 0A 20 20 20 20 20 20 20 74 68 lling.. th
0001E0: 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 2E 0D is indirection..
0001F0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
Size : 512 (Real : 512)
000000: 72 65 61 64 20 69 73 20 70 65 72 66 6F 72 6D 65 read is performe
000010: 64 20 62 79 20 63 6F 6D 70 61 72 69 6E 67 20 74 d by comparing t
000020: 68 65 20 6D 61 74 72 69 78 20 66 6F 75 6E 64 20 he matrix found
000030: 6F 6E 20 74 68 65 20 73 63 72 65 65 6E 20 77 69 on the screen wi
000040: 74 68 0D 0A 20 20 20 20 20 20 20 74 68 65 20 6D th.. the m
000050: 61 74 72 69 63 65 73 20 75 73 65 64 20 74 6F 20 atrices used to
000060: 67 65 6E 65 72 61 74 65 20 20 63 68 61 72 61 63 generate charac
000070: 74 65 72 73 2E 20 20 41 73 20 20 61 20 20 72 65 ters. As a re
000080: 73 75 6C 74 20 20 63 68 61 6E 67 69 6E 67 20 20 sult changing
000090: 61 0D 0A 20 20 20 20 20 20 20 63 68 61 72 61 63 a.. charac
0000A0: 74 65 72 20 6D 61 74 72 69 78 2C 20 63 68 61 6E ter matrix, chan
0000B0: 67 69 6E 67 20 74 68 65 20 70 65 6E 20 20 6F 72 ging the pen or
0000C0: 20 20 70 61 70 65 72 20 20 69 6E 6B 73 20 20 6F paper inks o
0000D0: 72 20 20 63 68 61 6E 67 69 6E 67 20 20 74 68 65 r changing the
0000E0: 0D 0A 20 20 20 20 20 20 20 73 63 72 65 65 6E 20 .. screen
0000F0: 28 65 2E 67 2E 20 20 64 72 61 77 69 6E 67 20 20 (e.g. drawing
000100: 61 20 20 6C 69 6E 65 20 20 74 68 72 6F 75 67 68 a line through
000110: 20 20 61 20 20 63 68 61 72 61 63 74 65 72 29 20 a character)
000120: 20 6D 61 79 20 20 6D 61 6B 65 20 20 74 68 65 0D may make the.
000130: 0A 20 20 20 20 20 20 20 63 68 61 72 61 63 74 65 . characte
000140: 72 20 20 75 6E 72 65 61 64 61 62 6C 65 2E 20 20 r unreadable.
000150: 49 6E 20 20 70 61 72 74 69 63 75 6C 61 72 20 20 In particular
000160: 74 68 65 20 20 63 75 72 73 6F 72 20 20 62 6C 6F the cursor blo
000170: 62 20 20 77 69 6C 6C 20 20 63 61 75 73 65 0D 0A b will cause..
000180: 20 20 20 20 20 20 20 63 6F 6E 66 75 73 69 6F 6E confusion
000190: 20 61 6E 64 20 73 6F 20 73 68 6F 75 6C 64 20 6E and so should n
0001A0: 6F 74 20 62 65 20 6F 6E 20 74 68 65 20 73 63 72 ot be on the scr
0001B0: 65 65 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 een.......
0001C0: 20 53 70 65 63 69 61 6C 20 20 70 72 65 63 61 75 Special precau
0001D0: 74 69 6F 6E 73 20 20 61 72 65 20 20 74 61 6B 65 tions are take
0001E0: 6E 20 20 61 67 61 69 6E 73 74 20 20 67 65 6E 65 n against gene
0001F0: 72 61 74 69 6E 67 20 20 69 6E 76 65 72 73 65 20 rating inverse
Size : 512 (Real : 512)
000000: 20 20 73 70 61 63 65 0D 0A 20 20 20 20 20 20 20 space..
000010: 28 63 68 61 72 61 63 74 65 72 20 20 23 38 46 29 (character #8F)
000020: 2E 20 20 49 6E 69 74 69 61 6C 6C 79 20 20 74 68 . Initially th
000030: 65 20 20 63 68 61 72 61 63 74 65 72 20 20 69 73 e character is
000040: 20 20 72 65 61 64 20 20 61 73 73 75 6D 69 6E 67 read assuming
000050: 20 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 62 the.. b
000060: 61 63 6B 67 72 6F 75 6E 64 20 74 6F 20 74 68 65 ackground to the
000070: 20 63 68 61 72 61 63 74 65 72 20 77 61 73 20 77 character was w
000080: 72 69 74 74 65 6E 20 69 6E 20 74 68 65 20 63 75 ritten in the cu
000090: 72 72 65 6E 74 20 70 61 70 65 72 20 20 69 6E 6B rrent paper ink
0000A0: 2E 20 20 49 66 0D 0A 20 20 20 20 20 20 20 74 68 . If.. th
0000B0: 69 73 20 66 61 69 6C 73 20 74 6F 20 20 67 65 6E is fails to gen
0000C0: 65 72 61 74 65 20 20 61 20 20 72 65 63 6F 67 6E erate a recogn
0000D0: 69 73 61 62 6C 65 20 20 63 68 61 72 61 63 74 65 isable characte
0000E0: 72 20 20 6F 72 20 20 69 74 20 20 67 65 6E 65 72 r or it gener
0000F0: 61 74 65 73 0D 0A 20 20 20 20 20 20 20 69 6E 76 ates.. inv
000100: 65 72 73 65 20 73 70 61 63 65 20 74 68 65 6E 20 erse space then
000110: 61 6E 6F 74 68 65 72 20 74 72 79 20 69 73 20 6D another try is m
000120: 61 64 65 20 62 79 20 61 73 73 75 6D 69 6E 67 20 ade by assuming
000130: 74 68 61 74 20 74 68 65 20 20 63 68 61 72 61 63 that the charac
000140: 74 65 72 0D 0A 20 20 20 20 20 20 20 77 61 73 20 ter.. was
000150: 77 72 69 74 74 65 6E 20 69 6E 20 74 68 65 20 63 written in the c
000160: 75 72 72 65 6E 74 20 70 65 6E 20 69 6E 6B 2E 0D urrent pen ink..
000170: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000180: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000190: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
0001C0: 65 20 31 36 2E 35 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A e 16.5..........
0001D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 63 .... The c
0001E0: 68 61 72 61 63 74 65 72 73 20 61 72 65 20 73 63 haracters are sc
0001F0: 61 6E 6E 65 64 20 73 74 61 72 74 69 6E 67 20 77 anned starting w
Size : 512 (Real : 512)
000000: 69 74 68 20 23 30 30 20 61 6E 64 20 66 69 6E 69 ith #00 and fini
000010: 73 68 69 6E 67 20 20 77 69 74 68 20 20 23 46 46 shing with #FF
000020: 2E 0D 0A 20 20 20 20 20 20 20 54 68 75 73 2C 20 ... Thus,
000030: 69 66 20 74 68 65 72 65 20 61 72 65 20 74 77 6F if there are two
000040: 20 70 6F 73 73 69 62 6C 65 20 20 63 68 61 72 61 possible chara
000050: 63 74 65 72 20 20 6D 61 74 72 69 63 65 73 20 20 cter matrices
000060: 74 68 61 74 20 20 6D 61 74 63 68 20 20 74 68 65 that match the
000070: 0D 0A 20 20 20 20 20 20 20 73 63 72 65 65 6E 2C .. screen,
000080: 20 74 68 65 20 73 6D 61 6C 6C 65 72 20 6F 66 20 the smaller of
000090: 74 68 65 20 74 77 6F 20 63 68 61 72 61 63 74 65 the two characte
0000A0: 72 20 6E 75 6D 62 65 72 73 20 77 69 6C 6C 20 62 r numbers will b
0000B0: 65 20 72 65 74 75 72 6E 65 64 2E 0D 0A 0D 0A 0D e returned......
0000C0: 0A 20 20 20 20 20 20 20 54 68 69 73 20 69 6E 64 . This ind
0000D0: 69 72 65 63 74 69 6F 6E 20 69 73 20 73 65 74 20 irection is set
0000E0: 75 70 20 77 68 65 6E 20 54 58 54 20 49 4E 49 54 up when TXT INIT
0000F0: 49 41 4C 49 53 45 20 6F 72 20 54 58 54 20 52 45 IALISE or TXT RE
000100: 53 45 54 20 69 73 20 63 61 6C 6C 65 64 2E 0D 0A SET is called...
000110: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C ...... Rel
000120: 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D ated entries:...
000130: 0A 0D 0A 20 20 20 20 20 20 20 54 58 54 20 52 44 ... TXT RD
000140: 20 43 48 41 52 0D 0A 20 20 20 20 20 20 20 54 58 CHAR.. TX
000150: 54 20 57 52 49 54 45 20 43 48 41 52 0D 0A 0D 0A T WRITE CHAR....
000160: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000170: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000180: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000190: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0001A0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0001B0: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
0001C0: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
0001D0: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
0001E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001F0: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
Size : 512 (Real : 512)
000000: 20 31 36 2E 36 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 16.6...........
000010: 0A 0D 0A 20 20 20 20 20 20 20 49 4E 44 3A 20 54 ... IND: T
000020: 58 54 20 4F 55 54 20 41 43 54 49 4F 4E 20 20 20 XT OUT ACTION
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 20 20 20 20 20 20 20 23 42 44 44 39 #BDD9
000060: 0D 0A 0D 0A 20 20 20 20 20 20 20 4F 75 74 70 75 .... Outpu
000070: 74 20 61 20 63 68 61 72 61 63 74 65 72 20 6F 72 t a character or
000080: 20 63 6F 6E 74 72 6F 6C 20 63 6F 64 65 2E 0D 0A control code...
000090: 0D 0A 20 20 20 20 20 20 20 44 65 66 61 75 6C 74 .. Default
0000A0: 20 61 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 action:....
0000B0: 20 20 20 50 72 69 6E 74 20 61 20 63 68 61 72 61 Print a chara
0000C0: 63 74 65 72 20 6F 6E 20 74 68 65 20 73 63 72 65 cter on the scre
0000D0: 65 6E 20 6F 72 20 6F 62 65 79 20 61 20 63 6F 6E en or obey a con
0000E0: 74 72 6F 6C 20 63 6F 64 65 20 28 63 68 61 72 61 trol code (chara
0000F0: 63 74 65 72 20 23 30 30 2E 0D 0A 20 20 20 20 20 cter #00...
000100: 20 20 2E 23 31 46 29 2E 20 57 6F 72 6B 73 20 6F .#1F). Works o
000110: 6E 20 74 68 65 20 63 75 72 72 65 6E 74 6C 79 20 n the currently
000120: 73 65 6C 65 63 74 65 64 20 73 74 72 65 61 6D 20 selected stream
000130: 28 65 78 63 65 70 74 20 61 73 20 6E 6F 74 65 64 (except as noted
000140: 20 62 65 6C 6F 77 29 2E 0D 0A 0D 0A 20 20 20 20 below).....
000150: 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 Entry conditi
000160: 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ons:.... A
000170: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 63 68 contains the ch
000180: 61 72 61 63 74 65 72 20 6F 72 20 63 6F 64 65 2E aracter or code.
000190: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
0001A0: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
0001B0: 20 20 20 20 20 20 41 46 2C 20 42 43 2C 20 44 45 AF, BC, DE
0001C0: 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E and HL corrupt.
0001D0: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 .. All oth
0001E0: 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 er registers pre
0001F0: 73 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 served.....
Size : 512 (Real : 512)
000000: 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 Notes:....
000010: 20 20 20 54 68 69 73 20 69 6E 64 69 72 65 63 74 This indirect
000020: 69 6F 6E 20 69 73 20 63 61 6C 6C 65 64 20 62 79 ion is called by
000030: 20 54 58 54 20 4F 55 54 50 55 54 20 74 6F 20 64 TXT OUTPUT to d
000040: 6F 20 74 68 65 20 20 77 6F 72 6B 20 20 6F 66 20 o the work of
000050: 20 70 72 69 6E 74 69 6E 67 0D 0A 20 20 20 20 20 printing..
000060: 20 20 63 68 61 72 61 63 74 65 72 73 20 6F 72 20 characters or
000070: 6F 62 65 79 69 6E 67 20 74 68 65 20 63 6F 6E 74 obeying the cont
000080: 72 6F 6C 20 63 6F 64 65 73 2E 20 49 74 20 69 73 rol codes. It is
000090: 20 70 72 6F 76 69 64 65 64 20 74 6F 20 20 61 6C provided to al
0000A0: 6C 6F 77 20 20 74 68 65 0D 0A 20 20 20 20 20 20 low the..
0000B0: 20 75 73 65 72 20 74 6F 20 63 68 61 6E 67 65 20 user to change
0000C0: 74 68 65 20 6D 65 74 68 6F 64 20 6F 66 20 64 65 the method of de
0000D0: 61 6C 69 6E 67 20 77 69 74 68 20 63 68 61 72 61 aling with chara
0000E0: 63 74 65 72 73 20 61 6E 64 20 63 6F 6E 74 72 6F cters and contro
0000F0: 6C 20 63 6F 64 65 73 0D 0A 20 20 20 20 20 20 20 l codes..
000100: 6F 72 20 74 6F 20 61 6C 6C 6F 77 20 74 68 65 20 or to allow the
000110: 75 73 65 72 20 74 6F 20 72 65 64 69 72 65 63 74 user to redirect
000120: 20 6F 75 74 70 75 74 20 28 74 6F 20 74 68 65 20 output (to the
000130: 70 72 69 6E 74 65 72 20 66 6F 72 20 20 65 78 61 printer for exa
000140: 6D 70 6C 65 29 2E 0D 0A 20 20 20 20 20 20 20 54 mple)... T
000150: 58 54 20 4F 55 54 50 55 54 20 6D 65 72 65 6C 79 XT OUTPUT merely
000160: 20 70 72 65 73 65 72 76 65 73 20 74 68 65 20 72 preserves the r
000170: 65 67 69 73 74 65 72 73 20 61 72 6F 75 6E 64 20 egisters around
000180: 74 68 65 20 63 61 6C 6C 20 6F 66 20 20 54 58 54 the call of TXT
000190: 20 20 4F 55 54 0D 0A 20 20 20 20 20 20 20 41 43 OUT.. AC
0001A0: 54 49 4F 4E 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 TION.....
0001B0: 43 6F 6E 74 72 6F 6C 20 63 6F 64 65 73 20 6D 61 Control codes ma
0001C0: 79 20 74 61 6B 65 20 75 70 20 74 6F 20 39 20 70 y take up to 9 p
0001D0: 61 72 61 6D 65 74 65 72 73 2E 20 54 68 65 73 65 arameters. These
0001E0: 20 20 61 72 65 20 20 74 68 65 20 20 63 68 61 72 are the char
0001F0: 61 63 74 65 72 73 0D 0A 20 20 20 20 20 20 20 73 acters.. s
Size : 512 (Real : 512)
000000: 65 6E 74 20 66 6F 6C 6C 6F 77 69 6E 67 20 74 68 ent following th
000010: 65 20 69 6E 69 74 69 61 6C 20 20 63 6F 6E 74 72 e initial contr
000020: 6F 6C 20 20 63 6F 64 65 2E 20 20 54 68 65 20 20 ol code. The
000030: 63 68 61 72 61 63 74 65 72 73 20 20 73 65 6E 74 characters sent
000040: 20 20 61 72 65 0D 0A 20 20 20 20 20 20 20 73 74 are.. st
000050: 6F 72 65 64 20 69 6E 20 61 20 62 75 66 66 65 72 ored in a buffer
000060: 20 75 6E 74 69 6C 20 73 75 66 66 69 63 69 65 6E until sufficien
000070: 74 20 68 61 76 65 20 62 65 65 6E 20 72 65 63 65 t have been rece
000080: 69 76 65 64 20 74 6F 20 6D 61 6B 65 20 75 70 20 ived to make up
000090: 20 61 6C 6C 0D 0A 20 20 20 20 20 20 20 74 68 65 all.. the
0000A0: 20 72 65 71 75 69 72 65 64 20 70 61 72 61 6D 65 required parame
0000B0: 74 65 72 73 2E 20 54 68 65 20 63 6F 6E 74 72 6F ters. The contro
0000C0: 6C 20 63 6F 64 65 20 62 75 66 66 65 72 20 69 73 l code buffer is
0000D0: 20 6F 6E 6C 79 20 20 6C 6F 6E 67 20 20 65 6E 6F only long eno
0000E0: 75 67 68 0D 0A 20 20 20 20 20 20 20 74 6F 20 61 ugh.. to a
0000F0: 63 63 65 70 74 20 39 20 70 61 72 61 6D 65 74 65 ccept 9 paramete
000100: 72 20 63 68 61 72 61 63 74 65 72 73 2E 0D 0A 0D r characters....
000110: 0A 20 20 20 20 20 20 20 54 68 65 72 65 20 69 73 . There is
000120: 20 6F 6E 6C 79 20 6F 6E 65 20 63 6F 6E 74 72 6F only one contro
000130: 6C 20 63 6F 64 65 20 62 75 66 66 65 72 20 77 68 l code buffer wh
000140: 69 63 68 20 69 73 20 73 68 61 72 65 64 20 62 65 ich is shared be
000150: 74 77 65 65 6E 20 61 6C 6C 20 20 74 68 65 0D 0A tween all the..
000160: 20 20 20 20 20 20 20 73 74 72 65 61 6D 73 2E 20 streams.
000170: 49 74 20 69 73 2C 20 74 68 65 72 65 66 6F 72 65 It is, therefore
000180: 20 70 6F 73 73 69 62 6C 65 20 74 6F 20 67 65 74 possible to get
000190: 20 75 6E 70 72 65 64 69 63 74 61 62 6C 65 20 72 unpredictable r
0001A0: 65 73 75 6C 74 73 20 69 66 20 74 68 65 0D 0A 20 esults if the..
0001B0: 20 20 20 20 20 20 6F 75 74 70 75 74 20 73 74 72 output str
0001C0: 65 61 6D 20 69 73 20 63 68 61 6E 67 65 64 20 70 eam is changed p
0001D0: 61 72 74 20 6F 66 20 74 68 65 20 77 61 79 20 20 art of the way
0001E0: 74 68 72 6F 75 67 68 20 20 73 65 6E 64 69 6E 67 through sending
0001F0: 20 20 61 20 20 63 6F 6E 74 72 6F 6C 0D 0A 20 20 a control..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 63 6F 64 65 20 73 65 71 75 65 6E code sequen
000010: 63 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 ce..... If
000020: 20 74 68 65 20 56 44 55 20 69 73 20 64 69 73 61 the VDU is disa
000030: 62 6C 65 64 20 74 68 65 6E 20 6E 6F 20 20 63 68 bled then no ch
000040: 61 72 61 63 74 65 72 73 20 20 77 69 6C 6C 20 20 aracters will
000050: 62 65 20 20 70 72 69 6E 74 65 64 20 20 6F 6E 20 be printed on
000060: 20 74 68 65 0D 0A 20 20 20 20 20 20 20 73 63 72 the.. scr
000070: 65 65 6E 2E 20 49 6E 20 56 31 2E 31 20 66 69 72 een. In V1.1 fir
000080: 6D 77 61 72 65 20 63 6F 6E 74 72 6F 6C 20 63 6F mware control co
000090: 64 65 73 20 74 68 61 74 20 61 72 65 20 20 73 70 des that are sp
0000A0: 65 63 69 61 6C 6C 79 20 20 6D 61 72 6B 65 64 20 ecially marked
0000B0: 20 69 6E 0D 0A 20 20 20 20 20 20 20 74 68 65 20 in.. the
0000C0: 63 6F 6E 74 72 6F 6C 20 63 6F 64 65 20 74 61 62 control code tab
0000D0: 6C 65 20 77 69 6C 6C 20 6E 6F 74 20 62 65 20 6F le will not be o
0000E0: 62 65 79 65 64 20 20 69 66 20 20 74 68 65 20 20 beyed if the
0000F0: 56 44 55 20 20 69 73 20 20 64 69 73 61 62 6C 65 VDU is disable
000100: 64 2E 0D 0A 20 20 20 20 20 20 20 4F 74 68 65 72 d... Other
000110: 20 63 6F 6E 74 72 6F 6C 20 63 6F 64 65 73 20 61 control codes a
000120: 6E 64 20 61 6C 6C 20 63 6F 6E 74 72 6F 6C 20 63 nd all control c
000130: 6F 64 65 73 20 69 6E 20 20 56 31 2E 30 20 20 66 odes in V1.0 f
000140: 69 72 6D 77 61 72 65 20 20 77 69 6C 6C 20 20 62 irmware will b
000150: 65 0D 0A 20 20 20 20 20 20 20 6F 62 65 79 65 64 e.. obeyed
000160: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 ..... If t
000170: 68 65 20 67 72 61 70 68 69 63 73 20 63 68 61 72 he graphics char
000180: 61 63 74 65 72 20 77 72 69 74 65 20 6D 6F 64 65 acter write mode
000190: 20 69 73 20 65 6E 61 62 6C 65 64 20 20 74 68 65 is enabled the
0001A0: 6E 20 20 61 6C 6C 20 20 63 68 61 72 61 63 74 65 n all characte
0001B0: 72 73 0D 0A 20 20 20 20 20 20 20 61 6E 64 20 63 rs.. and c
0001C0: 6F 6E 74 72 6F 6C 20 63 6F 64 65 73 20 61 72 65 ontrol codes are
0001D0: 20 70 72 69 6E 74 65 64 20 75 73 69 6E 67 20 74 printed using t
0001E0: 68 65 20 47 72 61 70 68 69 63 73 20 56 44 55 20 he Graphics VDU
0001F0: 28 73 65 65 20 47 52 41 20 57 52 20 43 48 41 52 (see GRA WR CHAR
Size : 512 (Real : 512)
000000: 29 0D 0A 20 20 20 20 20 20 20 61 6E 64 20 61 72 ).. and ar
000010: 65 20 6E 6F 74 20 6F 62 65 79 65 64 2E 20 4E 6F e not obeyed. No
000020: 72 6D 61 6C 6C 79 20 63 68 61 72 61 63 74 65 72 rmally character
000030: 73 20 61 72 65 20 77 72 69 74 74 65 6E 20 62 79 s are written by
000040: 20 20 74 68 65 20 20 54 65 78 74 20 20 56 44 55 the Text VDU
000050: 0D 0A 20 20 20 20 20 20 20 28 73 65 65 20 54 58 .. (see TX
000060: 54 20 57 52 20 43 48 41 52 29 2E 0D 0A 0D 0A 20 T WR CHAR).....
000070: 20 20 20 20 20 20 54 68 69 73 20 69 6E 64 69 72 This indir
000080: 65 63 74 69 6F 6E 20 69 73 20 73 65 74 20 75 70 ection is set up
000090: 20 77 68 65 6E 20 54 58 54 20 49 4E 49 54 49 41 when TXT INITIA
0000A0: 4C 49 53 45 20 6F 72 20 54 58 54 20 52 45 53 45 LISE or TXT RESE
0000B0: 54 20 69 73 20 63 61 6C 6C 65 64 2E 0D 0A 0D 0A T is called.....
0000C0: 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 65 Related e
0000D0: 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 ntries:....
0000E0: 20 20 54 58 54 20 4F 55 54 50 55 54 0D 0A 20 20 TXT OUTPUT..
0000F0: 20 20 20 20 20 54 58 54 20 57 52 20 43 48 41 52 TXT WR CHAR
000100: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000110: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
000120: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
000130: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 pa
000150: 67 65 20 31 36 2E 37 0D 0A 0D 0A 0D 0A 0D 0A 0D ge 16.7.........
000160: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 4E 44 3A ..... IND:
000170: 20 47 52 41 20 50 4C 4F 54 20 20 20 20 20 20 20 GRA PLOT
000180: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 44 #BD
0001B0: 44 43 0D 0A 0D 0A 20 20 20 20 20 20 20 50 6C 6F DC.... Plo
0001C0: 74 20 61 20 70 6F 69 6E 74 2E 0D 0A 0D 0A 20 20 t a point.....
0001D0: 20 20 20 20 20 44 65 66 61 75 6C 74 20 61 63 74 Default act
0001E0: 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 ion:.... C
0001F0: 68 65 63 6B 20 69 66 20 74 68 65 20 70 6F 69 6E heck if the poin
Size : 512 (Real : 512)
000000: 74 20 6C 69 65 73 20 69 6E 73 69 64 65 20 74 68 t lies inside th
000010: 65 20 63 75 72 72 65 6E 74 20 77 69 6E 64 6F 77 e current window
000020: 20 61 6E 64 20 69 66 20 73 6F 20 20 77 72 69 74 and if so writ
000030: 65 20 20 69 74 0D 0A 20 20 20 20 20 20 20 69 6E e it.. in
000040: 20 74 68 65 20 63 75 72 72 65 6E 74 20 67 72 61 the current gra
000050: 70 68 69 63 73 20 70 65 6E 20 69 6E 6B 20 61 6E phics pen ink an
000060: 64 20 75 73 69 6E 67 20 74 68 65 20 63 75 72 72 d using the curr
000070: 65 6E 74 20 20 67 72 61 70 68 69 63 73 20 20 77 ent graphics w
000080: 72 69 74 65 0D 0A 20 20 20 20 20 20 20 6D 6F 64 rite.. mod
000090: 65 2E 20 54 68 65 20 63 75 72 72 65 6E 74 20 67 e. The current g
0000A0: 72 61 70 68 69 63 73 20 70 6F 73 69 74 69 6F 6E raphics position
0000B0: 20 69 20 61 6C 77 61 79 73 20 6D 6F 76 65 64 20 i always moved
0000C0: 20 74 6F 20 20 74 68 65 20 20 73 70 65 63 69 66 to the specif
0000D0: 69 65 64 0D 0A 20 20 20 20 20 20 20 70 6F 69 6E ied.. poin
0000E0: 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 t....... E
0000F0: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
000100: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 45 20 ...... DE
000110: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 75 73 65 contains the use
000120: 72 20 58 20 63 6F 6F 72 64 69 6E 61 74 65 20 6F r X coordinate o
000130: 66 20 74 68 65 20 70 6F 69 6E 74 20 74 6F 20 70 f the point to p
000140: 6C 6F 74 2E 0D 0A 20 20 20 20 20 20 20 48 4C 20 lot... HL
000150: 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 75 73 65 contains the use
000160: 72 20 59 20 63 6F 6F 72 64 69 6E 61 74 65 20 6F r Y coordinate o
000170: 66 20 74 68 65 20 70 6F 69 6E 74 20 74 6F 20 70 f the point to p
000180: 6C 6F 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 lot.......
000190: 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 Exit conditions
0001A0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 :...... AF
0001B0: 2C 20 42 43 2C 20 44 45 20 61 6E 64 20 48 4C 20 , BC, DE and HL
0001C0: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
0001D0: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
0001E0: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D ters preserved..
0001F0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 ..... Note
Size : 512 (Real : 512)
000000: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 s:...... T
000010: 68 65 20 70 6F 73 69 74 69 6F 6E 20 6F 66 20 74 he position of t
000020: 68 65 20 70 6F 69 6E 74 20 74 6F 20 70 6C 6F 74 he point to plot
000030: 20 69 73 20 67 69 76 65 6E 20 69 6E 20 75 73 65 is given in use
000040: 72 20 20 63 6F 6F 72 64 69 6E 61 74 65 73 2C 20 r coordinates,
000050: 20 69 2E 65 2E 0D 0A 20 20 20 20 20 20 20 72 65 i.e... re
000060: 6C 61 74 69 76 65 20 74 6F 20 74 68 65 20 75 73 lative to the us
000070: 65 72 20 6F 72 69 67 69 6E 2E 0D 0A 0D 0A 0D 0A er origin.......
000080: 20 20 20 20 20 20 20 54 68 69 73 20 69 6E 64 69 This indi
000090: 72 65 63 74 69 6F 6E 20 69 73 20 63 61 6C 6C 65 rection is calle
0000A0: 64 20 62 79 20 47 52 41 20 50 4C 4F 54 20 52 45 d by GRA PLOT RE
0000B0: 4C 41 54 49 56 45 20 61 6E 64 20 47 52 41 20 50 LATIVE and GRA P
0000C0: 4C 4F 54 20 20 41 42 53 4F 4C 55 54 45 0D 0A 20 LOT ABSOLUTE..
0000D0: 20 20 20 20 20 20 74 6F 20 70 6C 6F 74 20 74 68 to plot th
0000E0: 65 20 70 6F 69 6E 74 20 72 65 71 75 65 73 74 65 e point requeste
0000F0: 64 2E 20 49 74 20 69 73 20 20 70 72 6F 76 69 64 d. It is provid
000100: 65 64 20 20 74 6F 20 20 61 6C 6C 6F 77 20 20 74 ed to allow t
000110: 68 65 20 20 75 73 65 72 20 20 74 6F 0D 0A 20 20 he user to..
000120: 20 20 20 20 20 63 68 61 6E 67 65 20 74 68 65 20 change the
000130: 6D 65 74 68 6F 64 20 66 6F 72 20 70 6C 6F 74 74 method for plott
000140: 69 6E 67 20 20 28 74 6F 20 20 6F 75 74 70 75 74 ing (to output
000150: 20 20 74 6F 20 20 61 6E 20 20 58 2D 59 20 20 70 to an X-Y p
000160: 6C 6F 74 74 65 72 20 20 66 6F 72 0D 0A 20 20 20 lotter for..
000170: 20 20 20 20 65 78 61 6D 70 6C 65 29 2E 20 47 52 example). GR
000180: 41 20 50 4C 4F 54 20 52 45 4C 41 54 49 56 45 20 A PLOT RELATIVE
000190: 63 6F 6E 76 65 72 74 73 20 66 72 6F 6D 20 72 65 converts from re
0001A0: 6C 61 74 69 76 65 20 74 6F 20 75 73 65 72 20 63 lative to user c
0001B0: 6F 6F 72 64 69 6E 61 74 65 73 0D 0A 20 20 20 20 oordinates..
0001C0: 20 20 20 61 6E 64 20 20 74 68 65 6E 20 20 63 61 and then ca
0001D0: 6C 6C 73 20 20 74 68 69 73 20 20 69 6E 64 69 72 lls this indir
0001E0: 65 63 74 69 6F 6E 3B 20 20 47 52 41 20 20 50 4C ection; GRA PL
0001F0: 4F 54 20 20 41 42 53 4F 4C 55 54 45 20 20 63 61 OT ABSOLUTE ca
Size : 512 (Real : 512)
000000: 6C 6C 73 20 20 74 68 69 73 0D 0A 20 20 20 20 20 lls this..
000010: 20 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 6D indirection im
000020: 6D 65 64 69 61 74 65 6C 79 2E 0D 0A 0D 0A 0D 0A mediately.......
000030: 20 20 20 20 20 20 20 54 6F 20 77 72 69 74 65 20 To write
000040: 74 68 65 20 70 6F 69 6E 74 20 6F 6E 20 74 68 65 the point on the
000050: 20 73 63 72 65 65 6E 20 74 68 65 20 53 43 52 20 screen the SCR
000060: 57 52 49 54 45 20 20 69 6E 64 69 72 65 63 74 69 WRITE indirecti
000070: 6F 6E 20 20 69 73 20 20 75 73 65 64 2E 0D 0A 20 on is used...
000080: 20 20 20 20 20 20 54 68 75 73 20 74 68 65 20 70 Thus the p
000090: 6F 69 6E 74 20 69 73 20 70 6C 6F 74 74 65 64 20 oint is plotted
0000A0: 75 73 69 6E 67 20 74 68 65 20 63 75 72 72 65 6E using the curren
0000B0: 74 20 67 72 61 70 68 69 63 73 20 77 72 69 74 65 t graphics write
0000C0: 20 6D 6F 64 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 mode.......
0000D0: 20 20 20 54 68 69 73 20 69 6E 64 69 72 65 63 74 This indirect
0000E0: 69 6F 6E 20 69 73 20 73 65 74 20 75 70 20 77 68 ion is set up wh
0000F0: 65 6E 20 47 52 41 20 49 4E 49 54 49 41 4C 49 53 en GRA INITIALIS
000100: 45 20 6F 72 20 47 52 41 20 52 45 53 45 54 20 69 E or GRA RESET i
000110: 73 20 63 61 6C 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D s called........
000120: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
000130: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 20 entries:....
000140: 20 20 20 47 52 41 20 50 4C 4F 54 20 41 42 53 4F GRA PLOT ABSO
000150: 4C 55 54 45 0D 0A 20 20 20 20 20 20 20 47 52 41 LUTE.. GRA
000160: 20 50 4C 4F 54 20 52 45 4C 41 54 49 56 45 0D 0A PLOT RELATIVE..
000170: 20 20 20 20 20 20 20 47 52 41 20 54 45 53 54 0D GRA TEST.
000180: 0A 20 20 20 20 20 20 20 53 43 52 20 57 52 49 54 . SCR WRIT
000190: 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 E..........
0001A0: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
0001B0: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
0001C0: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 p
0001E0: 61 67 65 20 31 36 2E 38 0D 0A 0D 0A 0D 0A 0D 0A age 16.8........
0001F0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 4E 44 ...... IND
Size : 512 (Real : 512)
000000: 3A 20 47 52 41 20 54 45 53 54 20 20 20 20 20 20 : GRA TEST
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
000040: 44 44 46 0D 0A 0D 0A 20 20 20 20 20 20 20 54 65 DDF.... Te
000050: 73 74 20 61 20 70 6F 69 6E 74 2E 0D 0A 0D 0A 20 st a point.....
000060: 20 20 20 20 20 20 44 65 66 61 75 6C 74 20 61 63 Default ac
000070: 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 tion:....
000080: 43 68 65 63 6B 20 69 66 20 74 68 65 20 70 6F 69 Check if the poi
000090: 6E 74 20 69 6E 73 69 64 65 20 74 68 65 20 67 72 nt inside the gr
0000A0: 61 70 68 69 63 73 20 77 69 6E 64 6F 77 20 61 6E aphics window an
0000B0: 64 20 72 65 74 75 72 6E 20 74 68 65 20 69 6E 6B d return the ink
0000C0: 20 69 74 20 69 73 0D 0A 20 20 20 20 20 20 20 63 it is.. c
0000D0: 75 72 72 65 6E 74 6C 79 20 73 65 74 20 74 6F 20 urrently set to
0000E0: 69 66 20 73 6F 2E 20 4F 74 68 65 72 77 69 73 65 if so. Otherwise
0000F0: 2C 20 72 65 74 75 72 6E 20 74 68 65 20 20 63 75 , return the cu
000100: 72 72 65 6E 74 20 20 67 72 61 70 68 69 63 20 20 rrent graphic
000110: 70 61 70 65 72 0D 0A 20 20 20 20 20 20 20 69 6E paper.. in
000120: 6B 2E 20 54 68 65 20 63 75 72 72 65 6E 74 20 67 k. The current g
000130: 72 61 70 68 69 63 73 20 70 6F 73 69 74 69 6F 6E raphics position
000140: 20 69 73 20 61 6C 77 61 79 73 20 6D 6F 76 65 64 is always moved
000150: 20 20 74 6F 20 20 74 68 65 20 20 73 70 65 63 69 to the speci
000160: 66 69 65 64 0D 0A 20 20 20 20 20 20 20 70 6F 69 fied.. poi
000170: 6E 74 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E nt..... En
000180: 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D try conditions:.
000190: 0A 0D 0A 20 20 20 20 20 20 20 44 45 20 63 6F 6E ... DE con
0001A0: 74 61 69 6E 73 20 74 68 65 20 75 73 65 72 20 58 tains the user X
0001B0: 20 63 6F 6F 72 64 69 6E 61 74 65 20 6F 66 20 74 coordinate of t
0001C0: 68 65 20 70 6F 69 6E 74 20 74 6F 20 74 65 73 74 he point to test
0001D0: 2E 0D 0A 20 20 20 20 20 20 20 48 4C 20 63 6F 6E ... HL con
0001E0: 74 61 69 6E 73 20 74 68 65 20 75 73 65 72 20 59 tains the user Y
0001F0: 20 63 6F 6F 72 64 69 6E 61 74 65 20 6F 66 20 74 coordinate of t
Size : 512 (Real : 512)
000000: 68 65 20 70 6F 69 6E 74 20 74 6F 20 74 65 73 74 he point to test
000010: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 ..... Exit
000020: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000030: 20 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E A contain
000040: 73 20 74 68 65 20 64 65 63 6F 64 65 64 20 69 6E s the decoded in
000050: 6B 20 6F 66 20 74 68 65 20 73 70 65 63 69 66 69 k of the specifi
000060: 65 64 20 70 6F 69 6E 74 2E 0D 0A 0D 0A 0D 0A 20 ed point.......
000070: 20 20 20 20 20 20 42 43 2C 20 44 45 2C 48 4C 20 BC, DE,HL
000080: 61 6E 64 20 66 6C 61 67 73 20 63 6F 72 72 75 70 and flags corrup
000090: 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F t... All o
0000A0: 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 ther registers p
0000B0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
0000C0: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
0000D0: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 70 6F 73 .. The pos
0000E0: 69 74 69 6F 6E 20 6F 66 20 74 68 65 20 70 6F 69 ition of the poi
0000F0: 6E 74 20 74 6F 20 70 6C 6F 74 20 69 73 20 67 69 nt to plot is gi
000100: 76 65 6E 20 69 6E 20 75 73 65 72 20 20 63 6F 6F ven in user coo
000110: 72 64 69 6E 61 74 65 73 2C 20 20 69 2E 65 2E 0D rdinates, i.e..
000120: 0A 20 20 20 20 20 20 20 72 65 6C 61 74 69 76 65 . relative
000130: 20 74 6F 20 74 68 65 20 75 73 65 72 20 6F 72 69 to the user ori
000140: 67 69 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 gin.......
000150: 20 54 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F This indirectio
000160: 6E 20 69 73 20 75 73 65 64 20 62 79 20 47 52 41 n is used by GRA
000170: 20 54 45 53 54 20 52 45 4C 41 54 49 56 45 20 61 TEST RELATIVE a
000180: 6E 64 20 47 52 41 20 54 45 53 54 20 41 42 53 4F nd GRA TEST ABSO
000190: 4C 55 54 45 20 74 6F 0D 0A 20 20 20 20 20 20 20 LUTE to..
0001A0: 74 65 73 74 20 74 68 65 20 70 6F 69 6E 74 20 72 test the point r
0001B0: 65 71 75 65 73 74 65 64 2E 20 49 74 20 69 73 20 equested. It is
0001C0: 70 72 6F 76 69 64 65 64 20 74 6F 20 61 6C 6C 6F provided to allo
0001D0: 77 20 74 68 65 20 75 73 65 72 20 20 74 6F 20 20 w the user to
0001E0: 63 68 61 6E 67 65 0D 0A 20 20 20 20 20 20 20 74 change.. t
0001F0: 68 65 20 6D 65 74 68 6F 64 20 66 6F 72 20 20 74 he method for t
Size : 512 (Real : 512)
000000: 65 73 74 69 6E 67 20 20 28 63 6F 6D 70 61 72 69 esting (compari
000010: 6E 67 20 20 77 69 74 68 20 20 74 68 65 20 20 63 ng with the c
000020: 75 72 72 65 6E 74 20 20 70 65 6E 20 20 69 6E 6B urrent pen ink
000030: 20 20 66 6F 72 0D 0A 20 20 20 20 20 20 20 65 78 for.. ex
000040: 61 6D 70 6C 65 29 2E 20 47 52 41 20 54 45 53 54 ample). GRA TEST
000050: 20 52 45 4C 41 54 49 56 45 20 63 6F 6E 76 65 72 RELATIVE conver
000060: 74 73 20 66 72 6F 6D 20 72 65 6C 61 74 69 76 65 ts from relative
000070: 20 74 6F 20 75 73 65 72 20 63 6F 6F 72 64 69 6E to user coordin
000080: 61 74 65 73 0D 0A 20 20 20 20 20 20 20 61 6E 64 ates.. and
000090: 20 20 74 68 65 6E 20 20 63 61 6C 6C 73 20 20 74 then calls t
0000A0: 68 69 73 20 20 69 6E 64 69 72 65 63 74 69 6F 6E his indirection
0000B0: 3B 20 20 47 52 41 20 20 54 45 53 54 20 20 41 42 ; GRA TEST AB
0000C0: 53 4F 4C 55 54 45 20 20 63 61 6C 6C 73 20 20 74 SOLUTE calls t
0000D0: 68 69 73 0D 0A 20 20 20 20 20 20 20 69 6E 64 69 his.. indi
0000E0: 72 65 63 74 69 6F 6E 20 69 6D 6D 65 64 69 61 74 rection immediat
0000F0: 65 6C 79 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ely.......
000100: 20 54 6F 20 74 65 73 74 20 74 68 65 20 69 6E 6B To test the ink
000110: 20 6F 66 20 61 20 70 6F 69 6E 74 20 69 6E 73 69 of a point insi
000120: 64 65 20 74 68 65 20 77 69 6E 64 6F 77 20 74 68 de the window th
000130: 65 20 53 43 52 20 52 45 41 44 20 20 69 6E 64 69 e SCR READ indi
000140: 72 65 63 74 69 6F 6E 0D 0A 20 20 20 20 20 20 20 rection..
000150: 69 73 20 75 73 65 64 2E 0D 0A 0D 0A 20 20 20 20 is used.....
000160: 20 20 20 54 68 69 73 20 69 6E 64 69 72 65 63 74 This indirect
000170: 69 6F 6E 20 69 73 20 73 65 74 20 75 70 20 77 68 ion is set up wh
000180: 65 6E 20 47 52 41 20 49 4E 49 54 49 41 4C 49 53 en GRA INITIALIS
000190: 45 20 6F 72 20 47 52 41 20 52 45 53 45 54 20 69 E or GRA RESET i
0001A0: 73 20 63 61 6C 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D s called........
0001B0: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
0001C0: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 entries:......
0001D0: 20 20 20 20 20 47 52 41 20 50 4C 4F 54 0D 0A 20 GRA PLOT..
0001E0: 20 20 20 20 20 20 47 52 41 20 54 45 53 54 20 41 GRA TEST A
0001F0: 42 53 4F 4C 55 54 45 0D 0A 20 20 20 20 20 20 20 BSOLUTE..
Size : 512 (Real : 512)
000000: 47 52 41 20 54 45 53 54 20 52 45 4C 41 54 49 56 GRA TEST RELATIV
000010: 45 0D 0A 20 20 20 20 20 20 20 53 43 52 20 52 45 E.. SCR RE
000020: 41 44 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 AD............
000030: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000040: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000050: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000070: 20 20 70 61 67 65 20 31 36 2E 39 0D 0A 0D 0A 0D page 16.9.....
000080: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000090: 49 4E 44 3A 20 47 52 41 20 4C 49 4E 45 20 20 20 IND: GRA LINE
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000D0: 20 23 42 44 45 32 0D 0A 0D 0A 0D 0A 20 20 20 20 #BDE2......
0000E0: 20 20 20 44 72 61 77 20 61 20 6C 69 6E 65 2E 0D Draw a line..
0000F0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 65 66 61 ..... Defa
000100: 75 6C 74 20 61 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D ult action:.....
000110: 0A 20 20 20 20 20 20 20 44 72 61 77 20 61 20 6C . Draw a l
000120: 69 6E 65 20 62 65 74 77 65 65 6E 20 20 74 68 65 ine between the
000130: 20 20 63 75 72 72 65 6E 74 20 20 67 72 61 70 68 current graph
000140: 69 63 73 20 20 70 6F 73 69 74 69 6F 6E 20 20 61 ics position a
000150: 6E 64 20 20 74 68 65 20 20 67 69 76 65 6E 0D 0A nd the given..
000160: 20 20 20 20 20 20 20 65 6E 64 70 6F 69 6E 74 20 endpoint
000170: 75 73 69 6E 67 20 74 68 65 20 63 75 72 72 65 6E using the curren
000180: 74 20 67 72 61 70 68 69 63 73 20 77 72 69 74 65 t graphics write
000190: 20 6D 6F 64 65 2E 20 20 50 6F 69 6E 74 73 20 20 mode. Points
0001A0: 6F 6E 20 20 74 68 65 20 20 6C 69 6E 65 0D 0A 20 on the line..
0001B0: 20 20 20 20 20 20 74 68 61 74 20 6C 69 65 20 6F that lie o
0001C0: 75 74 73 69 64 65 20 74 68 65 20 63 75 72 72 65 utside the curre
0001D0: 6E 74 20 67 72 61 70 68 69 63 73 20 77 69 6E 64 nt graphics wind
0001E0: 6F 77 20 77 69 6C 6C 20 6E 6F 74 20 62 65 20 70 ow will not be p
0001F0: 6C 6F 74 74 65 64 2E 20 20 54 68 65 0D 0A 20 20 lotted. The..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 63 75 72 72 65 6E 74 20 67 72 61 current gra
000010: 70 68 69 63 73 20 70 6F 73 69 74 69 6F 6E 20 69 phics position i
000020: 73 20 61 6C 77 61 79 73 20 6D 6F 76 65 64 20 74 s always moved t
000030: 6F 20 74 68 65 20 73 70 65 63 69 66 69 65 64 20 o the specified
000040: 65 6E 64 70 6F 69 6E 74 2E 0D 0A 0D 0A 0D 0A 20 endpoint.......
000050: 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 Entry cond
000060: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 itions:......
000070: 20 20 20 20 44 45 20 63 6F 6E 74 61 69 6E 73 20 DE contains
000080: 74 68 65 20 75 73 65 72 20 58 20 63 6F 6F 72 64 the user X coord
000090: 69 6E 61 74 65 20 6F 66 20 74 68 65 20 65 6E 64 inate of the end
0000A0: 70 6F 69 6E 74 2E 0D 0A 20 20 20 20 20 20 20 48 point... H
0000B0: 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 75 L contains the u
0000C0: 73 65 72 20 59 20 63 6F 6F 72 64 69 6E 61 74 65 ser Y coordinate
0000D0: 20 6F 66 20 74 68 65 20 65 6E 64 70 6F 69 6E 74 of the endpoint
0000E0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 ....... Ex
0000F0: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
000100: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 2C 20 42 .... AF, B
000110: 43 2C 20 44 45 20 61 6E 64 20 48 4C 20 63 6F 72 C, DE and HL cor
000120: 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C rupt... Al
000130: 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 l other register
000140: 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A s preserved.....
000150: 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D .. Notes:.
000160: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
000170: 70 6F 73 69 74 69 6F 6E 20 6F 66 20 74 68 65 20 position of the
000180: 20 65 6E 64 70 6F 69 6E 74 20 20 69 73 20 20 67 endpoint is g
000190: 69 76 65 6E 20 20 69 6E 20 20 75 73 65 72 20 20 iven in user
0001A0: 63 6F 6F 72 64 69 6E 61 74 65 73 2C 20 20 69 2E coordinates, i.
0001B0: 65 2E 0D 0A 20 20 20 20 20 20 20 72 65 6C 61 74 e... relat
0001C0: 69 76 65 20 74 6F 20 74 68 65 20 75 73 65 72 20 ive to the user
0001D0: 6F 72 69 67 69 6E 2E 0D 0A 0D 0A 20 20 20 20 20 origin.....
0001E0: 20 20 54 68 69 73 20 69 6E 64 69 72 65 63 74 69 This indirecti
0001F0: 6F 6E 20 69 73 20 75 73 65 64 20 62 79 20 47 52 on is used by GR
Size : 512 (Real : 512)
000000: 41 20 4C 49 4E 45 20 52 45 4C 41 54 49 56 45 20 A LINE RELATIVE
000010: 61 6E 64 20 47 52 41 20 4C 49 4E 45 20 41 42 53 and GRA LINE ABS
000020: 4F 4C 55 54 45 20 74 6F 0D 0A 20 20 20 20 20 20 OLUTE to..
000030: 20 64 72 61 77 20 74 68 65 20 6C 69 6E 65 20 73 draw the line s
000040: 70 65 63 69 66 69 65 64 2E 20 49 74 20 69 73 20 pecified. It is
000050: 70 72 6F 76 69 64 65 64 20 74 6F 20 61 6C 6C 6F provided to allo
000060: 77 20 74 68 65 20 20 75 73 65 72 20 20 74 6F 20 w the user to
000070: 20 63 68 61 6E 67 65 0D 0A 20 20 20 20 20 20 20 change..
000080: 74 68 65 20 6D 65 74 68 6F 64 20 66 6F 72 20 6C the method for l
000090: 69 6E 65 20 64 72 61 77 69 6E 67 20 28 74 6F 20 ine drawing (to
0000A0: 6F 75 74 70 75 74 20 74 6F 20 61 6E 20 58 2D 59 output to an X-Y
0000B0: 20 70 6C 6F 74 74 65 72 20 66 6F 72 20 65 78 61 plotter for exa
0000C0: 6D 70 6C 65 29 2E 0D 0A 20 20 20 20 20 20 20 47 mple)... G
0000D0: 52 41 20 4C 49 4E 45 20 52 45 4C 41 54 49 56 45 RA LINE RELATIVE
0000E0: 20 63 6F 6E 76 65 72 74 73 20 66 72 6F 6D 20 72 converts from r
0000F0: 65 6C 61 74 69 76 65 20 74 6F 20 75 73 65 72 20 elative to user
000100: 63 6F 6F 72 64 69 6E 61 74 65 73 20 61 6E 64 20 coordinates and
000110: 20 74 68 65 6E 0D 0A 20 20 20 20 20 20 20 63 61 then.. ca
000120: 6C 6C 73 20 20 74 68 65 20 20 69 6E 64 69 72 65 lls the indire
000130: 63 74 69 6F 6E 3B 20 20 47 52 41 20 20 4C 49 4E ction; GRA LIN
000140: 45 20 20 41 42 53 4F 4C 55 54 45 20 20 63 61 6C E ABSOLUTE cal
000150: 6C 73 20 20 74 68 65 20 20 69 6E 64 69 72 65 63 ls the indirec
000160: 74 69 6F 6E 0D 0A 20 20 20 20 20 20 20 69 6D 6D tion.. imm
000170: 65 64 69 61 74 65 6C 79 2E 0D 0A 0D 0A 20 20 20 ediately.....
000180: 20 20 20 20 54 68 65 20 6C 69 6E 65 20 69 73 20 The line is
000190: 73 70 6C 69 74 20 75 70 20 69 6E 74 6F 20 68 6F split up into ho
0001A0: 72 69 7A 6F 6E 74 61 6C 20 6F 72 20 20 76 65 72 rizontal or ver
0001B0: 74 69 63 61 6C 20 20 73 65 63 74 69 6F 6E 73 20 tical sections
0001C0: 20 74 68 61 74 20 20 61 72 65 0D 0A 20 20 20 20 that are..
0001D0: 20 20 20 64 72 61 77 6E 20 73 65 70 61 72 61 74 drawn separat
0001E0: 65 6C 79 20 28 73 65 65 20 53 43 52 20 48 4F 52 ely (see SCR HOR
0001F0: 49 5A 4F 4E 54 41 4C 20 61 6E 64 20 53 43 52 20 IZONTAL and SCR
Size : 512 (Real : 512)
000000: 56 45 52 54 49 43 41 4C 29 2E 20 54 68 65 20 53 VERTICAL). The S
000010: 43 52 20 20 57 52 49 54 45 0D 0A 20 20 20 20 20 CR WRITE..
000020: 20 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 73 indirection is
000030: 20 63 61 6C 6C 65 64 20 74 6F 20 77 72 69 74 65 called to write
000040: 20 70 6F 69 6E 74 73 20 69 6E 20 74 68 65 73 65 points in these
000050: 20 20 73 65 63 74 69 6F 6E 73 2E 20 20 54 68 69 sections. Thi
000060: 73 20 20 6D 65 61 6E 73 0D 0A 20 20 20 20 20 20 s means..
000070: 20 74 68 61 74 20 74 68 65 20 6C 69 6E 65 20 69 that the line i
000080: 73 20 70 6C 6F 74 74 65 64 20 75 73 69 6E 67 20 s plotted using
000090: 74 68 65 20 63 75 72 72 65 6E 74 20 67 72 61 70 the current grap
0000A0: 68 69 63 73 20 77 72 69 74 65 20 6D 6F 64 65 2E hics write mode.
0000B0: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 6E 20 56 31 .... In V1
0000C0: 2E 30 20 66 69 72 6D 77 61 72 65 20 74 68 65 20 .0 firmware the
0000D0: 6C 69 6E 65 20 69 73 20 70 6C 6F 74 74 65 64 20 line is plotted
0000E0: 69 6E 20 74 68 65 20 63 75 72 72 65 6E 74 20 70 in the current p
0000F0: 65 6E 20 20 69 6E 6B 2E 20 20 42 75 74 20 20 69 en ink. But i
000100: 6E 0D 0A 20 20 20 20 20 20 20 56 31 2E 31 20 74 n.. V1.1 t
000110: 68 65 20 73 65 74 74 69 6E 67 20 6F 66 20 74 68 he setting of th
000120: 65 20 6C 69 6E 65 20 6D 61 73 6B 20 64 65 74 65 e line mask dete
000130: 72 6D 69 6E 65 73 20 68 6F 77 20 70 69 78 65 6C rmines how pixel
000140: 73 20 20 6F 6E 20 20 74 68 65 20 20 6C 69 6E 65 s on the line
000150: 0D 0A 20 20 20 20 20 20 20 77 69 6C 6C 20 62 65 .. will be
000160: 20 70 6C 6F 74 74 65 64 2E 20 20 54 68 65 20 20 plotted. The
000170: 6C 69 6E 65 20 20 6D 61 73 6B 20 20 69 73 20 20 line mask is
000180: 62 69 74 20 20 73 69 67 6E 69 66 69 63 61 6E 74 bit significant
000190: 20 20 61 6E 64 20 20 69 73 20 20 75 73 65 64 0D and is used.
0001A0: 0A 20 20 20 20 20 20 20 72 65 70 65 61 74 65 64 . repeated
0001B0: 6C 79 20 69 6E 20 74 68 65 20 6F 72 64 65 72 20 ly in the order
0001C0: 62 69 74 20 37 2C 20 62 69 74 20 36 20 64 6F 77 bit 7, bit 6 dow
0001D0: 6E 20 74 6F 20 62 69 74 20 30 20 66 6F 72 20 65 n to bit 0 for e
0001E0: 61 63 68 20 20 70 69 78 65 6C 20 20 69 6E 0D 0A ach pixel in..
0001F0: 20 20 20 20 20 20 20 74 68 65 20 6C 69 6E 65 2E the line.
Size : 512 (Real : 512)
000000: 20 49 66 20 74 68 65 20 62 69 74 20 69 73 20 6F If the bit is o
000010: 6E 65 20 74 68 65 6E 20 74 68 65 20 70 69 78 65 ne then the pixe
000020: 6C 20 69 73 20 70 6C 6F 74 74 65 64 20 69 6E 20 l is plotted in
000030: 74 68 65 20 20 67 72 61 70 68 69 63 73 0D 0A 20 the graphics..
000040: 20 20 20 20 20 20 70 65 6E 20 69 6E 6B 2E 20 49 pen ink. I
000050: 66 20 74 68 65 20 62 69 74 20 69 73 20 7A 65 72 f the bit is zer
000060: 6F 20 74 68 65 6E 20 20 74 68 65 20 20 61 63 74 o then the act
000070: 69 6F 6E 20 20 74 61 6B 65 6E 20 20 64 65 70 65 ion taken depe
000080: 6E 64 73 20 20 6F 6E 20 20 74 68 65 0D 0A 20 20 nds on the..
000090: 20 20 20 20 20 67 72 61 70 68 69 63 73 20 62 61 graphics ba
0000A0: 63 6B 67 72 6F 75 6E 64 20 77 72 69 74 65 20 6D ckground write m
0000B0: 6F 64 65 2E 20 49 66 20 74 68 65 20 62 61 63 6B ode. If the back
0000C0: 67 72 6F 75 6E 64 20 6D 6F 64 65 20 69 73 20 6F ground mode is o
0000D0: 70 61 71 75 65 20 20 74 68 65 6E 0D 0A 20 20 20 paque then..
0000E0: 20 20 20 20 74 68 65 20 70 69 78 65 6C 20 69 73 the pixel is
0000F0: 20 70 6C 6F 74 74 65 64 20 69 6E 20 74 68 65 20 plotted in the
000100: 67 72 61 70 68 69 63 73 20 70 61 70 65 72 20 69 graphics paper i
000110: 6E 6B 2E 20 49 66 20 74 68 65 20 62 61 63 6B 67 nk. If the backg
000120: 72 6F 75 6E 64 20 6D 6F 64 65 0D 0A 20 20 20 20 round mode..
000130: 20 20 20 69 73 20 74 72 61 6E 73 70 61 72 65 6E is transparen
000140: 74 20 74 68 65 6E 20 74 68 65 20 70 69 78 65 6C t then the pixel
000150: 20 69 73 20 6E 6F 74 20 70 6C 6F 74 74 65 64 2E is not plotted.
000160: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
000170: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
000180: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
0001B0: 31 36 2E 31 30 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 16.10...........
0001C0: 0A 0D 0A 20 20 20 20 20 20 20 49 6E 20 56 31 2E ... In V1.
0001D0: 31 20 66 69 72 6D 77 61 72 65 20 74 68 65 20 66 1 firmware the f
0001E0: 69 72 73 74 20 70 69 78 65 6C 20 6F 66 20 74 68 irst pixel of th
0001F0: 65 20 20 6C 69 6E 65 20 20 28 74 68 61 74 20 20 e line (that
Size : 512 (Real : 512)
000000: 61 74 20 20 74 68 65 20 20 63 75 72 72 65 6E 74 at the current
000010: 0D 0A 20 20 20 20 20 20 20 67 72 61 70 68 69 63 .. graphic
000020: 73 20 70 6F 73 69 74 69 6F 6E 29 20 69 73 20 6E s position) is n
000030: 6F 74 20 70 6C 6F 74 74 65 64 20 69 66 20 74 68 ot plotted if th
000040: 65 20 66 69 72 73 74 20 70 6F 69 6E 74 20 70 6C e first point pl
000050: 6F 74 74 69 6E 67 20 6D 6F 64 65 20 20 69 73 0D otting mode is.
000060: 0A 20 20 20 20 20 20 20 73 65 74 20 66 61 6C 73 . set fals
000070: 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 e....... T
000080: 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 his indirection
000090: 69 73 20 73 65 74 20 75 70 20 77 68 65 6E 20 47 is set up when G
0000A0: 52 41 20 49 4E 49 54 49 41 4C 49 53 45 20 6F 72 RA INITIALISE or
0000B0: 20 47 52 41 20 52 45 53 45 54 20 69 73 20 63 61 GRA RESET is ca
0000C0: 6C 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 lled.........
0000D0: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
0000E0: 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ies:......
0000F0: 20 47 52 41 20 4C 49 4E 45 20 41 42 53 4F 4C 55 GRA LINE ABSOLU
000100: 54 45 0D 0A 20 20 20 20 20 20 20 47 52 41 20 4C TE.. GRA L
000110: 49 4E 45 20 52 45 4C 41 54 49 56 45 0D 0A 20 20 INE RELATIVE..
000120: 20 20 20 20 20 47 52 41 20 53 45 54 20 42 41 43 GRA SET BAC
000130: 4B 0D 0A 20 20 20 20 20 20 20 47 52 41 20 53 45 K.. GRA SE
000140: 54 20 46 49 52 53 54 0D 0A 20 20 20 20 20 20 20 T FIRST..
000150: 47 52 41 20 53 45 54 20 4C 49 4E 45 20 4D 41 53 GRA SET LINE MAS
000160: 4B 0D 0A 20 20 20 20 20 20 20 53 43 52 20 48 4F K.. SCR HO
000170: 52 49 5A 4F 4E 54 41 4C 0D 0A 20 20 20 20 20 20 RIZONTAL..
000180: 20 53 43 52 20 56 45 52 54 49 43 41 4C 0D 0A 0D SCR VERTICAL...
000190: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001A0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ...............
0001E0: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
0001F0: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
Size : 512 (Real : 512)
000000: 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 RMWARE
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 70 61 67 65 20 31 36 2E 31 31 0D 0A 1A 0A page 16.11....
000030: 20 20 20 20 20 20 20 54 68 69 73 20 73 65 63 74 This sect
000040: 69 6F 6E 20 67 69 76 65 73 20 74 68 65 20 64 65 ion gives the de
000050: 74 61 69 6C 65 64 20 65 6E 74 72 79 20 61 6E 64 tailed entry and
000060: 20 65 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 exit conditions
000070: 20 61 6E 64 20 20 65 66 66 65 63 74 73 0D 0A 20 and effects..
000080: 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 his indirection
000090: 69 73 20 73 65 74 20 75 70 20 77 68 65 6E 20 47 is set up when G
0000A0: 52 41 20 49 4E 49 54 49 41 4C 49 53 45 20 6F 72 RA INITIALISE or
0000B0: 20 47 52 41 20 52 45 53 45 54 20 69 73 20 63 61 GRA RESET is ca
0000C0: 6C 6C 65 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 lled.........
0000D0: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
0000E0: 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ies:......
0000F0: 20 47 52 41 20 4C 49 4E 45 20 41 42 53 4F 4C 55 GRA LINE ABSOLU
000100: 54 45 0D 0A 20 20 20 20 20 20 20 47 52 41 20 4C TE.. GRA L
000110: 49 4E 45 20 52 45 4C 41 54 49 56 45 0D 0A 20 20 INE RELATIVE..
000120: 20 20 20 20 20 47 52 41 20 53 45 54 20 42 41 43 GRA SET BAC
000130: 4B 0D 0A 20 20 20 20 20 20 20 47 52 41 20 53 45 K.. GRA SE
000140: 54 20 46 49 52 53 54 0D 0A 20 20 20 20 20 20 20 T FIRST..
000150: 47 52 41 20 53 45 54 20 4C 49 4E 45 20 4D 41 53 GRA SET LINE MAS
000160: 4B 0D 0A 20 20 20 20 20 20 20 53 43 52 20 48 4F K.. SCR HO
000170: 52 49 5A 4F 4E 54 41 4C 0D 0A 20 20 20 20 20 20 RIZONTAL..
000180: 20 53 43 52 20 56 45 52 54 49 43 41 4C 0D 0A 0D SCR VERTICAL...
000190: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001A0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001B0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0001D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 ...............
0001E0: 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 AMSTRAD CP
0001F0: 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 C464/664/6128 FI
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000010: 20 20 20 49 4E 44 3A 20 53 43 52 20 52 45 41 44 IND: SCR READ
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000050: 20 20 20 20 23 42 44 45 35 0D 0A 0D 0A 0D 0A 20 #BDE5......
000060: 20 20 20 20 20 20 52 65 61 64 20 61 20 70 69 78 Read a pix
000070: 65 6C 20 66 72 6F 6D 20 74 68 65 20 73 63 72 65 el from the scre
000080: 65 6E 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 en.......
000090: 44 65 66 61 75 6C 74 20 61 63 74 69 6F 6E 3A 0D Default action:.
0000A0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 61 64 ..... Read
0000B0: 20 61 20 70 69 78 65 6C 20 66 72 6F 6D 20 74 68 a pixel from th
0000C0: 65 20 73 63 72 65 65 6E 20 61 6E 64 20 64 65 63 e screen and dec
0000D0: 6F 64 65 20 69 74 73 20 69 6E 6B 2E 0D 0A 0D 0A ode its ink.....
0000E0: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
0000F0: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
000100: 20 20 20 20 20 20 20 48 4C 20 63 6F 6E 74 61 69 HL contai
000110: 6E 73 20 74 68 65 20 73 63 72 65 65 6E 20 61 64 ns the screen ad
000120: 64 72 65 73 73 20 6F 66 20 74 68 65 20 70 69 78 dress of the pix
000130: 65 6C 2E 0D 0A 20 20 20 20 20 20 20 43 20 63 6F el... C co
000140: 6E 74 61 69 6E 73 20 74 68 65 20 6D 61 73 6B 20 ntains the mask
000150: 66 6F 72 20 74 68 65 20 70 69 78 65 6C 2E 0D 0A for the pixel...
000160: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
000170: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D conditions:.....
000180: 0A 20 20 20 20 20 20 20 41 20 63 6F 6E 74 61 69 . A contai
000190: 6E 73 20 74 68 65 20 64 65 63 6F 64 65 64 20 69 ns the decoded i
0001A0: 6E 6B 20 74 68 61 74 20 74 68 65 20 70 69 78 65 nk that the pixe
0001B0: 6C 20 77 61 73 20 73 65 74 20 74 6F 2E 0D 0A 0D l was set to....
0001C0: 0A 0D 0A 20 20 20 20 20 20 20 46 6C 61 67 73 20 ... Flags
0001D0: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
0001E0: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
0001F0: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D ters preserved..
Size : 512 (Real : 512)
000000: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 ..... Note
000010: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 s:...... T
000020: 68 65 20 6D 61 73 6B 20 73 75 70 70 6C 69 65 64 he mask supplied
000030: 20 6D 75 73 74 20 62 65 20 61 20 6D 61 73 6B 20 must be a mask
000040: 66 6F 72 20 20 61 20 20 73 69 6E 67 6C 65 20 20 for a single
000050: 70 69 78 65 6C 20 20 6F 74 68 65 72 77 69 73 65 pixel otherwise
000060: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 64 65 the.. de
000070: 63 6F 64 69 6E 67 20 6F 66 20 74 68 65 20 69 6E coding of the in
000080: 6B 20 72 65 61 64 20 66 72 6F 6D 20 74 68 65 20 k read from the
000090: 73 63 72 65 65 6E 20 77 69 6C 6C 20 6E 6F 74 20 screen will not
0000A0: 77 6F 72 6B 20 63 6F 72 72 65 63 74 6C 79 2E 0D work correctly..
0000B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ..... This
0000C0: 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 73 20 indirection is
0000D0: 73 65 74 20 75 70 20 77 68 65 6E 20 53 43 52 20 set up when SCR
0000E0: 49 4E 49 54 49 41 4C 49 53 45 20 6F 72 20 53 43 INITIALISE or SC
0000F0: 52 20 52 45 53 45 54 20 69 73 20 63 61 6C 6C 65 R RESET is calle
000100: 64 2E 0D 0A 20 20 20 20 20 20 20 49 74 20 69 73 d... It is
000110: 20 63 61 6C 6C 65 64 20 62 79 20 47 52 41 20 54 called by GRA T
000120: 45 53 54 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 EST.........
000130: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
000140: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
000150: 47 52 41 20 54 45 53 54 0D 0A 20 20 20 20 20 20 GRA TEST..
000160: 20 53 43 52 20 57 52 49 54 45 0D 0A 0D 0A 0D 0A SCR WRITE......
000170: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000180: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 ...... AMS
000190: 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F TRAD CPC464/664/
0001A0: 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 6128 FIRMWARE
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 20 20 20 20 20 20 20 70 61 67 65 20 31 36 page 16
0001D0: 2E 31 32 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D .12.............
0001E0: 0A 20 20 20 20 20 20 20 49 4E 44 3A 20 53 43 52 . IND: SCR
0001F0: 20 57 52 49 54 45 20 20 20 20 20 20 20 20 20 20 WRITE
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 20 20 20 20 23 42 44 45 38 0D 0A #BDE8..
000030: 0D 0A 20 20 20 20 20 20 20 57 72 69 74 65 20 70 .. Write p
000040: 69 78 65 6C 28 73 29 20 75 73 69 6E 67 20 74 68 ixel(s) using th
000050: 65 20 63 75 72 72 65 6E 74 20 67 72 61 70 68 69 e current graphi
000060: 63 73 20 77 72 69 74 65 20 6D 6F 64 65 2E 0D 0A cs write mode...
000070: 0D 0A 20 20 20 20 20 20 20 44 65 66 61 75 6C 74 .. Default
000080: 20 61 63 74 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 action:....
000090: 20 20 20 50 6C 6F 74 20 61 20 70 69 78 65 6C 20 Plot a pixel
0000A0: 6F 72 20 70 69 78 65 6C 73 20 6F 6E 20 74 68 65 or pixels on the
0000B0: 20 73 63 72 65 65 6E 20 75 73 69 6E 67 20 74 68 screen using th
0000C0: 65 20 63 75 72 72 65 6E 74 20 67 72 61 70 68 69 e current graphi
0000D0: 63 73 20 20 77 72 69 74 65 0D 0A 20 20 20 20 20 cs write..
0000E0: 20 20 6D 6F 64 65 2E 0D 0A 0D 0A 20 20 20 20 20 mode.....
0000F0: 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F Entry conditio
000100: 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 4C ns:.... HL
000110: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 73 63 contains the sc
000120: 72 65 65 6E 20 61 64 64 72 65 73 73 20 6F 66 20 reen address of
000130: 74 68 65 20 70 69 78 65 6C 28 73 29 2E 0D 0A 20 the pixel(s)...
000140: 20 20 20 20 20 20 43 20 63 6F 6E 74 61 69 6E 73 C contains
000150: 20 74 68 65 20 6D 61 73 6B 20 66 6F 72 20 74 68 the mask for th
000160: 65 20 70 69 78 65 6C 28 73 29 2E 0D 0A 20 20 20 e pixel(s)...
000170: 20 20 20 20 42 20 63 6F 6E 74 61 69 6E 73 20 74 B contains t
000180: 68 65 20 65 6E 63 6F 64 65 64 20 69 6E 6B 20 74 he encoded ink t
000190: 6F 20 70 6C 6F 74 20 77 69 74 68 2E 0D 0A 0D 0A o plot with.....
0001A0: 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E 64 Exit cond
0001B0: 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 20 20 20 20 itions:....
0001C0: 20 20 41 46 20 63 6F 72 72 75 70 74 2E 0D 0A 0D AF corrupt....
0001D0: 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 . All othe
0001E0: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
0001F0: 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 erved.....
Size : 512 (Real : 512)
000000: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 Notes:....
000010: 20 20 54 68 65 20 70 69 78 65 6C 20 6D 61 73 6B The pixel mask
000020: 20 73 75 70 70 6C 69 65 64 20 63 61 6E 20 62 65 supplied can be
000030: 20 66 6F 72 20 61 20 73 69 6E 67 6C 65 20 70 69 for a single pi
000040: 78 65 6C 20 20 6F 72 20 20 6D 6F 72 65 20 20 74 xel or more t
000050: 68 61 6E 20 20 6F 6E 65 0D 0A 20 20 20 20 20 20 han one..
000060: 20 70 69 78 65 6C 20 28 6F 72 20 65 76 65 6E 20 pixel (or even
000070: 6E 6F 20 70 69 78 65 6C 73 29 2E 20 54 68 65 20 no pixels). The
000080: 69 6E 6B 20 73 75 70 70 6C 69 65 64 20 73 68 6F ink supplied sho
000090: 75 6C 64 20 62 65 20 65 6E 63 6F 64 65 64 20 74 uld be encoded t
0000A0: 6F 20 63 6F 76 65 72 0D 0A 20 20 20 20 20 20 20 o cover..
0000B0: 74 68 65 20 77 68 6F 6C 65 20 6F 66 20 61 20 62 the whole of a b
0000C0: 79 74 65 20 28 73 65 65 20 53 43 52 20 49 4E 4B yte (see SCR INK
0000D0: 20 45 4E 43 4F 44 45 29 2E 0D 0A 0D 0A 20 20 20 ENCODE).....
0000E0: 20 20 20 20 54 68 65 20 70 69 78 65 6C 20 69 73 The pixel is
0000F0: 20 70 6C 6F 74 74 65 64 20 75 73 69 6E 67 20 74 plotted using t
000100: 68 65 20 63 75 72 72 65 6E 74 20 47 72 61 70 68 he current Graph
000110: 69 63 73 20 56 44 55 20 77 72 69 74 65 20 6D 6F ics VDU write mo
000120: 64 65 2E 20 20 54 68 65 73 65 0D 0A 20 20 20 20 de. These..
000130: 20 20 20 6D 6F 64 65 73 20 61 72 65 3A 0D 0A 0D modes are:...
000140: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000150: 20 46 4F 52 43 45 20 20 20 20 20 50 69 78 65 6C FORCE Pixel
000160: 20 69 73 20 73 65 74 20 74 6F 20 74 68 65 20 6E is set to the n
000170: 65 77 20 69 6E 6B 20 69 72 72 65 73 70 65 63 74 ew ink irrespect
000180: 69 76 65 20 6F 66 20 74 68 65 20 6F 6C 64 0D 0A ive of the old..
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 20 20 20 69 6E 6B 2E 0D 0A ink...
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 58 4F 52 20 20 20 20 20 20 20 50 69 78 65 6C 20 XOR Pixel
0001D0: 69 73 20 73 65 74 20 74 6F 20 74 68 65 20 69 6E is set to the in
0001E0: 6B 20 66 6F 72 6D 65 64 20 20 62 79 20 20 65 78 k formed by ex
0001F0: 63 6C 75 73 69 76 65 2D 6F 72 69 6E 67 0D 0A 20 clusive-oring..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 20 20 20 20 74 68 65 20 6E 65 77 the new
000020: 20 69 6E 6B 20 66 6F 72 20 74 68 65 20 70 69 78 ink for the pix
000030: 65 6C 20 61 6E 64 20 69 74 73 20 63 75 72 72 65 el and its curre
000040: 6E 74 20 73 65 74 74 69 6E 67 2E 0D 0A 20 20 20 nt setting...
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 41 4E 44 AND
000060: 20 20 20 20 20 20 20 50 69 78 65 6C 20 69 73 20 Pixel is
000070: 73 65 74 20 74 6F 20 74 68 65 20 69 6E 6B 20 66 set to the ink f
000080: 6F 72 6D 65 64 20 62 79 20 20 61 6E 64 69 6E 67 ormed by anding
000090: 20 20 74 68 65 20 20 6E 65 77 0D 0A 20 20 20 20 the new..
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 69 6E 6B 20 66 6F 72 20 74 68 ink for th
0000C0: 65 20 70 69 78 65 6C 20 61 6E 64 20 69 74 73 20 e pixel and its
0000D0: 63 75 72 72 65 6E 74 20 73 65 74 74 69 6E 67 2E current setting.
0000E0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
0000F0: 20 20 4F 52 20 20 20 20 20 20 20 20 50 69 78 65 OR Pixe
000100: 6C 20 69 73 20 73 65 74 20 74 6F 20 74 68 65 20 l is set to the
000110: 69 6E 6B 20 66 6F 72 6D 65 64 20 62 79 20 6F 72 ink formed by or
000120: 69 6E 67 20 74 68 65 20 6E 65 77 20 69 6E 6B 0D ing the new ink.
000130: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000140: 20 20 20 20 20 20 20 20 20 20 20 66 6F 72 20 74 for t
000150: 68 65 20 70 69 78 65 6C 20 61 6E 64 20 69 74 73 he pixel and its
000160: 20 63 75 72 72 65 6E 74 20 73 65 74 74 69 6E 67 current setting
000170: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 ..... The
000180: 77 72 69 74 65 20 6D 6F 64 65 20 63 61 6E 20 62 write mode can b
000190: 65 20 73 65 74 20 62 79 20 63 61 6C 6C 69 6E 67 e set by calling
0001A0: 20 53 43 52 20 41 43 43 45 53 53 20 61 70 70 72 SCR ACCESS appr
0001B0: 6F 70 72 69 61 74 65 6C 79 2E 0D 0A 0D 0A 20 20 opriately.....
0001C0: 20 20 20 20 20 54 68 69 73 20 69 6E 64 69 72 65 This indire
0001D0: 63 74 69 6F 6E 20 69 73 20 63 61 6C 6C 65 64 20 ction is called
0001E0: 62 79 20 61 6C 6C 20 20 47 72 61 70 68 69 63 73 by all Graphics
0001F0: 20 20 56 44 55 20 20 77 72 69 74 65 20 20 72 6F VDU write ro
Size : 512 (Real : 512)
000000: 75 74 69 6E 65 73 2C 20 20 69 6E 0D 0A 20 20 20 utines, in..
000010: 20 20 20 20 70 61 72 74 69 63 75 6C 61 72 20 47 particular G
000020: 52 41 20 50 4C 4F 54 20 52 45 4C 41 54 49 56 45 RA PLOT RELATIVE
000030: 2C 20 47 52 41 20 50 4C 4F 54 20 41 42 53 4F 4C , GRA PLOT ABSOL
000040: 55 54 45 2C 20 20 47 52 41 20 20 4C 49 4E 45 20 UTE, GRA LINE
000050: 20 52 45 4C 41 54 49 56 45 2C 0D 0A 20 20 20 20 RELATIVE,..
000060: 20 20 20 47 52 41 20 4C 49 4E 45 20 41 42 53 4F GRA LINE ABSO
000070: 4C 55 54 45 20 61 6E 64 20 47 52 41 20 57 52 20 LUTE and GRA WR
000080: 43 48 41 52 2C 20 74 6F 20 70 6C 6F 74 20 70 69 CHAR, to plot pi
000090: 78 65 6C 73 20 6F 6E 20 74 68 65 20 73 63 72 65 xels on the scre
0000A0: 65 6E 2E 20 49 74 20 69 73 0D 0A 20 20 20 20 20 en. It is..
0000B0: 20 20 70 72 6F 76 69 64 65 64 20 74 6F 20 61 6C provided to al
0000C0: 6C 6F 77 20 74 68 65 20 75 73 65 72 20 74 6F 20 low the user to
0000D0: 69 6E 74 65 72 63 65 70 74 20 20 74 68 65 20 20 intercept the
0000E0: 6C 6F 77 65 73 74 20 20 6C 65 76 65 6C 20 20 6F lowest level o
0000F0: 66 20 20 70 6F 69 6E 74 0D 0A 20 20 20 20 20 20 f point..
000100: 20 70 6C 6F 74 74 69 6E 67 20 28 70 65 72 68 61 plotting (perha
000110: 70 73 20 74 6F 20 61 64 64 20 79 65 74 20 61 6E ps to add yet an
000120: 6F 74 68 65 72 20 70 6C 6F 74 74 69 6E 67 20 6D other plotting m
000130: 6F 64 65 29 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 ode).....
000140: 54 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E This indirection
000150: 20 69 73 20 73 65 74 20 75 70 20 77 68 65 6E 20 is set up when
000160: 53 43 52 20 49 4E 49 54 49 41 4C 49 53 45 20 6F SCR INITIALISE o
000170: 72 20 53 43 52 20 52 45 53 45 54 20 69 73 20 63 r SCR RESET is c
000180: 61 6C 6C 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 alled.....
000190: 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 Related entries
0001A0: 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 47 52 41 20 :.... GRA
0001B0: 50 4C 4F 54 0D 0A 20 20 20 20 20 20 20 53 43 52 PLOT.. SCR
0001C0: 20 41 43 43 45 53 53 0D 0A 20 20 20 20 20 20 20 ACCESS..
0001D0: 53 43 52 20 50 49 58 45 4C 53 0D 0A 20 20 20 20 SCR PIXELS..
0001E0: 20 20 20 53 43 52 20 52 45 41 44 0D 0A 0D 0A 0D SCR READ.....
0001F0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 ..... AMST
Size : 512 (Real : 512)
000000: 52 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 RAD CPC464/664/6
000010: 31 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 128 FIRMWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 20 20 20 20 20 20 20 70 61 67 65 20 31 36 2E page 16.
000040: 31 33 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 13..............
000050: 20 20 20 20 20 20 20 49 4E 44 3A 20 53 43 52 20 IND: SCR
000060: 4D 4F 44 45 20 43 4C 45 41 52 20 20 20 20 20 20 MODE CLEAR
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 20 20 20 23 42 44 45 42 0D 0A 0D #BDEB...
0000A0: 0A 0D 0A 20 20 20 20 20 20 20 43 6C 65 61 72 20 ... Clear
0000B0: 74 68 65 20 73 63 72 65 65 6E 20 74 6F 20 69 6E the screen to in
0000C0: 6B 20 30 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 k 0.......
0000D0: 20 44 65 66 61 75 6C 74 20 61 63 74 69 6F 6E 3A Default action:
0000E0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 6C 65 ...... Cle
0000F0: 61 72 20 74 68 65 20 73 63 72 65 65 6E 20 6D 65 ar the screen me
000100: 6D 6F 72 79 20 74 6F 20 7A 65 72 6F 73 2E 20 20 mory to zeros.
000110: 54 68 69 73 20 20 69 6E 64 69 72 65 63 74 69 6F This indirectio
000120: 6E 20 20 69 73 20 20 70 72 6F 76 69 64 65 64 20 n is provided
000130: 20 74 6F 0D 0A 20 20 20 20 20 20 20 61 6C 6C 6F to.. allo
000140: 77 20 74 68 65 20 75 73 65 72 20 74 6F 20 70 72 w the user to pr
000150: 65 76 65 6E 74 20 74 68 65 20 73 63 72 65 65 6E event the screen
000160: 20 62 65 69 6E 67 20 63 6C 65 61 72 65 64 20 61 being cleared a
000170: 66 74 65 72 20 74 68 65 20 20 6D 6F 64 65 20 20 fter the mode
000180: 69 73 0D 0A 20 20 20 20 20 20 20 63 68 61 6E 67 is.. chang
000190: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
0001A0: 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 Entry conditions
0001B0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F :...... No
0001C0: 20 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A conditions.....
0001D0: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
0001E0: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
0001F0: 20 20 20 20 20 20 41 46 2C 20 42 43 2C 20 44 45 AF, BC, DE
Size : 512 (Real : 512)
000000: 20 61 6E 64 20 48 4C 20 63 6F 72 72 75 70 74 2E and HL corrupt.
000010: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 .. All oth
000020: 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 er registers pre
000030: 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 served.......
000040: 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A Notes:......
000050: 20 20 20 20 20 20 20 4E 6F 72 6D 61 6C 6C 79 20 Normally
000060: 74 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E this indirection
000070: 20 70 65 72 66 6F 72 6D 73 20 74 68 65 20 61 63 performs the ac
000080: 74 69 6F 6E 73 20 64 65 73 63 72 69 62 65 64 20 tions described
000090: 69 6E 20 53 43 52 20 43 4C 45 41 52 2E 0D 0A 0D in SCR CLEAR....
0000A0: 0A 0D 0A 20 20 20 20 20 20 20 49 6E 20 56 31 2E ... In V1.
0000B0: 30 20 66 69 72 6D 77 61 72 65 20 69 74 20 69 73 0 firmware it is
0000C0: 20 6E 65 63 65 73 73 61 72 79 20 66 6F 72 20 74 necessary for t
0000D0: 68 65 20 75 73 65 72 20 74 6F 20 73 65 74 20 75 he user to set u
0000E0: 70 20 20 74 68 65 20 20 69 6E 6B 73 20 20 69 66 p the inks if
0000F0: 0D 0A 20 20 20 20 20 20 20 74 68 69 73 20 69 6E .. this in
000100: 64 69 72 65 63 74 69 6F 6E 20 69 73 20 69 6E 74 direction is int
000110: 65 72 63 65 70 74 65 64 20 28 73 65 65 20 41 70 ercepted (see Ap
000120: 70 65 6E 64 69 78 20 58 49 49 49 29 2E 20 49 6E pendix XIII). In
000130: 20 56 31 2E 31 20 20 66 69 72 6D 77 61 72 65 0D V1.1 firmware.
000140: 0A 20 20 20 20 20 20 20 74 68 65 20 73 63 72 65 . the scre
000150: 65 6E 20 70 61 63 6B 20 73 65 74 73 20 75 70 20 en pack sets up
000160: 74 68 65 20 69 6E 6B 73 20 66 6F 72 20 74 68 65 the inks for the
000170: 20 75 73 65 72 20 61 66 74 65 72 20 53 43 52 20 user after SCR
000180: 4D 4F 44 45 20 43 4C 45 41 52 20 68 61 73 0D 0A MODE CLEAR has..
000190: 20 20 20 20 20 20 20 62 65 65 6E 20 63 61 6C 6C been call
0001A0: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
0001B0: 54 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E This indirection
0001C0: 20 69 73 20 73 65 74 20 75 70 20 77 68 65 6E 20 is set up when
0001D0: 53 43 52 20 49 4E 49 54 49 41 4C 49 53 45 20 6F SCR INITIALISE o
0001E0: 72 20 53 43 52 20 52 45 53 45 54 20 69 73 20 63 r SCR RESET is c
0001F0: 61 6C 6C 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 alled.....
Size : 512 (Real : 512)
000000: 20 4E 2E 42 2E 20 57 68 65 6E 20 74 68 69 73 20 N.B. When this
000010: 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 73 20 63 indirection is c
000020: 61 6C 6C 65 64 20 74 68 65 20 74 65 78 74 20 61 alled the text a
000030: 6E 64 20 67 72 61 70 68 69 63 73 20 56 44 55 73 nd graphics VDUs
000040: 20 61 72 65 20 69 6E 0D 0A 20 20 20 20 20 20 20 are in..
000050: 6E 6F 6E 2D 73 74 61 6E 64 61 72 64 20 73 74 61 non-standard sta
000060: 74 65 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 52 tes..... R
000070: 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D elated entries:.
000080: 0A 0D 0A 20 20 20 20 20 20 20 53 43 52 20 43 4C ... SCR CL
000090: 45 41 52 0D 0A 20 20 20 20 20 20 20 53 43 52 20 EAR.. SCR
0000A0: 53 45 54 20 4D 4F 44 45 0D 0A 0D 0A 0D 0A 0D 0A SET MODE........
0000B0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000C0: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
0000D0: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
0000E0: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 20 20 70 61 67 65 20 31 36 2E 31 34 0D 0A 0D page 16.14...
000110: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000120: 20 20 49 4E 44 3A 20 4B 4D 20 54 45 53 54 20 42 IND: KM TEST B
000130: 52 45 41 4B 20 20 20 20 20 20 20 20 20 20 20 20 REAK
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 23 42 44 45 45 0D 0A 0D 0A 0D 0A 20 20 #BDEE......
000170: 20 20 20 20 20 54 65 73 74 20 66 6F 72 20 62 72 Test for br
000180: 65 61 6B 20 28 6F 72 20 72 65 73 65 74 29 2E 0D eak (or reset)..
000190: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 65 66 61 ..... Defa
0001A0: 75 6C 74 20 61 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D ult action:.....
0001B0: 0A 20 20 20 20 20 20 20 54 65 73 74 20 69 66 20 . Test if
0001C0: 74 68 65 20 65 73 63 61 70 65 20 6B 65 79 20 69 the escape key i
0001D0: 73 20 70 72 65 73 73 65 64 2C 20 69 66 20 6E 6F s pressed, if no
0001E0: 74 20 74 68 65 6E 20 6E 6F 20 61 63 74 69 6F 6E t then no action
0001F0: 20 69 73 20 74 61 6B 65 6E 2E 20 20 49 66 0D 0A is taken. If..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 65 73 63 61 70 65 2C 20 73 escape, s
000010: 68 69 66 74 20 61 6E 64 20 63 6F 6E 74 72 6F 6C hift and control
000020: 20 61 72 65 20 61 6C 6C 20 70 72 65 73 73 65 64 are all pressed
000030: 20 61 6E 64 20 6E 6F 20 6F 74 68 65 72 20 6B 65 and no other ke
000040: 79 73 20 20 74 68 65 6E 20 20 74 68 65 0D 0A 20 ys then the..
000050: 20 20 20 20 20 20 73 79 73 74 65 6D 20 69 73 20 system is
000060: 72 65 73 65 74 2E 20 4F 74 68 65 72 77 69 73 65 reset. Otherwise
000070: 2C 20 61 20 62 72 65 61 6B 20 65 76 65 6E 74 20 , a break event
000080: 69 73 20 72 65 70 6F 72 74 65 64 20 20 28 73 65 is reported (se
000090: 65 20 20 4B 4D 20 20 42 52 45 41 4B 0D 0A 20 20 e KM BREAK..
0000A0: 20 20 20 20 20 45 56 45 4E 54 29 2E 0D 0A 0D 0A EVENT).....
0000B0: 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 .. Entry c
0000C0: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
0000D0: 20 20 20 20 20 20 20 49 6E 74 65 72 72 75 70 74 Interrupt
0000E0: 73 20 64 69 73 61 62 6C 65 64 2E 0D 0A 20 20 20 s disabled...
0000F0: 20 20 20 20 43 20 63 6F 6E 74 61 69 6E 73 20 73 C contains s
000100: 68 69 66 74 20 61 6E 64 20 63 6F 6E 74 72 6F 6C hift and control
000110: 20 6B 65 79 20 73 74 61 74 65 73 2E 0D 0A 0D 0A key states.....
000120: 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F .. Exit co
000130: 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 nditions:......
000140: 20 20 20 20 20 20 41 46 20 61 6E 64 20 48 4C 20 AF and HL
000150: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
000160: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
000170: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D ters preserved..
000180: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 ..... Note
000190: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 s:...... T
0001A0: 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 his indirection
0001B0: 69 73 20 63 61 6C 6C 65 64 20 62 79 20 74 68 65 is called by the
0001C0: 20 66 69 72 6D 77 61 72 65 20 66 72 6F 6D 20 20 firmware from
0001D0: 74 68 65 20 20 69 6E 74 65 72 72 75 70 74 20 20 the interrupt
0001E0: 70 61 74 68 2E 0D 0A 20 20 20 20 20 20 20 54 68 path... Th
0001F0: 75 73 20 69 6E 74 65 72 72 75 70 74 73 20 61 72 us interrupts ar
Size : 512 (Real : 512)
000000: 65 20 64 69 73 61 62 6C 65 64 20 61 6E 64 20 74 e disabled and t
000010: 68 65 79 20 6D 75 73 74 20 72 65 6D 61 69 6E 20 hey must remain
000020: 64 69 73 61 62 6C 65 64 2E 0D 0A 0D 0A 0D 0A 20 disabled.......
000030: 20 20 20 20 20 20 49 66 20 62 69 74 20 37 20 6F If bit 7 o
000040: 66 20 43 20 69 73 20 73 65 74 20 74 68 65 6E 20 f C is set then
000050: 74 68 65 20 63 6F 6E 74 72 6F 6C 20 6B 65 79 20 the control key
000060: 69 73 20 70 72 65 73 73 65 64 2E 20 49 66 20 62 is pressed. If b
000070: 69 74 20 35 20 6F 66 20 43 20 69 73 0D 0A 20 20 it 5 of C is..
000080: 20 20 20 20 20 73 65 74 20 74 68 65 6E 20 6F 6E set then on
000090: 65 20 6F 66 20 74 68 65 20 73 68 69 66 74 20 6B e of the shift k
0000A0: 65 79 73 20 69 73 20 70 72 65 73 73 65 64 2E 0D eys is pressed..
0000B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ..... This
0000C0: 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 73 20 indirection is
0000D0: 63 61 6C 6C 65 64 20 61 66 74 65 72 20 74 68 65 called after the
0000E0: 20 6B 65 79 73 20 68 61 76 65 20 62 65 65 6E 20 keys have been
0000F0: 20 73 63 61 6E 6E 65 64 20 20 61 6E 64 20 20 74 scanned and t
000100: 68 65 0D 0A 20 20 20 20 20 20 20 65 73 63 61 70 he.. escap
000110: 65 20 6B 65 79 20 77 61 73 20 66 6F 75 6E 64 20 e key was found
000120: 74 6F 20 68 61 76 65 20 62 65 65 6E 20 70 72 65 to have been pre
000130: 73 73 65 64 2E 20 49 74 20 69 73 20 70 72 6F 76 ssed. It is prov
000140: 69 64 65 64 20 74 6F 20 61 6C 6C 6F 77 20 74 68 ided to allow th
000150: 65 0D 0A 20 20 20 20 20 20 20 75 73 65 72 20 74 e.. user t
000160: 6F 20 61 6C 74 65 72 20 74 68 65 20 61 63 74 69 o alter the acti
000170: 6F 6E 20 6F 66 20 61 20 62 72 65 61 6B 20 28 70 on of a break (p
000180: 61 72 74 69 63 75 6C 61 72 6C 79 20 70 72 65 76 articularly prev
000190: 65 6E 74 20 20 74 68 65 20 20 73 79 73 74 65 6D ent the system
0001A0: 0D 0A 20 20 20 20 20 20 20 72 65 73 65 74 2C 20 .. reset,
0001B0: 73 65 65 20 52 45 53 45 54 20 45 4E 54 52 59 29 see RESET ENTRY)
0001C0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
0001D0: 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 is indirection i
0001E0: 73 20 73 65 74 20 75 70 20 77 68 65 6E 20 4B 4D s set up when KM
0001F0: 20 49 4E 49 54 49 41 4C 49 53 45 20 6F 72 20 4B INITIALISE or K
Size : 512 (Real : 512)
000000: 4D 20 52 45 53 45 54 20 69 73 20 63 61 6C 6C 65 M RESET is calle
000010: 64 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 d.........
000020: 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 Related entries
000030: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4D :...... KM
000040: 20 42 52 45 41 4B 20 45 56 45 4E 54 0D 0A 0D 0A BREAK EVENT....
000050: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
000060: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
000070: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
0000A0: 31 36 2E 31 35 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 16.15...........
0000B0: 0A 0D 0A 20 20 20 20 20 20 20 49 4E 44 3A 20 4D ... IND: M
0000C0: 43 20 57 41 49 54 20 50 52 49 4E 54 45 52 20 20 C WAIT PRINTER
0000D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000E0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000F0: 20 20 20 20 20 20 20 20 20 20 20 23 42 44 46 31 #BDF1
000100: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 50 72 69 ...... Pri
000110: 6E 74 20 61 20 63 68 61 72 61 63 74 65 72 20 6F nt a character o
000120: 72 20 74 69 6D 65 20 6F 75 74 2E 0D 0A 0D 0A 0D r time out......
000130: 0A 20 20 20 20 20 20 20 44 65 66 61 75 6C 74 20 . Default
000140: 61 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 action:......
000150: 20 20 20 20 57 61 69 74 20 66 6F 72 20 74 68 65 Wait for the
000160: 20 43 65 6E 74 72 6F 6E 69 63 73 20 70 6F 72 74 Centronics port
000170: 20 74 6F 20 20 62 65 63 6F 6D 65 20 20 6E 6F 74 to become not
000180: 20 20 62 75 73 79 20 20 61 6E 64 20 20 74 68 65 busy and the
000190: 6E 20 20 73 65 6E 64 20 20 61 0D 0A 20 20 20 20 n send a..
0001A0: 20 20 20 63 68 61 72 61 63 74 65 72 20 74 6F 20 character to
0001B0: 69 74 2E 20 49 66 20 74 68 65 20 70 6F 72 74 20 it. If the port
0001C0: 72 65 6D 61 69 6E 73 20 62 75 73 79 20 66 6F 72 remains busy for
0001D0: 20 61 20 6C 6F 6E 67 20 74 69 6D 65 20 74 68 65 a long time the
0001E0: 20 20 72 6F 75 74 69 6E 65 0D 0A 20 20 20 20 20 routine..
0001F0: 20 20 74 69 6D 65 73 20 6F 75 74 20 61 6E 64 20 times out and
Size : 512 (Real : 512)
000000: 74 68 65 20 63 68 61 72 61 63 74 65 72 20 69 73 the character is
000010: 20 6E 6F 74 20 73 65 6E 74 2E 0D 0A 0D 0A 0D 0A not sent.......
000020: 20 20 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E Entry con
000030: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 ditions:......
000040: 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 A contains
000050: 74 68 65 20 63 68 61 72 61 63 74 65 72 20 74 6F the character to
000060: 20 73 65 6E 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 send.......
000070: 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F Exit conditio
000080: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
000090: 49 66 20 74 68 65 20 63 68 61 72 61 63 74 65 72 If the character
0000A0: 20 77 61 73 20 73 65 6E 74 20 4F 4B 3A 0D 0A 0D was sent OK:...
0000B0: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
0000C0: 20 20 20 43 61 72 72 79 20 74 72 75 65 2E 0D 0A Carry true...
0000D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 .... If th
0000E0: 65 20 43 65 6E 74 72 6F 6E 69 63 73 20 70 6F 72 e Centronics por
0000F0: 74 20 74 69 6D 65 64 20 6F 75 74 3A 0D 0A 0D 0A t timed out:....
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 43 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 0D 0A Carry false.....
000120: 20 20 20 20 20 20 20 41 6C 77 61 79 73 3A 0D 0A Always:..
000130: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
000140: 20 20 41 20 61 6E 64 20 42 43 20 63 6F 72 72 75 A and BC corru
000150: 70 74 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 pt...
000160: 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 72 All other r
000170: 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 76 egisters preserv
000180: 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F ed..... No
000190: 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 tes:.... T
0001A0: 68 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 his indirection
0001B0: 69 73 20 70 72 6F 76 69 64 65 64 20 74 6F 20 61 is provided to a
0001C0: 6C 6C 6F 77 20 74 68 65 20 75 73 65 72 20 74 6F llow the user to
0001D0: 20 64 72 69 76 65 20 74 68 65 20 70 72 69 6E 74 drive the print
0001E0: 65 72 20 69 6E 0D 0A 20 20 20 20 20 20 20 61 20 er in.. a
0001F0: 64 69 66 66 65 72 65 6E 74 20 77 61 79 2E 20 46 different way. F
Size : 512 (Real : 512)
000000: 6F 72 20 65 78 61 6D 70 6C 65 2C 20 27 65 73 63 or example, 'esc
000010: 61 70 65 20 73 65 71 75 65 6E 63 65 27 20 63 6F ape sequence' co
000020: 75 6C 64 20 20 62 65 20 20 68 61 6E 64 6C 65 64 uld be handled
000030: 20 20 6F 72 0D 0A 20 20 20 20 20 20 20 74 68 65 or.. the
000040: 20 74 69 6D 65 20 6F 75 74 20 63 6F 75 6C 64 20 time out could
000050: 62 65 20 63 68 61 6E 67 65 64 2E 0D 0A 0D 0A 20 be changed.....
000060: 20 20 20 20 20 20 54 68 69 73 20 69 6E 64 69 72 This indir
000070: 65 63 74 69 6F 6E 20 69 73 20 63 61 6C 6C 65 64 ection is called
000080: 20 62 79 20 74 68 65 20 72 6F 75 74 69 6E 65 20 by the routine
000090: 20 4D 43 20 20 50 52 49 4E 54 20 20 43 48 41 52 MC PRINT CHAR
0000A0: 2E 20 20 49 74 20 20 74 65 73 74 73 0D 0A 20 20 . It tests..
0000B0: 20 20 20 20 20 77 68 65 74 68 65 72 20 74 68 65 whether the
0000C0: 20 70 72 69 6E 74 65 72 20 69 73 20 62 75 73 79 printer is busy
0000D0: 20 69 6E 20 74 68 65 20 73 61 6D 65 20 77 61 79 in the same way
0000E0: 20 61 73 20 20 4D 43 20 20 42 55 53 59 20 20 50 as MC BUSY P
0000F0: 52 49 4E 54 45 52 20 20 61 6E 64 0D 0A 20 20 20 RINTER and..
000100: 20 20 20 20 73 65 6E 64 73 20 74 68 65 20 63 68 sends the ch
000110: 61 72 61 63 74 65 72 20 69 6E 20 74 68 65 20 73 aracter in the s
000120: 61 6D 65 20 77 61 79 20 61 73 20 4D 43 20 53 45 ame way as MC SE
000130: 4E 44 20 50 52 49 4E 54 45 52 2E 0D 0A 0D 0A 20 ND PRINTER.....
000140: 20 20 20 20 20 20 54 68 69 73 20 69 6E 64 69 72 This indir
000150: 65 63 74 69 6F 6E 20 69 73 20 73 65 74 20 75 70 ection is set up
000160: 20 77 68 65 6E 20 4D 43 20 52 45 53 45 54 20 50 when MC RESET P
000170: 52 49 4E 54 45 52 20 69 73 20 63 61 6C 6C 65 64 RINTER is called
000180: 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 ..... Rela
000190: 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A ted entries:....
0001A0: 20 20 20 20 20 20 20 4D 43 20 42 55 53 59 20 50 MC BUSY P
0001B0: 52 49 4E 54 45 52 0D 0A 20 20 20 20 20 20 20 4D RINTER.. M
0001C0: 43 20 50 52 49 4E 54 20 43 48 41 52 0D 0A 20 20 C PRINT CHAR..
0001D0: 20 20 20 20 20 4D 43 20 53 45 4E 44 20 50 52 49 MC SEND PRI
0001E0: 4E 54 45 52 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 NTER..........
0001F0: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
Size : 512 (Real : 512)
000000: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000010: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000030: 20 70 61 67 65 20 31 36 2E 31 36 0D 0A 0D 0A 0D page 16.16.....
000040: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000050: 49 4E 44 3A 20 4B 4D 20 53 43 41 4E 20 4B 45 59 IND: KM SCAN KEY
000060: 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 S
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000090: 20 23 42 44 46 34 0D 0A 0D 0A 0D 0A 20 20 20 20 #BDF4......
0000A0: 20 20 20 53 63 61 6E 20 74 68 65 20 6B 65 79 62 Scan the keyb
0000B0: 6F 61 72 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 oard.......
0000C0: 20 20 44 65 66 61 75 6C 74 20 61 63 74 69 6F 6E Default action
0000D0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 53 63 :...... Sc
0000E0: 61 6E 73 20 74 68 65 20 6B 65 79 62 6F 61 72 64 ans the keyboard
0000F0: 20 61 6E 64 20 75 70 64 61 74 65 73 20 74 68 65 and updates the
000100: 20 6B 65 79 20 73 74 61 74 65 20 6D 61 70 2E 20 key state map.
000110: 4E 65 77 6C 79 20 20 70 72 65 73 73 65 64 20 20 Newly pressed
000120: 6B 65 79 73 0D 0A 20 20 20 20 20 20 20 61 72 65 keys.. are
000130: 20 64 65 74 65 63 74 65 64 20 61 6E 64 20 61 70 detected and ap
000140: 70 72 6F 70 72 69 61 74 65 20 6D 61 72 6B 65 72 propriate marker
000150: 73 20 61 72 65 20 69 6E 73 65 72 74 65 64 20 69 s are inserted i
000160: 6E 74 6F 20 74 68 65 20 6B 65 79 20 62 75 66 66 nto the key buff
000170: 65 72 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 er.......
000180: 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 Entry conditions
000190: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F :...... No
0001A0: 20 63 6F 6E 64 69 74 69 6F 6E 73 20 65 78 63 65 conditions exce
0001B0: 70 74 20 74 68 61 74 20 69 6E 74 65 72 72 75 70 pt that interrup
0001C0: 74 73 20 6D 75 73 74 20 62 65 20 64 69 73 61 62 ts must be disab
0001D0: 6C 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 led.......
0001E0: 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 Exit conditions
0001F0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 46 :...... AF
Size : 512 (Real : 512)
000000: 2C 20 42 43 2C 20 44 45 20 61 6E 64 20 48 4C 20 , BC, DE and HL
000010: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
000020: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
000030: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 20 61 ters preserved a
000040: 6E 64 20 69 6E 74 65 72 72 75 70 74 73 20 72 65 nd interrupts re
000050: 6D 61 69 6E 20 64 69 73 61 62 6C 65 64 2E 0D 0A main disabled...
000060: 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 .... Notes
000070: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 :...... Th
000080: 69 73 20 69 6E 64 69 72 65 63 74 69 6F 6E 20 69 is indirection i
000090: 73 20 63 61 6C 6C 65 64 20 65 76 65 72 79 20 66 s called every f
0000A0: 69 66 74 69 65 74 68 20 6F 66 20 61 20 73 65 63 iftieth of a sec
0000B0: 6F 6E 64 20 64 75 72 69 6E 67 20 61 20 20 74 69 ond during a ti
0000C0: 63 6B 65 72 0D 0A 20 20 20 20 20 20 20 69 6E 74 cker.. int
0000D0: 65 72 72 75 70 74 2E 20 54 68 65 20 72 65 70 65 errupt. The repe
0000E0: 61 74 20 73 70 65 65 64 73 20 61 6E 64 20 20 73 at speeds and s
0000F0: 74 61 72 74 2D 75 70 20 20 64 65 6C 61 79 73 20 tart-up delays
000100: 20 6F 66 20 20 74 68 65 20 20 6B 65 79 73 20 20 of the keys
000110: 61 72 65 0D 0A 20 20 20 20 20 20 20 6D 65 61 73 are.. meas
000120: 75 72 65 64 20 69 6E 20 73 63 61 6E 73 20 6F 66 ured in scans of
000130: 20 74 68 65 20 6B 65 79 62 6F 61 72 64 20 61 6E the keyboard an
000140: 64 20 68 65 6E 63 65 20 66 69 66 74 69 65 74 68 d hence fiftieth
000150: 20 6F 66 20 61 20 73 65 63 6F 6E 64 2E 0D 0A 0D of a second....
000160: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 ... If the
000170: 20 65 73 63 61 70 65 20 6B 65 79 20 69 73 20 70 escape key is p
000180: 72 65 73 73 65 64 20 74 68 65 6E 20 74 68 65 20 ressed then the
000190: 69 6E 64 69 72 65 63 74 69 6F 6E 20 20 4B 4D 20 indirection KM
0001A0: 20 54 45 53 54 20 20 42 52 45 41 4B 20 20 69 73 TEST BREAK is
0001B0: 0D 0A 20 20 20 20 20 20 20 63 61 6C 6C 65 64 20 .. called
0001C0: 74 6F 20 70 72 6F 63 65 73 73 20 74 68 65 20 62 to process the b
0001D0: 72 65 61 6B 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 reak.........
0001E0: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
0001F0: 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ies:......
Size : 512 (Real : 512)
000000: 20 4B 4C 20 53 43 41 4E 20 4E 45 45 44 45 44 0D KL SCAN NEEDED.
000010: 0A 20 20 20 20 20 20 20 4B 4D 20 52 45 41 44 20 . KM READ
000020: 4B 45 59 0D 0A 20 20 20 20 20 20 20 4B 4D 20 54 KEY.. KM T
000030: 45 53 54 20 42 52 45 41 4B 0D 0A 20 20 20 20 20 EST BREAK..
000040: 20 20 4B 4D 20 54 45 53 54 20 4B 45 59 0D 0A 0D KM TEST KEY...
000050: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000060: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000070: 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 AMSTRAD CPC464/6
000080: 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 64/6128 FIRMWARE
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
0000B0: 20 31 36 2E 31 37 0D 0A 1A 69 73 20 73 65 63 74 16.17...is sect
0000C0: 69 6F 6E 20 67 69 76 65 73 20 74 68 65 20 64 65 ion gives the de
0000D0: 74 61 69 6C 65 64 20 65 6E 74 72 79 20 61 6E 64 tailed entry and
0000E0: 20 65 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 exit conditions
0000F0: 20 61 6E 64 20 20 65 66 66 65 63 74 73 0D 0A 20 and effects..
000100: 20 6F 66 20 20 74 68 65 20 20 6B 65 79 73 20 20 of the keys
000110: 61 72 65 0D 0A 20 20 20 20 20 20 20 6D 65 61 73 are.. meas
000120: 75 72 65 64 20 69 6E 20 73 63 61 6E 73 20 6F 66 ured in scans of
000130: 20 74 68 65 20 6B 65 79 62 6F 61 72 64 20 61 6E the keyboard an
000140: 64 20 68 65 6E 63 65 20 66 69 66 74 69 65 74 68 d hence fiftieth
000150: 20 6F 66 20 61 20 73 65 63 6F 6E 64 2E 0D 0A 0D of a second....
000160: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 ... If the
000170: 20 65 73 63 61 70 65 20 6B 65 79 20 69 73 20 70 escape key is p
000180: 72 65 73 73 65 64 20 74 68 65 6E 20 74 68 65 20 ressed then the
000190: 69 6E 64 69 72 65 63 74 69 6F 6E 20 20 4B 4D 20 indirection KM
0001A0: 20 54 45 53 54 20 20 42 52 45 41 4B 20 20 69 73 TEST BREAK is
0001B0: 0D 0A 20 20 20 20 20 20 20 63 61 6C 6C 65 64 20 .. called
0001C0: 74 6F 20 70 72 6F 63 65 73 73 20 74 68 65 20 62 to process the b
0001D0: 72 65 61 6B 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 reak.........
0001E0: 20 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 Related entr
0001F0: 69 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ies:......
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 31 ........ 1
000010: 37 20 54 68 65 20 48 69 67 68 20 4B 65 72 6E 65 7 The High Kerne
000020: 6C 20 4A 75 6D 70 62 6C 6F 63 6B 2E 0D 0A 0D 0A l Jumpblock.....
000030: 0D 0A 20 20 20 20 20 20 20 53 65 70 61 72 61 74 .. Separat
000040: 65 20 66 72 6F 6D 20 74 68 65 20 6D 61 69 6E 20 e from the main
000050: 66 69 72 6D 77 61 72 65 20 6A 75 6D 70 62 6C 6F firmware jumpblo
000060: 63 6B 20 69 73 20 20 61 20 20 73 6D 61 6C 6C 20 ck is a small
000070: 20 6A 75 6D 70 62 6C 6F 63 6B 20 20 66 6F 72 0D jumpblock for.
000080: 0A 20 20 20 20 20 20 20 4B 65 72 6E 65 6C 20 72 . Kernel r
000090: 6F 75 74 69 6E 65 73 20 61 73 73 6F 63 69 61 74 outines associat
0000A0: 65 64 20 77 69 74 68 20 20 52 4F 4D 20 20 73 74 ed with ROM st
0000B0: 61 74 65 20 20 61 6E 64 20 20 52 4F 4D 20 20 73 ate and ROM s
0000C0: 65 6C 65 63 74 69 6F 6E 2E 20 20 54 68 65 0D 0A election. The..
0000D0: 20 20 20 20 20 20 20 72 6F 75 74 69 6E 65 73 20 routines
0000E0: 61 63 63 65 73 73 65 64 20 74 68 72 6F 75 67 68 accessed through
0000F0: 20 74 68 69 73 20 6A 75 6D 70 62 6C 6F 63 6B 20 this jumpblock
000100: 20 61 72 65 20 20 61 6C 6C 20 20 52 41 4D 20 20 are all RAM
000110: 72 65 73 69 64 65 6E 74 2C 20 20 74 6F 0D 0A 20 resident, to..
000120: 20 20 20 20 20 20 61 76 6F 69 64 20 63 6F 6E 66 avoid conf
000130: 75 73 69 6F 6E 20 77 68 69 6C 65 20 74 68 65 20 usion while the
000140: 52 4F 4D 20 73 74 61 74 65 20 61 6E 64 20 52 4F ROM state and RO
000150: 4D 20 73 65 6C 65 63 74 20 20 61 72 65 20 20 63 M select are c
000160: 68 61 6E 67 65 64 21 20 20 54 68 65 0D 0A 20 20 hanged! The..
000170: 20 20 20 20 20 52 41 4D 20 61 72 65 61 20 69 73 RAM area is
000180: 20 63 6F 70 69 65 64 20 6F 75 74 20 6F 66 20 52 copied out of R
000190: 4F 4D 20 64 75 72 69 6E 67 20 74 68 65 20 70 6F OM during the po
0001A0: 77 65 72 2D 75 70 20 69 6E 69 74 69 61 6C 69 7A wer-up initializ
0001B0: 61 74 69 6F 6E 2E 20 20 54 68 65 0D 0A 20 20 20 ation. The..
0001C0: 20 20 20 20 6A 75 6D 70 62 6C 6F 63 6B 20 73 68 jumpblock sh
0001D0: 6F 75 6C 64 20 6E 6F 74 20 62 65 20 61 6C 74 65 ould not be alte
0001E0: 72 65 64 20 62 79 20 74 68 65 20 75 73 65 72 2E red by the user.
0001F0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
Size : 512 (Real : 512)
000000: 20 65 6E 74 72 79 20 4B 4C 20 50 4F 4C 4C 20 20 entry KL POLL
000010: 53 59 4E 43 48 52 4F 4E 4F 55 53 20 20 69 73 20 SYNCHRONOUS is
000020: 20 74 68 65 20 20 27 6F 64 64 20 20 6D 61 6E 20 the 'odd man
000030: 20 6F 75 74 27 20 20 61 6D 6F 6E 67 73 74 20 20 out' amongst
000040: 74 68 65 0D 0A 20 20 20 20 20 20 20 72 6F 75 74 the.. rout
000050: 69 6E 65 73 20 20 69 6E 20 20 74 68 69 73 20 20 ines in this
000060: 6A 75 6D 70 62 6C 6F 63 6B 2E 20 20 55 6E 6C 69 jumpblock. Unli
000070: 6B 65 20 20 74 68 65 20 20 6F 74 68 65 72 20 20 ke the other
000080: 73 79 6E 63 68 72 6F 6E 6F 75 73 20 20 65 76 65 synchronous eve
000090: 6E 74 0D 0A 20 20 20 20 20 20 20 68 61 6E 64 6C nt.. handl
0000A0: 69 6E 67 20 72 6F 75 74 69 6E 65 73 2C 20 77 68 ing routines, wh
0000B0: 69 63 68 20 61 72 65 20 69 6E 20 74 68 65 20 6C ich are in the l
0000C0: 6F 77 65 72 20 52 4F 4D 2C 20 20 74 68 69 73 20 ower ROM, this
0000D0: 20 72 6F 75 74 69 6E 65 20 20 69 73 20 20 52 41 routine is RA
0000E0: 4D 0D 0A 20 20 20 20 20 20 20 72 65 73 69 64 65 M.. reside
0000F0: 6E 74 2E 20 20 54 68 69 73 20 20 6D 69 6E 69 6D nt. This minim
000100: 69 73 65 73 20 20 74 68 65 20 20 6F 76 65 72 68 ises the overh
000110: 65 61 64 20 20 69 6E 76 6F 6C 76 65 64 20 20 69 ead involved i
000120: 6E 20 20 70 6F 6C 6C 69 6E 67 20 20 20 66 6F 72 n polling for
000130: 0D 0A 20 20 20 20 20 20 20 73 79 6E 63 68 72 6F .. synchro
000140: 6E 6F 75 73 20 65 76 65 6E 74 73 2E 0D 0A 0D 0A nous events.....
000150: 0D 0A 20 20 20 20 20 20 20 41 20 62 72 69 65 66 .. A brief
000160: 20 6C 69 73 74 69 6E 67 20 6F 66 20 74 68 65 20 listing of the
000170: 65 6E 74 72 69 65 73 20 69 6E 20 20 74 68 69 73 entries in this
000180: 20 20 6A 75 6D 70 62 6C 6F 63 6B 20 20 63 61 6E jumpblock can
000190: 20 20 62 65 20 20 66 6F 75 6E 64 20 20 69 6E 0D be found in.
0001A0: 0A 20 20 20 20 20 20 20 73 65 63 74 69 6F 6E 20 . section
0001B0: 31 34 2E 33 2E 20 41 20 64 69 73 63 75 73 73 69 14.3. A discussi
0001C0: 6F 6E 20 6F 66 20 52 4F 4D 73 20 61 6E 64 20 74 on of ROMs and t
0001D0: 68 65 20 6D 65 6D 6F 72 79 20 6D 61 70 20 63 61 he memory map ca
0001E0: 6E 20 62 65 20 66 6F 75 6E 64 20 20 69 6E 0D 0A n be found in..
0001F0: 20 20 20 20 20 20 20 73 65 63 74 69 6F 6E 20 32 section 2
Size : 512 (Real : 512)
000000: 2C 20 66 75 72 74 68 65 72 20 64 69 73 63 75 73 , further discus
000010: 73 69 6F 6E 20 6F 66 20 52 4F 4D 73 20 63 61 6E sion of ROMs can
000020: 20 62 65 20 66 6F 75 6E 64 20 69 6E 20 73 65 63 be found in sec
000030: 74 69 6F 6E 20 31 30 20 61 6E 64 20 61 0D 0A 20 tion 10 and a..
000040: 20 20 20 20 20 20 64 69 73 63 75 73 73 69 6F 6E discussion
000050: 20 6F 66 20 65 76 65 6E 74 73 20 63 61 6E 20 62 of events can b
000060: 65 20 66 6F 75 6E 64 20 69 6E 20 73 65 63 74 69 e found in secti
000070: 6F 6E 20 31 32 2E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A on 12...........
000080: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000090: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000A0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
0000B0: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
0000C0: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
0000D0: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
0000E0: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 20 70 61 67 65 20 31 37 2E 31 0D 0A 0D 0A 0D page 17.1.....
000110: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
000120: 48 49 3A 20 4B 4C 20 55 20 52 4F 4D 20 45 4E 41 HI: KL U ROM ENA
000130: 42 4C 45 20 20 20 20 20 20 20 20 20 20 20 20 20 BLE
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 23 42 39 30 30 0D 0A 0D 0A 0D 0A 20 20 20 20 #B900......
000170: 20 20 20 45 6E 61 62 6C 65 20 74 68 65 20 75 70 Enable the up
000180: 70 65 72 20 52 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 20 per ROM.......
000190: 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A Action:....
0001A0: 0D 0A 20 20 20 20 20 20 20 45 6E 61 62 6C 65 73 .. Enables
0001B0: 20 74 68 65 20 63 75 72 72 65 6E 74 6C 79 20 73 the currently s
0001C0: 65 6C 65 63 74 65 64 20 75 70 70 65 72 20 52 4F elected upper RO
0001D0: 4D 2E 20 52 65 61 64 69 6E 67 20 66 72 6F 6D 20 M. Reading from
0001E0: 61 64 64 72 65 73 73 65 73 20 23 43 30 30 30 0D addresses #C000.
0001F0: 0A 20 20 20 20 20 20 20 61 6E 64 20 75 70 20 77 . and up w
Size : 512 (Real : 512)
000000: 69 6C 6C 20 6E 6F 77 20 72 65 74 75 72 6E 20 74 ill now return t
000010: 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 20 74 he contents of t
000020: 68 65 20 52 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 20 20 he ROM.......
000030: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000040: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000050: 20 20 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 2E No conditions.
000060: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 ...... Exi
000070: 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D t conditions:...
000080: 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 6F 6E 74 ... A cont
000090: 61 69 6E 73 20 74 68 65 20 70 72 65 76 69 6F 75 ains the previou
0000A0: 73 20 52 4F 4D 20 73 74 61 74 65 2E 0D 0A 0D 0A s ROM state.....
0000B0: 0D 0A 20 20 20 20 20 20 20 46 6C 61 67 73 20 63 .. Flags c
0000C0: 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 orrupt...
0000D0: 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 All other regist
0000E0: 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A ers preserved...
0000F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 .... Notes
000100: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 :...... Th
000110: 65 20 6D 65 63 68 61 6E 69 73 6D 20 70 72 6F 76 e mechanism prov
000120: 69 64 65 64 20 66 6F 72 20 63 61 6C 6C 69 6E 67 ided for calling
000130: 20 73 75 62 72 6F 75 74 69 6E 65 73 20 69 6E 20 subroutines in
000140: 74 68 65 20 20 75 70 70 65 72 20 20 52 4F 4D 20 the upper ROM
000150: 20 61 6E 64 0D 0A 20 20 20 20 20 20 20 66 6F 72 and.. for
000160: 20 73 65 6C 65 63 74 69 6E 67 20 75 70 70 65 72 selecting upper
000170: 20 52 4F 4D 73 20 61 75 74 6F 6D 61 74 69 63 61 ROMs automatica
000180: 6C 6C 79 20 65 6E 61 62 6C 65 20 20 74 68 65 20 lly enable the
000190: 20 52 4F 4D 20 20 61 73 20 20 72 65 71 75 69 72 ROM as requir
0001A0: 65 64 2E 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ed... This
0001B0: 20 72 6F 75 74 69 6E 65 20 69 73 20 75 73 65 64 routine is used
0001C0: 20 62 79 20 74 68 65 20 66 69 72 6D 77 61 72 65 by the firmware
0001D0: 20 62 75 74 20 69 73 20 6F 74 68 65 72 77 69 73 but is otherwis
0001E0: 65 20 6F 66 20 6C 69 74 74 6C 65 20 75 73 65 2E e of little use.
0001F0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
Size : 512 (Real : 512)
000000: 20 70 72 65 76 69 6F 75 73 20 52 4F 4D 20 73 74 previous ROM st
000010: 61 74 65 20 6D 61 79 20 62 65 20 70 61 73 73 65 ate may be passe
000020: 64 20 74 6F 20 4B 4C 20 52 4F 4D 20 52 45 53 54 d to KL ROM REST
000030: 4F 52 45 20 20 74 6F 20 20 72 65 73 65 74 20 20 ORE to reset
000040: 74 68 65 0D 0A 20 20 20 20 20 20 20 73 74 61 74 the.. stat
000050: 65 20 74 6F 20 77 68 61 74 20 69 74 20 77 61 73 e to what it was
000060: 20 62 65 66 6F 72 65 20 74 68 69 73 20 72 6F 75 before this rou
000070: 74 69 6E 65 20 77 61 73 20 63 61 6C 6C 65 64 2E tine was called.
000080: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 ...... Thi
000090: 73 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 s routine enable
0000A0: 73 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D s interrupts....
0000B0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 ..... Rela
0000C0: 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A ted entries:....
0000D0: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 4C 20 52 4F .. KL L RO
0000E0: 4D 20 45 4E 41 42 4C 45 0D 0A 20 20 20 20 20 20 M ENABLE..
0000F0: 20 4B 4C 20 52 4F 4D 20 52 45 53 54 4F 52 45 0D KL ROM RESTORE.
000100: 0A 20 20 20 20 20 20 20 4B 4C 20 52 4F 4D 20 53 . KL ROM S
000110: 45 4C 45 43 54 0D 0A 20 20 20 20 20 20 20 4B 4C ELECT.. KL
000120: 20 55 20 52 4F 4D 20 44 49 53 41 42 4C 45 0D 0A U ROM DISABLE..
000130: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 ..............
000140: 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 AMSTRAD CPC
000150: 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 464/664/6128 FIR
000160: 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 MWARE
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 20 20 70 61 67 65 20 31 37 2E 32 0D 0A 0D 0A 0D page 17.2.....
000190: 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
0001A0: 48 49 3A 20 4B 4C 20 55 20 52 4F 4D 20 44 49 53 HI: KL U ROM DIS
0001B0: 41 42 4C 45 20 20 20 20 20 20 20 20 20 20 20 20 ABLE
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001E0: 20 23 42 39 30 33 0D 0A 0D 0A 0D 0A 20 20 20 20 #B903......
0001F0: 20 20 20 44 69 73 61 62 6C 65 20 74 68 65 20 75 Disable the u
Size : 512 (Real : 512)
000000: 70 70 65 72 20 52 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 pper ROM.......
000010: 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D Action:...
000020: 0A 0D 0A 20 20 20 20 20 20 20 44 69 73 61 62 6C ... Disabl
000030: 65 73 20 74 68 65 20 75 70 70 65 72 20 52 4F 4D es the upper ROM
000040: 2E 20 52 65 61 64 69 6E 67 20 66 72 6F 6D 20 61 . Reading from a
000050: 64 64 72 65 73 73 65 73 20 23 43 30 30 30 20 61 ddresses #C000 a
000060: 6E 64 20 75 70 20 20 77 69 6C 6C 20 20 6E 6F 77 nd up will now
000070: 0D 0A 20 20 20 20 20 20 20 72 65 74 75 72 6E 20 .. return
000080: 74 68 65 20 63 6F 6E 74 65 6E 74 73 20 6F 66 20 the contents of
000090: 74 68 65 20 52 41 4D 2E 0D 0A 0D 0A 0D 0A 20 20 the RAM.......
0000A0: 20 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 Entry condi
0000B0: 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 tions:......
0000C0: 20 20 20 4E 6F 20 63 6F 6E 64 69 74 69 6F 6E 73 No conditions
0000D0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 ....... Ex
0000E0: 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A it conditions:..
0000F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 6F 6E .... A con
000100: 74 61 69 6E 73 20 74 68 65 20 70 72 65 76 69 6F tains the previo
000110: 75 73 20 52 4F 4D 20 73 74 61 74 65 2E 0D 0A 0D us ROM state....
000120: 0A 0D 0A 20 20 20 20 20 20 20 46 6C 61 67 73 20 ... Flags
000130: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
000140: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
000150: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D ters preserved..
000160: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 ..... Note
000170: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 s:...... D
000180: 69 73 61 62 6C 69 6E 67 20 74 68 65 20 75 70 70 isabling the upp
000190: 65 72 20 52 4F 4D 20 67 69 76 65 73 20 72 65 61 er ROM gives rea
0001A0: 64 20 61 63 63 65 73 73 20 74 6F 20 74 68 65 20 d access to the
0001B0: 74 6F 70 20 31 36 4B 20 6F 66 20 52 41 4D 2C 20 top 16K of RAM,
0001C0: 77 68 69 63 68 0D 0A 20 20 20 20 20 20 20 69 73 which.. is
0001D0: 20 75 73 75 61 6C 6C 79 20 75 73 65 64 20 61 73 usually used as
0001E0: 20 74 68 65 20 73 63 72 65 65 6E 20 6D 65 6D 6F the screen memo
0001F0: 72 79 2E 20 20 4E 6F 74 65 20 20 74 68 61 74 20 ry. Note that
Size : 512 (Real : 512)
000000: 20 74 68 65 20 20 6D 61 70 70 69 6E 67 20 20 6F the mapping o
000010: 66 20 20 61 0D 0A 20 20 20 20 20 20 20 6C 6F 63 f a.. loc
000020: 61 74 69 6F 6E 20 69 6E 20 73 63 72 65 65 6E 20 ation in screen
000030: 6D 65 6D 6F 72 79 20 74 6F 20 70 69 78 65 6C 73 memory to pixels
000040: 20 6F 6E 20 74 68 65 20 73 63 72 65 65 6E 20 64 on the screen d
000050: 65 70 65 6E 64 73 20 6F 6E 20 74 68 65 20 20 6D epends on the m
000060: 6F 64 65 0D 0A 20 20 20 20 20 20 20 61 6E 64 20 ode.. and
000070: 6F 6E 20 74 68 65 20 73 63 72 65 65 6E 20 6F 66 on the screen of
000080: 66 73 65 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 fset.......
000090: 20 20 49 74 20 20 69 73 20 20 69 6E 61 64 76 69 It is inadvi
0000A0: 73 61 62 6C 65 20 20 74 6F 20 20 64 69 73 61 62 sable to disab
0000B0: 6C 65 20 20 74 68 65 20 20 75 70 70 65 72 20 20 le the upper
0000C0: 20 52 4F 4D 20 20 20 77 68 69 6C 65 20 20 20 65 ROM while e
0000D0: 78 65 63 75 74 69 6E 67 0D 0A 20 20 20 20 20 20 xecuting..
0000E0: 20 69 6E 73 74 72 75 63 74 69 6F 6E 73 20 69 6E instructions in
0000F0: 20 69 74 21 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 it!......
000100: 20 54 68 65 20 70 72 65 76 69 6F 75 73 20 52 4F The previous RO
000110: 4D 20 73 74 61 74 65 20 6D 61 79 20 62 65 20 70 M state may be p
000120: 61 73 73 65 64 20 74 6F 20 4B 4C 20 52 4F 4D 20 assed to KL ROM
000130: 52 45 53 54 4F 52 45 20 20 74 6F 20 20 72 65 73 RESTORE to res
000140: 65 74 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 et the..
000150: 73 74 61 74 65 20 74 6F 20 77 68 61 74 20 69 74 state to what it
000160: 20 77 61 73 20 62 65 66 6F 72 65 20 74 68 69 73 was before this
000170: 20 72 6F 75 74 69 6E 65 20 77 61 73 20 63 61 6C routine was cal
000180: 6C 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 led.......
000190: 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 65 6E This routine en
0001A0: 61 62 6C 65 73 20 69 6E 74 65 72 72 75 70 74 73 ables interrupts
0001B0: 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 .........
0001C0: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
0001D0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ...... KL
0001E0: 4C 20 52 4F 4D 20 44 49 53 41 42 4C 45 0D 0A 20 L ROM DISABLE..
0001F0: 20 20 20 20 20 20 4B 4C 20 52 4F 4D 20 52 45 53 KL ROM RES
Size : 512 (Real : 512)
000000: 54 4F 52 45 0D 0A 20 20 20 20 20 20 20 4B 4C 20 TORE.. KL
000010: 55 20 52 4F 4D 20 45 4E 41 42 4C 45 0D 0A 0D 0A U ROM ENABLE....
000020: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
000030: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
000040: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000060: 20 20 20 20 20 20 20 20 70 61 67 65 20 31 37 2E page 17.
000070: 33 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 3..............
000080: 20 20 20 20 20 20 48 49 3A 20 4B 4C 20 4C 20 52 HI: KL L R
000090: 4F 4D 20 45 4E 41 42 4C 45 20 20 20 20 20 20 20 OM ENABLE
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 23 42 39 30 36 0D 0A 0D 0A #B906....
0000D0: 0D 0A 20 20 20 20 20 20 20 45 6E 61 62 6C 65 20 .. Enable
0000E0: 74 68 65 20 6C 6F 77 65 72 20 52 4F 4D 2E 0D 0A the lower ROM...
0000F0: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F .... Actio
000100: 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 n:...... E
000110: 6E 61 62 6C 65 73 20 74 68 65 20 6C 6F 77 65 72 nables the lower
000120: 20 52 4F 4D 2E 20 52 65 61 64 69 6E 67 20 66 72 ROM. Reading fr
000130: 6F 6D 20 61 64 64 72 65 73 73 65 73 20 20 62 65 om addresses be
000140: 6C 6F 77 20 20 23 34 30 30 30 20 20 77 69 6C 6C low #4000 will
000150: 20 20 6E 6F 77 0D 0A 20 20 20 20 20 20 20 72 65 now.. re
000160: 74 75 72 6E 20 74 68 65 20 63 6F 6E 74 65 6E 74 turn the content
000170: 73 20 6F 66 20 74 68 65 20 52 4F 4D 2E 0D 0A 0D s of the ROM....
000180: 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 ... Entry
000190: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D conditions:.....
0001A0: 0A 20 20 20 20 20 20 20 4E 6F 20 63 6F 6E 64 69 . No condi
0001B0: 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 tions.......
0001C0: 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F Exit conditio
0001D0: 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ns:......
0001E0: 41 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 70 A contains the p
0001F0: 72 65 76 69 6F 75 73 20 52 4F 4D 20 73 74 61 74 revious ROM stat
Size : 512 (Real : 512)
000000: 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 e....... F
000010: 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 20 lags corrupt...
000020: 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 72 20 All other
000030: 72 65 67 69 73 74 65 72 73 20 70 72 65 73 65 72 registers preser
000040: 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ved.......
000050: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 Notes:......
000060: 20 20 20 20 49 6E 20 67 65 6E 65 72 61 6C 20 74 In general t
000070: 68 65 20 6C 6F 77 65 72 20 52 4F 4D 20 69 73 20 he lower ROM is
000080: 64 69 73 61 62 6C 65 64 20 65 78 63 65 70 74 20 disabled except
000090: 77 68 65 6E 20 61 20 66 69 72 6D 77 61 72 65 20 when a firmware
0000A0: 72 6F 75 74 69 6E 65 20 69 73 0D 0A 20 20 20 20 routine is..
0000B0: 20 20 20 63 61 6C 6C 65 64 2E 20 54 68 65 20 66 called. The f
0000C0: 69 72 6D 77 61 72 65 20 20 6A 75 6D 70 62 6C 6F irmware jumpblo
0000D0: 63 6B 20 20 61 72 72 61 6E 67 65 73 20 20 74 6F ck arranges to
0000E0: 20 20 65 6E 61 62 6C 65 20 20 74 68 65 20 20 6C enable the l
0000F0: 6F 77 65 72 20 20 52 4F 4D 0D 0A 20 20 20 20 20 ower ROM..
000100: 20 20 61 75 74 6F 6D 61 74 69 63 61 6C 6C 79 20 automatically
000110: 61 6E 64 20 74 6F 20 64 69 73 61 62 6C 65 20 69 and to disable i
000120: 74 20 61 67 61 69 6E 20 77 68 65 6E 20 74 68 65 t again when the
000130: 20 72 6F 75 74 69 6E 65 20 20 72 65 74 75 72 6E routine return
000140: 73 2E 20 20 54 68 69 73 0D 0A 20 20 20 20 20 20 s. This..
000150: 20 72 6F 75 74 69 6E 65 20 69 73 20 75 73 65 64 routine is used
000160: 20 62 79 20 74 68 65 20 66 69 72 6D 77 61 72 65 by the firmware
000170: 20 62 75 74 20 69 73 20 6F 74 68 65 72 77 69 73 but is otherwis
000180: 65 20 6F 66 20 6C 69 74 74 6C 65 20 75 73 65 2E e of little use.
000190: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 ...... The
0001A0: 20 70 72 65 76 69 6F 75 73 20 52 4F 4D 20 73 74 previous ROM st
0001B0: 61 74 65 20 6D 61 79 20 62 65 20 70 61 73 73 65 ate may be passe
0001C0: 64 20 74 6F 20 4B 4C 20 52 4F 4D 20 52 45 53 54 d to KL ROM REST
0001D0: 4F 52 45 20 20 74 6F 20 20 72 65 73 65 74 20 20 ORE to reset
0001E0: 74 68 65 0D 0A 20 20 20 20 20 20 20 73 74 61 74 the.. stat
0001F0: 65 20 74 6F 20 77 68 61 74 20 69 74 20 77 61 73 e to what it was
Size : 512 (Real : 512)
000000: 20 62 65 66 6F 72 65 20 74 68 69 73 20 72 6F 75 before this rou
000010: 74 69 6E 65 20 77 61 73 20 63 61 6C 6C 65 64 2E tine was called.
000020: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 ...... Thi
000030: 73 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 s routine enable
000040: 73 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D s interrupts....
000050: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 ..... Rela
000060: 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A ted entries:....
000070: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 4C 20 52 4F .. KL L RO
000080: 4D 20 44 49 53 41 42 4C 45 0D 0A 20 20 20 20 20 M DISABLE..
000090: 20 20 4B 4C 20 52 4F 4D 20 52 45 53 54 4F 52 45 KL ROM RESTORE
0000A0: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 55 20 52 4F .. KL U RO
0000B0: 4D 20 45 4E 41 42 4C 45 0D 0A 0D 0A 0D 0A 0D 0A M ENABLE........
0000C0: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
0000D0: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
0000E0: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 page
000110: 20 31 37 2E 34 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 17.4...........
000120: 0A 0D 0A 20 20 20 20 20 20 20 48 49 3A 20 4B 4C ... HI: KL
000130: 20 4C 20 52 4F 4D 20 44 49 53 41 42 4C 45 20 20 L ROM DISABLE
000140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 20 20 20 20 20 20 20 20 23 42 39 30 39 #B909
000170: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 44 69 73 ...... Dis
000180: 61 62 6C 65 20 74 68 65 20 6C 6F 77 65 72 20 52 able the lower R
000190: 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 OM.......
0001A0: 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 Action:......
0001B0: 20 20 20 20 44 69 73 61 62 6C 65 73 20 74 68 65 Disables the
0001C0: 20 6C 6F 77 65 72 20 52 4F 4D 2E 20 52 65 61 64 lower ROM. Read
0001D0: 69 6E 67 20 66 72 6F 6D 20 61 64 64 72 65 73 73 ing from address
0001E0: 65 73 20 62 65 6C 6F 77 20 20 23 34 30 30 30 20 es below #4000
0001F0: 20 77 69 6C 6C 20 20 6E 6F 77 0D 0A 20 20 20 20 will now..
Size : 512 (Real : 512)
000000: 20 20 20 72 65 74 75 72 6E 20 74 68 65 20 63 6F return the co
000010: 6E 74 65 6E 74 73 20 6F 66 20 74 68 65 20 52 41 ntents of the RA
000020: 4D 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 M....... E
000030: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
000040: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 20 ...... No
000050: 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D conditions......
000060: 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E . Exit con
000070: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 ditions:......
000080: 20 20 20 20 20 41 20 63 6F 6E 74 61 69 6E 73 20 A contains
000090: 74 68 65 20 70 72 65 76 69 6F 75 73 20 52 4F 4D the previous ROM
0000A0: 20 73 74 61 74 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 state.......
0000B0: 20 20 20 20 46 6C 61 67 73 20 63 6F 72 72 75 70 Flags corrup
0000C0: 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F t... All o
0000D0: 74 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 ther registers p
0000E0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
0000F0: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
000100: 0D 0A 20 20 20 20 20 20 20 49 6E 20 67 65 6E 65 .. In gene
000110: 72 61 6C 20 74 68 65 20 6C 6F 77 65 72 20 52 4F ral the lower RO
000120: 4D 20 69 73 20 64 69 73 61 62 6C 65 64 20 65 78 M is disabled ex
000130: 63 65 70 74 20 77 68 65 6E 20 61 20 66 69 72 6D cept when a firm
000140: 77 61 72 65 20 72 6F 75 74 69 6E 65 20 69 73 0D ware routine is.
000150: 0A 20 20 20 20 20 20 20 63 61 6C 6C 65 64 2E 20 . called.
000160: 54 68 65 20 66 69 72 6D 77 61 72 65 20 20 6A 75 The firmware ju
000170: 6D 70 62 6C 6F 63 6B 20 20 61 72 72 61 6E 67 65 mpblock arrange
000180: 73 20 20 74 6F 20 20 65 6E 61 62 6C 65 20 20 74 s to enable t
000190: 68 65 20 20 6C 6F 77 65 72 20 20 52 4F 4D 0D 0A he lower ROM..
0001A0: 20 20 20 20 20 20 20 61 75 74 6F 6D 61 74 69 63 automatic
0001B0: 61 6C 6C 79 20 61 6E 64 20 74 6F 20 64 69 73 61 ally and to disa
0001C0: 62 6C 65 20 69 74 20 61 67 61 69 6E 20 77 68 65 ble it again whe
0001D0: 6E 20 74 68 65 20 72 6F 75 74 69 6E 65 20 20 72 n the routine r
0001E0: 65 74 75 72 6E 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 eturns.......
0001F0: 20 20 20 20 54 68 65 20 70 72 65 76 69 6F 75 73 The previous
Size : 512 (Real : 512)
000000: 20 52 4F 4D 20 73 74 61 74 65 20 6D 61 79 20 62 ROM state may b
000010: 65 20 70 61 73 73 65 64 20 74 6F 20 4B 4C 20 52 e passed to KL R
000020: 4F 4D 20 52 45 53 54 4F 52 45 20 20 74 6F 20 20 OM RESTORE to
000030: 72 65 73 65 74 20 20 74 68 65 0D 0A 20 20 20 20 reset the..
000040: 20 20 20 73 74 61 74 65 20 74 6F 20 77 68 61 74 state to what
000050: 20 69 74 20 77 61 73 20 62 65 66 6F 72 65 20 74 it was before t
000060: 68 69 73 20 72 6F 75 74 69 6E 65 20 77 61 73 20 his routine was
000070: 63 61 6C 6C 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 called.......
000080: 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 This routine
000090: 20 65 6E 61 62 6C 65 73 20 69 6E 74 65 72 72 75 enables interru
0000A0: 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 pts.........
0000B0: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
0000C0: 65 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 es:......
0000D0: 4B 4C 20 4C 20 52 4F 4D 20 45 4E 41 42 4C 45 0D KL L ROM ENABLE.
0000E0: 0A 20 20 20 20 20 20 20 4B 4C 20 52 4F 4D 20 52 . KL ROM R
0000F0: 45 53 54 4F 52 45 0D 0A 20 20 20 20 20 20 20 4B ESTORE.. K
000100: 4C 20 55 20 52 4F 4D 20 44 49 53 41 42 4C 45 0D L U ROM DISABLE.
000110: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
000120: 0A 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 . AMSTRAD
000130: 43 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 CPC464/664/6128
000140: 46 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 FIRMWARE
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 20 20 70 61 67 65 20 31 37 2E 35 0D 0A page 17.5..
000170: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 ............
000180: 20 20 20 48 49 3A 20 4B 4C 20 52 4F 4D 20 52 45 HI: KL ROM RE
000190: 53 54 4F 52 45 20 20 20 20 20 20 20 20 20 20 20 STORE
0001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001C0: 20 20 20 20 23 42 39 30 43 0D 0A 0D 0A 0D 0A 20 #B90C......
0001D0: 20 20 20 20 20 20 52 65 73 74 6F 72 65 20 74 68 Restore th
0001E0: 65 20 70 72 65 76 69 6F 75 73 20 52 4F 4D 20 73 e previous ROM s
0001F0: 74 61 74 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 tate.......
Size : 512 (Real : 512)
000000: 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 Action:......
000010: 20 20 20 20 20 20 54 68 65 20 52 4F 4D 20 73 74 The ROM st
000020: 61 74 65 20 63 68 61 6E 67 65 20 72 6F 75 74 69 ate change routi
000030: 6E 65 73 20 61 6C 6C 20 72 65 74 75 72 6E 20 61 nes all return a
000040: 20 76 61 6C 75 65 20 67 69 76 69 6E 67 20 20 74 value giving t
000050: 68 65 20 20 70 72 65 76 69 6F 75 73 0D 0A 20 20 he previous..
000060: 20 20 20 20 20 52 4F 4D 20 73 74 61 74 65 2E 20 ROM state.
000070: 47 69 76 65 6E 20 74 68 61 74 20 76 61 6C 75 65 Given that value
000080: 20 4B 4C 20 52 4F 4D 20 52 45 53 54 4F 52 45 20 KL ROM RESTORE
000090: 77 69 6C 6C 20 20 72 65 73 65 74 20 20 74 68 65 will reset the
0000A0: 20 20 73 74 61 74 65 20 20 74 6F 0D 0A 20 20 20 state to..
0000B0: 20 20 20 20 77 68 61 74 20 69 74 20 77 61 73 20 what it was
0000C0: 62 65 66 6F 72 65 20 74 68 65 20 63 68 61 6E 67 before the chang
0000D0: 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 e....... E
0000E0: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
0000F0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 20 63 ...... A c
000100: 6F 6E 74 61 69 6E 73 20 74 68 65 20 70 72 65 76 ontains the prev
000110: 69 6F 75 73 20 52 4F 4D 20 73 74 61 74 65 2E 0D ious ROM state..
000120: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 ..... Exit
000130: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000140: 0D 0A 20 20 20 20 20 20 20 41 46 20 63 6F 72 72 .. AF corr
000150: 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C upt... All
000160: 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 73 other registers
000170: 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D preserved......
000180: 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A . Notes:..
000190: 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 20 70 .... The p
0001A0: 72 65 76 69 6F 75 73 20 52 4F 4D 20 73 74 61 74 revious ROM stat
0001B0: 65 20 69 73 20 74 68 65 20 76 61 6C 75 65 20 72 e is the value r
0001C0: 65 74 75 72 6E 65 64 20 62 79 20 6F 6E 65 20 6F eturned by one o
0001D0: 66 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 20 f:......
0001E0: 20 20 20 20 20 20 20 20 4B 4C 20 55 20 52 4F 4D KL U ROM
0001F0: 20 45 4E 41 42 4C 45 0D 0A 20 20 20 20 20 20 20 ENABLE..
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 4B 4C 20 55 20 52 4F KL U RO
000010: 4D 20 44 49 53 41 42 4C 45 0D 0A 20 20 20 20 20 M DISABLE..
000020: 20 20 20 20 20 20 20 20 20 20 20 4B 4C 20 4C 20 KL L
000030: 52 4F 4D 20 45 4E 41 42 4C 45 0D 0A 20 20 20 20 ROM ENABLE..
000040: 20 20 20 20 20 20 20 20 20 20 20 20 4B 4C 20 4C KL L
000050: 20 52 4F 4D 20 44 49 53 41 42 4C 45 0D 0A 20 20 ROM DISABLE..
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4B 4C KL
000070: 20 52 4F 4D 20 53 45 4C 45 43 54 0D 0A 0D 0A 0D ROM SELECT.....
000080: 0A 20 20 20 20 20 20 20 49 74 20 69 73 20 70 6F . It is po
000090: 73 73 69 62 6C 65 20 74 6F 20 75 73 65 20 4B 4C ssible to use KL
0000A0: 20 55 20 52 4F 4D 20 44 49 53 41 42 4C 45 20 74 U ROM DISABLE t
0000B0: 6F 20 72 65 76 65 72 73 65 20 74 68 65 20 65 66 o reverse the ef
0000C0: 66 65 63 74 20 6F 66 20 61 20 63 61 6C 6C 0D 0A fect of a call..
0000D0: 20 20 20 20 20 20 20 6F 66 20 4B 4C 20 55 20 52 of KL U R
0000E0: 4F 4D 20 45 4E 41 42 4C 45 20 20 28 61 6D 6F 6E OM ENABLE (amon
0000F0: 67 73 74 20 20 76 61 72 69 6F 75 73 20 20 6F 74 gst various ot
000100: 68 65 72 20 20 63 6F 6D 62 69 6E 61 74 69 6F 6E her combination
000110: 73 29 2E 20 20 48 6F 77 65 76 65 72 2C 0D 0A 20 s). However,..
000120: 20 20 20 20 20 20 63 61 6C 6C 69 6E 67 20 4B 4C calling KL
000130: 20 52 4F 4D 20 52 45 53 54 4F 52 45 20 69 73 20 ROM RESTORE is
000140: 74 68 65 20 70 72 65 66 65 72 72 65 64 20 6D 65 the preferred me
000150: 74 68 6F 64 20 73 69 6E 63 65 20 69 74 20 20 72 thod since it r
000160: 65 73 74 6F 72 65 73 20 20 74 68 65 0D 0A 20 20 estores the..
000170: 20 20 20 20 20 73 74 61 74 65 20 74 6F 20 77 68 state to wh
000180: 61 74 20 69 74 20 77 61 73 2C 20 77 68 69 63 68 at it was, which
000190: 20 6D 69 67 68 74 20 68 61 76 65 20 62 65 65 6E might have been
0001A0: 20 65 6E 61 62 6C 65 64 20 61 6E 79 77 61 79 2E enabled anyway.
0001B0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 ...... Thi
0001C0: 73 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 s routine enable
0001D0: 73 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D s interrupts....
0001E0: 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 20 . Related
0001F0: 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 20 entries:....
Size : 512 (Real : 512)
000000: 20 20 20 4B 4C 20 4C 20 52 4F 4D 20 44 49 53 41 KL L ROM DISA
000010: 42 4C 45 0D 0A 20 20 20 20 20 20 20 4B 4C 20 4C BLE.. KL L
000020: 20 52 4F 4D 20 45 4E 41 42 4C 45 0D 0A 20 20 20 ROM ENABLE..
000030: 20 20 20 20 4B 4C 20 52 4F 4D 20 53 45 4C 45 43 KL ROM SELEC
000040: 54 0D 0A 20 20 20 20 20 20 20 4B 4C 20 55 20 52 T.. KL U R
000050: 4F 4D 20 44 49 53 41 42 4C 45 0D 0A 20 20 20 20 OM DISABLE..
000060: 20 20 20 4B 4C 20 55 20 52 4F 4D 20 45 4E 41 42 KL U ROM ENAB
000070: 4C 45 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 LE..........
000080: 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 AMSTRAD CPC46
000090: 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 4/664/6128 FIRMW
0000A0: 41 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 ARE
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 70 61 67 65 20 31 37 2E 36 0D 0A 0D 0A 0D 0A 0D page 17.6.......
0000D0: 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 49 ....... HI
0000E0: 3A 20 4B 4C 20 52 4F 4D 20 53 45 4C 45 43 54 20 : KL ROM SELECT
0000F0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000100: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 #
000120: 42 39 30 46 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 B90F......
000130: 20 53 65 6C 65 63 74 20 61 20 70 61 72 74 69 63 Select a partic
000140: 75 6C 61 72 20 75 70 70 65 72 20 52 4F 4D 2E 0D ular upper ROM..
000150: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 ..... Acti
000160: 6F 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 on:......
000170: 53 65 6C 65 63 74 20 61 20 67 69 76 65 6E 20 75 Select a given u
000180: 70 70 65 72 20 52 4F 4D 20 61 6E 64 20 65 6E 61 pper ROM and ena
000190: 62 6C 65 20 74 68 65 20 75 70 70 65 72 20 52 4F ble the upper RO
0001A0: 4D 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 M....... E
0001B0: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
0001C0: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 20 63 ...... C c
0001D0: 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 4F 4D 20 ontains the ROM
0001E0: 73 65 6C 65 63 74 20 61 64 64 72 65 73 73 20 6F select address o
0001F0: 66 20 74 68 65 20 72 65 71 75 69 72 65 64 20 52 f the required R
Size : 512 (Real : 512)
000000: 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 OM.......
000010: 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A Exit conditions:
000020: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 20 63 ...... C c
000030: 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 4F 4D 20 ontains the ROM
000040: 73 65 6C 65 63 74 20 61 64 64 72 65 73 73 20 6F select address o
000050: 66 20 74 68 65 20 70 72 65 76 69 6F 75 73 6C 79 f the previously
000060: 20 73 65 6C 65 63 74 65 64 20 52 4F 4D 2E 0D 0A selected ROM...
000070: 20 20 20 20 20 20 20 42 20 63 6F 6E 74 61 69 6E B contain
000080: 73 20 74 68 65 20 70 72 65 76 69 6F 75 73 20 52 s the previous R
000090: 4F 4D 20 73 74 61 74 65 2E 0D 0A 0D 0A 0D 0A 20 OM state.......
0000A0: 20 20 20 20 20 20 41 46 20 63 6F 72 72 75 70 74 AF corrupt
0000B0: 2E 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 ... All ot
0000C0: 68 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 her registers pr
0000D0: 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 eserved.......
0000E0: 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D Notes:.....
0000F0: 0A 20 20 20 20 20 20 20 54 68 65 20 70 72 65 76 . The prev
000100: 69 6F 75 73 20 52 4F 4D 20 73 74 61 74 65 20 63 ious ROM state c
000110: 61 6E 20 62 65 20 70 61 73 73 65 64 20 74 6F 20 an be passed to
000120: 4B 4C 20 52 4F 4D 20 52 45 53 54 4F 52 45 20 20 KL ROM RESTORE
000130: 74 6F 20 20 72 65 73 65 74 20 20 74 68 65 0D 0A to reset the..
000140: 20 20 20 20 20 20 20 52 4F 4D 20 65 6E 61 62 6C ROM enabl
000150: 65 20 74 6F 20 77 68 61 74 20 69 74 20 77 61 73 e to what it was
000160: 2E 20 42 6F 74 68 20 74 68 65 20 70 72 65 76 69 . Both the previ
000170: 6F 75 73 20 73 74 61 74 65 20 20 61 6E 64 20 20 ous state and
000180: 74 68 65 20 20 70 72 65 76 69 6F 75 73 0D 0A 20 the previous..
000190: 20 20 20 20 20 20 73 65 6C 65 63 74 69 6F 6E 20 selection
0001A0: 63 61 6E 20 62 65 20 70 61 73 73 65 64 20 74 6F can be passed to
0001B0: 20 4B 4C 20 52 4F 4D 20 44 45 53 45 4C 45 43 54 KL ROM DESELECT
0001C0: 20 74 6F 20 20 72 65 73 74 6F 72 65 20 20 74 68 to restore th
0001D0: 65 20 20 73 74 61 74 65 20 20 74 6F 0D 0A 20 20 e state to..
0001E0: 20 20 20 20 20 77 68 61 74 20 69 74 20 77 61 73 what it was
0001F0: 20 61 6E 64 20 74 6F 20 73 65 6C 65 63 74 20 74 and to select t
Size : 512 (Real : 512)
000000: 68 65 20 70 72 65 76 69 6F 75 73 6C 79 20 73 65 he previously se
000010: 6C 65 63 74 65 64 20 52 4F 4D 20 61 67 61 69 6E lected ROM again
000020: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
000030: 65 20 20 6D 65 63 68 61 6E 69 73 6D 20 20 70 72 e mechanism pr
000040: 6F 76 69 64 65 64 20 20 66 6F 72 20 20 63 61 6C ovided for cal
000050: 6C 69 6E 67 20 20 72 6F 75 74 69 6E 65 73 20 20 ling routines
000060: 69 6E 20 20 65 78 70 61 6E 73 69 6F 6E 20 20 20 in expansion
000070: 52 4F 4D 73 0D 0A 20 20 20 20 20 20 20 61 75 74 ROMs.. aut
000080: 6F 6D 61 74 69 63 61 6C 6C 79 20 70 65 72 66 6F omatically perfo
000090: 72 6D 20 52 4F 4D 20 73 65 6C 65 63 74 69 6F 6E rm ROM selection
0000A0: 20 61 73 20 72 65 71 75 69 72 65 64 20 28 73 65 as required (se
0000B0: 65 20 73 65 63 74 69 6F 6E 20 32 29 2E 0D 0A 0D e section 2)....
0000C0: 0A 0D 0A 20 20 20 20 20 20 20 49 74 20 69 73 20 ... It is
0000D0: 20 69 6E 61 64 76 69 73 61 62 6C 65 20 20 74 6F inadvisable to
0000E0: 20 20 73 65 6C 65 63 74 20 20 61 6E 6F 74 68 65 select anothe
0000F0: 72 20 20 75 70 70 65 72 20 20 52 4F 4D 20 20 77 r upper ROM w
000100: 68 69 6C 73 74 20 20 65 78 65 63 75 74 69 6E 67 hilst executing
000110: 0D 0A 20 20 20 20 20 20 20 69 6E 73 74 72 75 63 .. instruc
000120: 74 69 6F 6E 73 20 69 6E 20 74 68 65 20 75 70 70 tions in the upp
000130: 65 72 20 52 4F 4D 2E 0D 0A 0D 0A 0D 0A 20 20 20 er ROM.......
000140: 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E 65 This routine
000150: 20 65 6E 61 62 6C 65 73 20 69 6E 74 65 72 72 75 enables interru
000160: 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 pts.........
000170: 20 20 20 52 65 6C 61 74 65 64 20 65 6E 74 72 69 Related entri
000180: 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C es:.... KL
000190: 20 43 55 52 52 20 53 45 4C 45 43 54 49 4F 4E 0D CURR SELECTION.
0001A0: 0A 20 20 20 20 20 20 20 4B 4C 20 50 52 4F 42 45 . KL PROBE
0001B0: 20 52 4F 4D 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ROM.. KL
0001C0: 52 4F 4D 20 44 45 53 45 4C 45 43 54 0D 0A 20 20 ROM DESELECT..
0001D0: 20 20 20 20 20 4B 4C 20 52 4F 4D 20 52 45 53 54 KL ROM REST
0001E0: 4F 52 45 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ORE........
0001F0: 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 AMSTRAD CPC464
Size : 512 (Real : 512)
000000: 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 /664/6128 FIRMWA
000010: 52 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RE
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 p
000030: 61 67 65 20 31 37 2E 37 0D 0A 0D 0A 0D 0A 0D 0A age 17.7........
000040: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 49 3A ...... HI:
000050: 20 4B 4C 20 43 55 52 52 20 53 45 4C 45 43 54 49 KL CURR SELECTI
000060: 4F 4E 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ON
000070: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 #B
000090: 39 31 32 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 912......
0000A0: 41 73 6B 20 77 68 69 63 68 20 75 70 70 65 72 20 Ask which upper
0000B0: 52 4F 4D 20 69 73 20 63 75 72 72 65 6E 74 6C 79 ROM is currently
0000C0: 20 73 65 6C 65 63 74 65 64 2E 0D 0A 0D 0A 0D 0A selected.......
0000D0: 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A Action:..
0000E0: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 74 75 72 .... Retur
0000F0: 6E 73 20 74 68 65 20 52 4F 4D 20 73 65 6C 65 63 ns the ROM selec
000100: 74 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 t address of the
000110: 20 63 75 72 72 65 6E 74 6C 79 20 73 65 6C 65 63 currently selec
000120: 74 65 64 20 75 70 70 65 72 20 52 4F 4D 2E 0D 0A ted upper ROM...
000130: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 .... Entry
000140: 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A conditions:....
000150: 0D 0A 20 20 20 20 20 20 20 4E 6F 20 63 6F 6E 64 .. No cond
000160: 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 itions.......
000170: 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 Exit conditi
000180: 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ons:......
000190: 20 41 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 A contains the
0001A0: 52 4F 4D 20 73 65 6C 65 63 74 20 61 64 64 72 65 ROM select addre
0001B0: 73 73 20 6F 66 20 74 68 65 20 63 75 72 72 65 6E ss of the curren
0001C0: 74 6C 79 20 73 65 6C 65 63 74 65 64 20 52 4F 4D tly selected ROM
0001D0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 6C ....... Al
0001E0: 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 l other register
0001F0: 73 20 61 6E 64 20 66 6C 61 67 73 20 70 72 65 73 s and flags pres
Size : 512 (Real : 512)
000000: 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 erved.......
000010: 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A 20 Notes:......
000020: 20 20 20 20 20 20 49 74 20 69 73 20 6E 6F 74 20 It is not
000030: 70 6F 73 73 69 62 6C 65 20 20 74 6F 20 20 70 72 possible to pr
000040: 65 64 69 63 74 20 20 74 68 65 20 20 52 4F 4D 20 edict the ROM
000050: 20 73 65 6C 65 63 74 20 20 61 64 64 72 65 73 73 select address
000060: 20 20 77 68 69 63 68 20 20 61 6E 79 0D 0A 20 20 which any..
000070: 20 20 20 20 20 70 61 72 74 69 63 75 6C 61 72 20 particular
000080: 65 78 70 61 6E 73 69 6F 6E 20 52 4F 4D 20 77 69 expansion ROM wi
000090: 6C 6C 20 62 65 20 66 69 74 74 65 64 2E 20 54 68 ll be fitted. Th
0000A0: 65 20 20 27 66 61 72 20 20 61 64 64 72 65 73 73 e 'far address
0000B0: 27 20 20 75 73 65 64 20 20 74 6F 0D 0A 20 20 20 ' used to..
0000C0: 20 20 20 20 72 65 66 65 72 65 6E 63 65 20 73 75 reference su
0000D0: 62 72 6F 75 74 69 6E 65 73 20 69 6E 20 65 78 70 broutines in exp
0000E0: 61 6E 73 69 6F 6E 20 52 4F 4D 73 20 69 6E 63 6C ansion ROMs incl
0000F0: 75 64 65 73 20 20 61 20 20 52 4F 4D 20 20 73 65 udes a ROM se
000100: 6C 65 63 74 20 20 62 79 74 65 0D 0A 20 20 20 20 lect byte..
000110: 20 20 20 77 68 69 63 68 20 6D 75 73 74 20 62 65 which must be
000120: 20 73 65 74 20 75 70 20 61 74 20 72 75 6E 20 74 set up at run t
000130: 69 6D 65 2E 20 54 68 69 73 20 72 6F 75 74 69 6E ime. This routin
000140: 65 20 72 65 74 75 72 6E 73 20 74 68 65 20 52 4F e returns the RO
000150: 4D 20 20 73 65 6C 65 63 74 0D 0A 20 20 20 20 20 M select..
000160: 20 20 61 64 64 72 65 73 73 20 6F 66 20 74 68 65 address of the
000170: 20 63 75 72 72 65 6E 74 20 52 4F 4D 20 20 73 6F current ROM so
000180: 20 20 74 68 61 74 20 20 69 74 20 20 63 61 6E 20 that it can
000190: 20 73 65 74 20 20 75 70 20 20 73 75 69 74 61 62 set up suitab
0001A0: 6C 65 20 20 27 66 61 72 0D 0A 20 20 20 20 20 20 le 'far..
0001B0: 20 61 64 64 72 65 73 73 65 73 27 2E 0D 0A 0D 0A addresses'.....
0001C0: 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 .... Relat
0001D0: 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D ed entries:.....
0001E0: 0A 20 20 20 20 20 20 20 4B 4C 20 50 52 4F 42 45 . KL PROBE
0001F0: 20 52 4F 4D 0D 0A 20 20 20 20 20 20 20 4B 4C 20 ROM.. KL
Size : 512 (Real : 512)
000000: 52 4F 4D 20 53 45 4C 45 43 54 0D 0A 0D 0A 0D 0A ROM SELECT......
000010: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000020: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000030: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
000040: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
000050: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
000060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 pa
000070: 67 65 20 31 37 2E 38 0D 0A 0D 0A 0D 0A 0D 0A 0D ge 17.8.........
000080: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 49 3A 20 ..... HI:
000090: 4B 4C 20 50 52 4F 42 45 20 52 4F 4D 20 20 20 20 KL PROBE ROM
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 39 #B9
0000D0: 31 35 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 15...... A
0000E0: 73 6B 20 63 6C 61 73 73 20 61 6E 64 20 76 65 72 sk class and ver
0000F0: 73 69 6F 6E 20 6F 66 20 61 20 52 4F 4D 2E 0D 0A sion of a ROM...
000100: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F .... Actio
000110: 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 n:...... T
000120: 68 65 20 66 69 72 73 74 20 66 65 77 20 62 79 74 he first few byt
000130: 65 73 20 20 6F 66 20 20 61 6C 6C 20 20 75 70 70 es of all upp
000140: 65 72 20 20 52 4F 4D 73 20 20 63 6F 6E 74 61 69 er ROMs contai
000150: 6E 20 20 69 6E 66 6F 72 6D 61 74 69 6F 6E 20 20 n information
000160: 69 6E 20 20 61 0D 0A 20 20 20 20 20 20 20 73 74 in a.. st
000170: 61 6E 64 61 72 64 20 66 6F 72 6D 20 61 62 6F 75 andard form abou
000180: 74 20 74 68 65 20 52 4F 4D 2E 20 54 68 69 73 20 t the ROM. This
000190: 72 6F 75 74 69 6E 65 20 20 65 78 74 72 61 63 74 routine extract
0001A0: 73 20 20 74 68 65 20 20 63 6C 61 73 73 2C 20 20 s the class,
0001B0: 6D 61 72 6B 0D 0A 20 20 20 20 20 20 20 6E 75 6D mark.. num
0001C0: 62 65 72 20 61 6E 64 20 76 65 72 73 69 6F 6E 20 ber and version
0001D0: 6E 75 6D 62 65 72 20 62 79 74 65 73 20 66 72 6F number bytes fro
0001E0: 6D 20 74 68 65 20 52 4F 4D 20 61 74 20 20 61 20 m the ROM at a
0001F0: 20 67 69 76 65 6E 20 20 52 4F 4D 20 20 73 65 6C given ROM sel
Size : 512 (Real : 512)
000000: 65 63 74 0D 0A 20 20 20 20 20 20 20 61 64 64 72 ect.. addr
000010: 65 73 73 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ess.......
000020: 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E Entry condition
000030: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 43 s:...... C
000040: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 4F contains the RO
000050: 4D 20 73 65 6C 65 63 74 20 61 64 64 72 65 73 73 M select address
000060: 20 6F 66 20 74 68 65 20 52 4F 4D 20 74 6F 20 70 of the ROM to p
000070: 72 6F 62 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 robe.......
000080: 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E Exit condition
000090: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 s:...... A
0000A0: 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 52 4F contains the RO
0000B0: 4D 27 73 20 63 6C 61 73 73 2E 0D 0A 20 20 20 20 M's class...
0000C0: 20 20 20 4C 20 63 6F 6E 74 61 69 6E 73 20 74 68 L contains th
0000D0: 65 20 52 4F 4D 27 73 20 6D 61 72 6B 20 6E 75 6D e ROM's mark num
0000E0: 62 65 72 0D 0A 20 20 20 20 20 20 20 48 20 63 6F ber.. H co
0000F0: 6E 74 61 69 6E 73 20 74 68 65 20 52 4F 4D 27 73 ntains the ROM's
000100: 20 76 65 72 73 69 6F 6E 20 6E 75 6D 62 65 72 2E version number.
000110: 0D 0A 0D 0A 20 20 20 20 20 20 20 42 20 61 6E 64 .... B and
000120: 20 66 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D flags corrupt..
000130: 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 65 . All othe
000140: 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 73 r registers pres
000150: 65 72 76 65 64 2E 0D 0A 0D 0A 20 20 20 20 20 20 erved.....
000160: 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 20 20 20 20 20 Notes:....
000170: 20 20 54 68 65 20 52 4F 4D 20 63 6C 61 73 73 20 The ROM class
000180: 72 65 74 75 72 6E 65 64 20 6D 61 79 20 74 61 6B returned may tak
000190: 65 20 61 6E 79 20 6F 66 20 74 68 65 20 66 6F 6C e any of the fol
0001A0: 6C 6F 77 69 6E 67 20 76 61 6C 75 65 73 3A 0D 0A lowing values:..
0001B0: 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ..
0001C0: 30 3A 20 20 20 20 20 20 20 20 46 6F 72 65 67 72 0: Foregr
0001D0: 6F 75 6E 64 20 52 4F 4D 2E 0D 0A 20 20 20 20 20 ound ROM...
0001E0: 20 20 20 20 20 20 20 20 20 31 3A 20 20 20 20 20 1:
0001F0: 20 20 20 42 61 63 6B 67 72 6F 75 6E 64 20 52 4F Background RO
Size : 512 (Real : 512)
000000: 4D 2E 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 M...
000010: 20 20 32 3A 20 20 20 20 20 20 20 20 45 78 74 65 2: Exte
000020: 6E 73 69 6F 6E 20 66 6F 72 65 67 72 6F 75 6E 64 nsion foreground
000030: 20 52 4F 4D 2E 0D 0A 20 20 20 20 20 20 20 20 20 ROM...
000040: 20 20 20 20 20 23 38 30 3A 20 20 20 20 20 20 4F #80: O
000050: 6E 20 62 6F 61 72 64 20 52 4F 4D 20 28 74 68 65 n board ROM (the
000060: 20 62 75 69 6C 74 20 69 6E 20 42 41 53 49 43 20 built in BASIC
000070: 66 6F 72 65 67 72 6F 75 6E 64 20 70 72 6F 67 72 foreground progr
000080: 61 6D 29 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 53 am)..... S
000090: 65 6C 65 63 74 69 6E 67 20 61 20 52 4F 4D 20 61 electing a ROM a
0000A0: 64 64 72 65 73 73 20 77 68 65 72 65 20 6E 6F 20 ddress where no
0000B0: 52 4F 4D 20 69 73 20 66 69 74 74 65 64 20 69 6D ROM is fitted im
0000C0: 70 6C 69 63 69 74 6C 79 20 73 65 6C 65 63 74 73 plicitly selects
0000D0: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 6F 6E the.. on
0000E0: 2D 62 6F 61 72 64 20 52 4F 4D 20 61 6E 64 20 73 -board ROM and s
0000F0: 6F 20 69 74 20 77 69 6C 6C 20 72 65 74 75 72 6E o it will return
000100: 20 23 38 30 20 61 73 20 69 74 73 20 63 6C 61 73 #80 as its clas
000110: 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 65 s..... The
000120: 20 6D 65 61 6E 69 6E 67 20 6F 66 20 74 68 65 20 meaning of the
000130: 6D 61 72 6B 20 61 6E 64 20 76 65 72 73 69 6F 6E mark and version
000140: 20 6E 75 6D 62 65 72 73 20 64 65 70 65 6E 64 73 numbers depends
000150: 20 6F 6E 20 74 68 65 20 52 4F 4D 2E 0D 0A 0D 0A on the ROM.....
000160: 20 20 20 20 20 20 20 53 65 65 20 73 65 63 74 69 See secti
000170: 6F 6E 20 31 30 20 66 6F 72 20 61 20 64 65 73 63 on 10 for a desc
000180: 72 69 70 74 69 6F 6E 20 6F 66 20 65 78 70 61 6E ription of expan
000190: 73 69 6F 6E 20 52 4F 4D 73 2E 0D 0A 0D 0A 20 20 sion ROMs.....
0001A0: 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 69 6E This routin
0001B0: 65 20 65 6E 61 62 6C 65 73 20 69 6E 74 65 72 72 e enables interr
0001C0: 75 70 74 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 upts.....
0001D0: 52 65 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A Related entries:
0001E0: 0D 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 52 4F .... KL RO
0001F0: 4D 20 53 45 4C 45 43 54 0D 0A 20 20 20 20 20 20 M SELECT..
Size : 512 (Real : 512)
000000: 20 4B 4C 20 43 55 52 52 20 53 45 4C 45 43 54 49 KL CURR SELECTI
000010: 4F 4E 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ON..............
000020: 20 20 20 20 20 20 20 41 4D 53 54 52 41 44 20 43 AMSTRAD C
000030: 50 43 34 36 34 2F 36 36 34 2F 36 31 32 38 20 46 PC464/664/6128 F
000040: 49 52 4D 57 41 52 45 20 20 20 20 20 20 20 20 20 IRMWARE
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000060: 20 20 20 20 70 61 67 65 20 31 37 2E 39 0D 0A 0D page 17.9...
000070: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ...........
000080: 20 20 48 49 3A 20 4B 4C 20 52 4F 4D 20 44 45 53 HI: KL ROM DES
000090: 45 4C 45 43 54 20 20 20 20 20 20 20 20 20 20 20 ELECT
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 23 42 39 31 38 0D 0A 0D 0A 0D 0A 20 20 #B918......
0000D0: 20 20 20 20 20 52 65 73 74 6F 72 65 20 70 72 65 Restore pre
0000E0: 76 69 6F 75 73 20 75 70 70 65 72 20 52 4F 4D 20 vious upper ROM
0000F0: 73 65 6C 65 63 74 69 6F 6E 2E 0D 0A 0D 0A 0D 0A selection.......
000100: 20 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A Action:..
000110: 0D 0A 0D 0A 20 20 20 20 20 20 20 53 65 74 20 74 .... Set t
000120: 68 65 20 52 4F 4D 20 73 74 61 74 65 20 61 6E 64 he ROM state and
000130: 20 75 70 70 65 72 20 52 4F 4D 20 73 65 6C 65 63 upper ROM selec
000140: 74 69 6F 6E 20 74 6F 20 77 68 61 74 20 74 68 65 tion to what the
000150: 79 20 77 65 72 65 20 62 65 66 6F 72 65 20 20 4B y were before K
000160: 4C 0D 0A 20 20 20 20 20 20 20 52 4F 4D 20 53 45 L.. ROM SE
000170: 4C 45 43 54 20 77 61 73 20 63 61 6C 6C 65 64 2E LECT was called.
000180: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 ...... Ent
000190: 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A ry conditions:..
0001A0: 0D 0A 0D 0A 20 20 20 20 20 20 20 43 20 63 6F 6E .... C con
0001B0: 74 61 69 6E 73 20 74 68 65 20 52 4F 4D 20 73 65 tains the ROM se
0001C0: 6C 65 63 74 20 61 64 64 72 65 73 73 20 6F 66 20 lect address of
0001D0: 74 68 65 20 70 72 65 76 69 6F 75 73 6C 79 20 73 the previously s
0001E0: 65 6C 65 63 74 65 64 20 52 4F 4D 2E 0D 0A 20 20 elected ROM...
0001F0: 20 20 20 20 20 42 20 63 6F 6E 74 61 69 6E 73 20 B contains
Size : 512 (Real : 512)
000000: 74 68 65 20 70 72 65 76 69 6F 75 73 20 52 4F 4D the previous ROM
000010: 20 73 74 61 74 65 2E 0D 0A 0D 0A 0D 0A 20 20 20 state.......
000020: 20 20 20 20 45 78 69 74 20 63 6F 6E 64 69 74 69 Exit conditi
000030: 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ons:......
000040: 20 43 20 63 6F 6E 74 61 69 6E 73 20 74 68 65 20 C contains the
000050: 52 4F 4D 20 73 65 6C 65 63 74 20 61 64 64 72 65 ROM select addre
000060: 73 73 20 6F 66 20 74 68 65 20 63 75 72 72 65 6E ss of the curren
000070: 74 6C 79 20 73 65 6C 65 63 74 65 64 20 52 4F 4D tly selected ROM
000080: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 42 20 ....... B
000090: 63 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 corrupt...
0000A0: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
0000B0: 74 65 72 73 20 61 6E 64 20 66 6C 61 67 73 20 70 ters and flags p
0000C0: 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 reserved.......
0000D0: 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A Notes:....
0000E0: 0D 0A 20 20 20 20 20 20 20 54 68 65 20 70 72 65 .. The pre
0000F0: 76 69 6F 75 73 20 52 4F 4D 20 73 65 6C 65 63 74 vious ROM select
000100: 69 6F 6E 20 61 6E 64 20 73 74 61 74 65 20 61 72 ion and state ar
000110: 65 20 74 68 65 20 76 61 6C 75 65 73 20 72 65 74 e the values ret
000120: 75 72 6E 65 64 20 62 79 20 4B 4C 20 52 4F 4D 0D urned by KL ROM.
000130: 0A 20 20 20 20 20 20 20 53 45 4C 45 43 54 2E 20 . SELECT.
000140: 54 68 65 20 63 75 72 72 65 6E 74 6C 79 20 73 65 The currently se
000150: 6C 65 63 74 65 64 20 52 4F 4D 20 72 65 74 75 72 lected ROM retur
000160: 6E 65 64 20 62 79 20 74 68 69 73 20 72 6F 75 74 ned by this rout
000170: 69 6E 65 20 69 73 20 74 68 65 20 52 4F 4D 0D 0A ine is the ROM..
000180: 20 20 20 20 20 20 20 74 68 61 74 20 77 61 73 20 that was
000190: 73 65 6C 65 63 74 65 64 20 62 79 20 63 61 6C 6C selected by call
0001A0: 69 6E 67 20 4B 4C 20 52 4F 4D 20 53 45 4C 45 43 ing KL ROM SELEC
0001B0: 54 20 28 75 6E 6C 65 73 73 20 66 75 72 74 68 65 T (unless furthe
0001C0: 72 20 20 73 65 6C 65 63 74 69 6F 6E 73 0D 0A 20 r selections..
0001D0: 20 20 20 20 20 20 68 61 76 65 20 62 65 65 6E 20 have been
0001E0: 6D 61 64 65 29 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 made).......
0001F0: 20 20 20 54 68 65 20 6D 65 63 68 61 6E 69 73 6D The mechanism
Size : 512 (Real : 512)
000000: 20 70 72 6F 76 69 64 65 64 20 20 66 6F 72 20 20 provided for
000010: 63 61 6C 6C 69 6E 67 20 20 73 75 62 72 6F 75 74 calling subrout
000020: 69 6E 65 73 20 20 69 6E 20 20 65 78 70 61 6E 73 ines in expans
000030: 69 6F 6E 20 20 52 4F 4D 73 0D 0A 20 20 20 20 20 ion ROMs..
000040: 20 20 61 75 74 6F 6D 61 74 69 63 61 6C 6C 79 20 automatically
000050: 70 65 72 66 6F 72 6D 73 20 52 4F 4D 20 73 65 6C performs ROM sel
000060: 65 63 74 69 6F 6E 20 61 73 20 72 65 71 75 69 72 ection as requir
000070: 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 ed.......
000080: 49 74 20 69 73 20 20 69 6E 61 64 76 69 73 61 62 It is inadvisab
000090: 6C 65 20 20 74 6F 20 20 73 65 6C 65 63 74 20 20 le to select
0000A0: 61 6E 6F 74 68 65 72 20 20 75 70 70 65 72 20 20 another upper
0000B0: 52 4F 4D 20 20 77 68 69 6C 73 74 20 20 65 78 65 ROM whilst exe
0000C0: 63 75 74 69 6E 67 0D 0A 20 20 20 20 20 20 20 69 cuting.. i
0000D0: 6E 73 74 72 75 63 74 69 6F 6E 73 20 69 6E 20 74 nstructions in t
0000E0: 68 65 20 75 70 70 65 72 20 52 4F 4D 2E 0D 0A 0D he upper ROM....
0000F0: 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 ... This r
000100: 6F 75 74 69 6E 65 20 65 6E 61 62 6C 65 73 20 69 outine enables i
000110: 6E 74 65 72 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A nterrupts.......
000120: 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 64 .. Related
000130: 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 20 20 20 entries:....
000140: 20 20 20 20 4B 4C 20 43 55 52 52 20 53 45 4C 45 KL CURR SELE
000150: 43 54 49 4F 4E 0D 0A 20 20 20 20 20 20 20 4B 4C CTION.. KL
000160: 20 52 4F 4D 20 52 45 53 54 4F 52 45 0D 0A 20 20 ROM RESTORE..
000170: 20 20 20 20 20 4B 4C 20 52 4F 4D 20 53 45 4C 45 KL ROM SELE
000180: 43 54 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 CT........
000190: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
0001A0: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
0001B0: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
0001C0: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
0001D0: 65 20 31 37 2E 31 30 0D 0A 0D 0A 0D 0A 0D 0A 0D e 17.10.........
0001E0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 49 3A 20 ..... HI:
0001F0: 4B 4C 20 4C 44 49 52 20 20 20 20 20 20 20 20 20 KL LDIR
Size : 512 (Real : 512)
000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000010: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 39 #B9
000030: 31 42 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4D 1B...... M
000040: 6F 76 65 20 73 74 6F 72 65 20 28 4C 44 49 52 29 ove store (LDIR)
000050: 20 77 69 74 68 20 52 4F 4D 73 20 74 75 72 6E 65 with ROMs turne
000060: 64 20 6F 66 66 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 d off.......
000070: 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D 0A 0D 0A Action:......
000080: 20 20 20 20 20 20 20 50 65 72 66 6F 72 6D 73 20 Performs
000090: 61 6E 20 4C 44 49 52 20 69 6E 73 74 72 75 63 74 an LDIR instruct
0000A0: 69 6F 6E 20 28 4C 6F 61 44 20 49 6E 63 72 65 6D ion (LoaD Increm
0000B0: 65 6E 74 20 20 61 6E 64 20 20 52 65 70 65 61 74 ent and Repeat
0000C0: 29 20 20 77 69 74 68 20 20 62 6F 74 68 0D 0A 20 ) with both..
0000D0: 20 20 20 20 20 20 75 70 70 65 72 20 61 6E 64 20 upper and
0000E0: 6C 6F 77 65 72 20 52 4F 4D 73 20 64 69 73 61 62 lower ROMs disab
0000F0: 6C 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 led.......
000100: 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E Entry condition
000110: 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 42 s:...... B
000120: 43 2C 20 44 45 2C 20 48 4C 20 61 73 20 72 65 71 C, DE, HL as req
000130: 75 69 72 65 64 20 62 79 20 74 68 65 20 4C 44 49 uired by the LDI
000140: 52 20 69 6E 73 74 72 75 63 74 69 6F 6E 2E 0D 0A R instruction...
000150: 0D 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 .... Exit
000160: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D conditions:.....
000170: 0A 20 20 20 20 20 20 20 46 2C 20 42 43 2C 20 44 . F, BC, D
000180: 45 2C 20 48 4C 20 61 73 20 73 65 74 20 62 79 20 E, HL as set by
000190: 74 68 65 20 4C 44 49 52 20 69 6E 73 74 72 75 63 the LDIR instruc
0001A0: 74 69 6F 6E 2E 0D 0A 20 20 20 20 20 20 20 41 6C tion... Al
0001B0: 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 65 72 l other register
0001C0: 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A 0D 0A s preserved.....
0001D0: 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A 0D .. Notes:.
0001E0: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 73 ..... This
0001F0: 20 72 6F 75 74 69 6E 65 20 6D 61 79 20 62 65 20 routine may be
Size : 512 (Real : 512)
000000: 75 73 65 64 20 74 6F 20 6D 6F 76 65 20 61 72 65 used to move are
000010: 61 73 20 6F 66 20 52 41 4D 20 69 72 72 65 73 70 as of RAM irresp
000020: 65 63 74 69 76 65 20 6F 66 20 74 68 65 20 20 52 ective of the R
000030: 4F 4D 0D 0A 20 20 20 20 20 20 20 73 74 61 74 65 OM.. state
000040: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 ....... Th
000050: 69 73 20 72 6F 75 74 69 6E 65 20 65 6E 61 62 6C is routine enabl
000060: 65 73 20 69 6E 74 65 72 72 75 70 74 73 2E 0D 0A es interrupts...
000070: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C ...... Rel
000080: 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D ated entries:...
000090: 0A 0D 0A 20 20 20 20 20 20 20 4B 4C 20 4C 44 44 ... KL LDD
0000A0: 52 0D 0A 20 20 20 20 20 20 20 52 41 4D 20 4C 41 R.. RAM LA
0000B0: 4D 20 28 52 53 54 20 34 29 0D 0A 0D 0A 0D 0A 0D M (RST 4).......
0000C0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D ................
0000D0: 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 .............
0000E0: 20 20 20 20 41 4D 53 54 52 41 44 20 43 50 43 34 AMSTRAD CPC4
0000F0: 36 34 2F 36 36 34 2F 36 31 32 38 20 46 49 52 4D 64/664/6128 FIRM
000100: 57 41 52 45 20 20 20 20 20 20 20 20 20 20 20 20 WARE
000110: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000120: 70 61 67 65 20 31 37 2E 31 31 0D 0A 0D 0A 0D 0A page 17.11......
000130: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 ........ H
000140: 49 3A 20 4B 4C 20 4C 44 44 52 20 20 20 20 20 20 I: KL LDDR
000150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000170: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000180: 23 42 39 31 45 0D 0A 0D 0A 0D 0A 20 20 20 20 20 #B91E......
000190: 20 20 4D 6F 76 65 20 73 74 6F 72 65 20 28 4C 44 Move store (LD
0001A0: 44 52 29 20 77 69 74 68 20 52 4F 4D 73 20 74 75 DR) with ROMs tu
0001B0: 72 6E 65 64 20 6F 66 66 2E 0D 0A 0D 0A 0D 0A 20 rned off.......
0001C0: 20 20 20 20 20 20 41 63 74 69 6F 6E 3A 0D 0A 0D Action:...
0001D0: 0A 0D 0A 20 20 20 20 20 20 20 50 65 72 66 6F 72 ... Perfor
0001E0: 6D 73 20 61 6E 20 4C 44 44 52 20 69 6E 73 74 72 ms an LDDR instr
0001F0: 75 63 74 69 6F 6E 20 28 4C 6F 61 44 20 44 65 63 uction (LoaD Dec
Size : 512 (Real : 512)
000000: 72 65 6D 65 6E 74 20 20 61 6E 64 20 20 52 65 70 rement and Rep
000010: 65 61 74 29 20 20 77 69 74 68 20 20 62 6F 74 68 eat) with both
000020: 0D 0A 20 20 20 20 20 20 20 75 70 70 65 72 20 61 .. upper a
000030: 6E 64 20 6C 6F 77 65 72 20 52 4F 4D 73 20 64 69 nd lower ROMs di
000040: 73 61 62 6C 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 sabled.......
000050: 20 20 20 20 45 6E 74 72 79 20 63 6F 6E 64 69 74 Entry condit
000060: 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 ions:......
000070: 20 20 42 43 2C 20 44 45 2C 20 48 4C 20 61 73 20 BC, DE, HL as
000080: 72 65 71 75 69 72 65 64 20 62 79 20 4C 44 44 52 required by LDDR
000090: 20 69 6E 73 74 72 75 63 74 69 6F 6E 2E 0D 0A 0D instruction....
0000A0: 0A 0D 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 ... Exit c
0000B0: 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A onditions:......
0000C0: 20 20 20 20 20 20 20 46 2C 20 42 43 2C 20 44 45 F, BC, DE
0000D0: 2C 20 48 4C 20 61 73 20 73 65 74 20 62 79 20 4C , HL as set by L
0000E0: 44 44 52 20 69 6E 73 74 72 75 63 74 69 6F 6E 2E DDR instruction.
0000F0: 0D 0A 20 20 20 20 20 20 20 41 6C 6C 20 6F 74 68 .. All oth
000100: 65 72 20 72 65 67 69 73 74 65 72 73 20 70 72 65 er registers pre
000110: 73 65 72 76 65 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 served.......
000120: 20 20 20 20 4E 6F 74 65 73 3A 0D 0A 0D 0A 0D 0A Notes:......
000130: 20 20 20 20 20 20 20 54 68 69 73 20 72 6F 75 74 This rout
000140: 69 6E 65 20 6D 61 79 20 62 65 20 75 73 65 64 20 ine may be used
000150: 74 6F 20 6D 6F 76 65 20 61 72 65 61 73 20 6F 66 to move areas of
000160: 20 52 41 4D 20 69 72 72 65 73 70 65 63 74 69 76 RAM irrespectiv
000170: 65 20 6F 66 20 74 68 65 20 20 52 4F 4D 0D 0A 20 e of the ROM..
000180: 20 20 20 20 20 20 73 74 61 74 65 2E 0D 0A 0D 0A state.....
000190: 0D 0A 20 20 20 20 20 20 20 54 68 69 73 20 72 6F .. This ro
0001A0: 75 74 69 6E 65 20 65 6E 61 62 6C 65 73 20 69 6E utine enables in
0001B0: 74 65 72 72 75 70 74 73 2E 0D 0A 0D 0A 0D 0A 0D terrupts........
0001C0: 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C 61 74 65 ... Relate
0001D0: 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D 0A 0D 0A d entries:......
0001E0: 20 20 20 20 20 20 20 4B 4C 20 4C 44 49 52 0D 0A KL LDIR..
0001F0: 20 20 20 20 20 20 20 52 41 4D 20 4C 41 4D 20 28 RAM LAM (
Size : 512 (Real : 512)
000000: 52 53 54 20 34 29 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A RST 4)..........
000010: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000020: 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 41 ........ A
000030: 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F 36 36 MSTRAD CPC464/66
000040: 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 45 20 4/6128 FIRMWARE
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
000060: 20 20 20 20 20 20 20 20 20 20 20 70 61 67 65 20 page
000070: 31 37 2E 31 32 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 17.12...........
000080: 0A 0D 0A 20 20 20 20 20 20 20 48 4C 3A 20 4B 4C ... HL: KL
000090: 20 50 4F 4C 4C 20 53 59 4E 43 48 52 4F 4E 4F 55 POLL SYNCHRONOU
0000A0: 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 S
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000C0: 20 20 20 20 20 20 20 20 20 20 20 23 42 39 32 31 #B921
0000D0: 0D 0A 0D 0A 20 20 20 20 20 20 20 43 68 65 63 6B .... Check
0000E0: 20 69 66 20 61 6E 20 65 76 65 6E 74 20 77 69 74 if an event wit
0000F0: 68 20 68 69 67 68 65 72 20 20 70 72 69 6F 72 69 h higher priori
000100: 74 79 20 20 74 68 61 6E 20 20 74 68 65 20 20 63 ty than the c
000110: 75 72 72 65 6E 74 20 20 65 76 65 6E 74 20 20 69 urrent event i
000120: 73 0D 0A 20 20 20 20 20 20 20 70 65 6E 64 69 6E s.. pendin
000130: 67 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 g..... Act
000140: 69 6F 6E 3A 0D 0A 0D 0A 20 20 20 20 20 20 20 49 ion:.... I
000150: 66 20 74 68 65 20 73 79 6E 63 68 72 6F 6E 6F 75 f the synchronou
000160: 73 20 65 76 65 6E 74 20 71 75 65 75 65 20 69 73 s event queue is
000170: 20 6E 6F 74 20 65 6D 70 74 79 20 74 68 65 6E 20 not empty then
000180: 74 68 65 20 70 72 69 6F 72 69 74 79 20 20 6F 66 the priority of
000190: 20 20 74 68 65 0D 0A 20 20 20 20 20 20 20 68 69 the.. hi
0001A0: 67 68 65 73 74 20 70 72 69 6F 72 69 74 79 20 70 ghest priority p
0001B0: 65 6E 64 69 6E 67 20 65 76 65 6E 74 20 69 73 20 ending event is
0001C0: 63 6F 6D 70 61 72 65 64 20 77 69 74 68 20 20 74 compared with t
0001D0: 68 65 20 20 63 75 72 72 65 6E 74 20 20 65 76 65 he current eve
0001E0: 6E 74 27 73 0D 0A 20 20 20 20 20 20 20 70 72 69 nt's.. pri
0001F0: 6F 72 69 74 79 20 28 69 66 20 61 6E 79 29 2E 0D ority (if any)..
Size : 512 (Real : 512)
000000: 0A 0D 0A 20 20 20 20 20 20 20 45 6E 74 72 79 20 ... Entry
000010: 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 20 conditions:....
000020: 20 20 20 20 20 20 4E 6F 20 63 6F 6E 64 69 74 69 No conditi
000030: 6F 6E 73 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 45 ons..... E
000040: 78 69 74 20 63 6F 6E 64 69 74 69 6F 6E 73 3A 0D xit conditions:.
000050: 0A 0D 0A 20 20 20 20 20 20 20 49 66 20 74 68 65 ... If the
000060: 72 65 20 69 73 20 61 20 68 69 67 68 65 72 20 70 re is a higher p
000070: 72 69 6F 72 69 74 79 20 65 76 65 6E 74 20 70 65 riority event pe
000080: 6E 64 69 6E 67 3A 0D 0A 0D 0A 20 20 20 20 20 20 nding:....
000090: 20 20 20 20 20 20 20 20 20 20 43 61 72 72 79 20 Carry
0000A0: 74 72 75 65 2E 0D 0A 0D 0A 20 20 20 20 20 20 20 true.....
0000B0: 49 66 20 74 68 65 72 65 20 69 73 20 6E 6F 20 68 If there is no h
0000C0: 69 67 68 65 72 20 70 72 69 6F 72 69 74 79 20 65 igher priority e
0000D0: 76 65 6E 74 20 70 65 6E 64 69 6E 67 3A 0D 0A 0D vent pending:...
0000E0: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
0000F0: 20 43 61 72 72 79 20 66 61 6C 73 65 2E 0D 0A 0D Carry false....
000100: 0A 20 20 20 20 20 20 20 41 6C 77 61 79 73 3A 0D . Always:.
000110: 0A 0D 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 ...
000120: 20 20 20 41 20 61 6E 64 20 6F 74 68 65 72 20 66 A and other f
000130: 6C 61 67 73 20 63 6F 72 72 75 70 74 2E 0D 0A 0D lags corrupt....
000140: 0A 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .
000150: 20 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 All other regis
000160: 74 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D ters preserved..
000170: 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 3A ... Notes:
000180: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 69 ...... Thi
000190: 73 20 72 6F 75 74 69 6E 65 20 69 73 20 69 6E 20 s routine is in
0001A0: 74 68 65 20 68 69 67 68 20 6A 75 6D 70 62 6C 6F the high jumpblo
0001B0: 63 6B 20 20 74 6F 20 20 6D 69 6E 69 6D 69 73 65 ck to minimise
0001C0: 20 20 74 68 65 20 20 6F 76 65 72 68 65 61 64 20 the overhead
0001D0: 20 6F 66 0D 0A 20 20 20 20 20 20 20 70 6F 6C 6C of.. poll
0001E0: 69 6E 67 20 66 6F 72 20 73 79 6E 63 68 72 6F 6E ing for synchron
0001F0: 6F 75 73 20 65 76 65 6E 74 73 2E 20 49 66 20 20 ous events. If
Size : 512 (Real : 512)
000000: 74 68 65 20 20 73 79 6E 63 68 72 6F 6E 6F 75 73 the synchronous
000010: 20 20 65 76 65 6E 74 20 20 71 75 65 75 65 20 20 event queue
000020: 69 73 0D 0A 20 20 20 20 20 20 20 65 6D 70 74 79 is.. empty
000030: 20 74 68 65 6E 20 74 68 65 20 72 6F 75 74 69 6E then the routin
000040: 65 20 74 61 6B 65 73 20 6F 6E 6C 79 20 61 20 66 e takes only a f
000050: 65 77 20 69 6E 73 74 72 75 63 74 69 6F 6E 73 2E ew instructions.
000060: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 57 68 69 ...... Whi
000070: 6C 65 20 61 20 73 79 6E 63 68 72 6F 6E 6F 75 73 le a synchronous
000080: 20 65 76 65 6E 74 20 69 73 20 62 65 69 6E 67 20 event is being
000090: 70 72 6F 63 65 73 73 65 64 20 74 68 65 20 4B 65 processed the Ke
0000A0: 72 6E 65 6C 20 72 65 6D 65 6D 62 65 72 73 20 20 rnel remembers
0000B0: 69 74 73 0D 0A 20 20 20 20 20 20 20 70 72 69 6F its.. prio
0000C0: 72 69 74 79 2E 20 20 54 68 65 20 20 73 79 6E 63 rity. The sync
0000D0: 68 72 6F 6E 6F 75 73 20 20 65 76 65 6E 74 20 20 hronous event
0000E0: 72 6F 75 74 69 6E 65 20 20 6D 61 79 20 20 20 69 routine may i
0000F0: 74 73 65 6C 66 20 20 20 70 6F 6C 6C 20 20 20 74 tself poll t
000100: 68 65 0D 0A 20 20 20 20 20 20 20 73 79 6E 63 68 he.. synch
000110: 72 6F 6E 6F 75 73 20 65 76 65 6E 74 20 71 75 65 ronous event que
000120: 75 65 2C 20 62 75 74 20 6F 6E 6C 79 20 65 76 65 ue, but only eve
000130: 6E 74 73 20 6F 66 20 20 61 20 20 68 69 67 68 65 nts of a highe
000140: 72 20 20 70 72 69 6F 72 69 74 79 20 20 74 68 61 r priority tha
000150: 6E 0D 0A 20 20 20 20 20 20 20 69 74 73 65 6C 66 n.. itself
000160: 20 61 72 65 20 6E 6F 74 69 66 69 65 64 20 74 6F are notified to
000170: 20 69 74 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 it.......
000180: 20 54 68 69 73 20 72 6F 75 74 69 6E 65 20 65 6E This routine en
000190: 61 62 6C 65 73 20 69 6E 74 65 72 72 75 70 74 73 ables interrupts
0001A0: 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 ....... Re
0001B0: 6C 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A lated entries:..
0001C0: 0D 0A 20 20 20 20 20 20 20 4B 4C 20 45 56 45 4E .. KL EVEN
0001D0: 54 0D 0A 20 20 20 20 20 20 20 4B 4C 20 44 4F 4E T.. KL DON
0001E0: 45 20 53 59 4E 43 0D 0A 20 20 20 20 20 20 20 4B E SYNC.. K
0001F0: 4C 20 44 4F 20 53 59 4E 43 0D 0A 20 20 20 20 20 L DO SYNC..
Size : 512 (Real : 512)
000000: 20 20 4B 4C 20 4E 45 58 54 20 53 59 4E 43 0D 0A KL NEXT SYNC..
000010: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 ..........
000020: 20 41 4D 53 54 52 41 44 20 43 50 43 34 36 34 2F AMSTRAD CPC464/
000030: 36 36 34 2F 36 31 32 38 20 46 49 52 4D 57 41 52 664/6128 FIRMWAR
000040: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 E
000050: 20 20 20 20 20 20 20 20 20 20 20 20 20 70 61 67 pag
000060: 65 20 31 37 2E 31 33 0D 0A 0D 0A 0D 0A 0D 0A 0D e 17.13.........
000070: 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 48 49 3A 20 ..... HI:
000080: 4B 4C 20 53 43 41 4E 20 4E 45 45 44 45 44 20 20 KL SCAN NEEDED
000090: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0000B0: 20 20 20 20 20 20 20 20 20 20 20 20 20 23 42 39 #B9
0000C0: 32 41 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 2A...... E
0000D0: 6E 73 75 72 65 20 6B 65 79 62 6F 61 72 64 20 69 nsure keyboard i
0000E0: 73 20 73 63 61 6E 6E 65 64 20 61 74 20 6E 65 78 s scanned at nex
0000F0: 74 20 6F 70 70 6F 72 74 75 6E 69 74 79 2E 0D 0A t opportunity...
000100: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 63 74 69 6F .... Actio
000110: 6E 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 46 n:...... F
000120: 6F 72 63 65 20 74 68 65 20 4B 65 79 20 4D 61 6E orce the Key Man
000130: 61 67 65 72 20 74 6F 20 20 73 63 61 6E 20 20 74 ager to scan t
000140: 68 65 20 20 6B 65 79 62 6F 61 72 64 20 20 77 68 he keyboard wh
000150: 65 6E 20 20 74 68 65 20 20 6E 65 78 74 20 20 74 en the next t
000160: 69 63 6B 65 72 0D 0A 20 20 20 20 20 20 20 69 6E icker.. in
000170: 74 65 72 72 75 70 74 20 6F 63 63 75 72 73 2E 20 terrupt occurs.
000180: 54 68 69 73 20 6D 61 79 20 62 65 20 75 73 65 64 This may be used
000190: 20 74 6F 20 72 65 64 75 63 65 20 74 68 65 20 20 to reduce the
0001A0: 70 72 6F 62 61 62 69 6C 69 74 79 20 20 6F 66 20 probability of
0001B0: 20 6B 65 79 0D 0A 20 20 20 20 20 20 20 70 72 65 key.. pre
0001C0: 73 73 69 6E 67 73 20 62 65 69 6E 67 20 6D 69 73 ssings being mis
0001D0: 73 65 64 20 77 68 69 6C 65 20 69 6E 74 65 72 72 sed while interr
0001E0: 75 70 74 73 20 61 72 65 20 64 69 73 61 62 6C 65 upts are disable
0001F0: 64 2E 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 45 d....... E
Size : 512 (Real : 512)
000000: 6E 74 72 79 20 63 6F 6E 64 69 74 69 6F 6E 73 3A ntry conditions:
000010: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 20 ...... No
000020: 63 6F 6E 64 69 74 69 6F 6E 73 2E 0D 0A 0D 0A 0D conditions......
000030: 0A 20 20 20 20 20 20 20 45 78 69 74 20 63 6F 6E . Exit con
000040: 64 69 74 69 6F 6E 73 3A 0D 0A 0D 0A 0D 0A 20 20 ditions:......
000050: 20 20 20 20 20 41 46 20 61 6E 64 20 48 4C 20 63 AF and HL c
000060: 6F 72 72 75 70 74 2E 0D 0A 20 20 20 20 20 20 20 orrupt...
000070: 41 6C 6C 20 6F 74 68 65 72 20 72 65 67 69 73 74 All other regist
000080: 65 72 73 20 70 72 65 73 65 72 76 65 64 2E 0D 0A ers preserved...
000090: 0D 0A 0D 0A 20 20 20 20 20 20 20 4E 6F 74 65 73 .... Notes
0000A0: 3A 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 54 68 :...... Th
0000B0: 65 20 6B 65 79 62 6F 61 72 64 20 69 73 20 6E 6F e keyboard is no
0000C0: 72 6D 61 6C 6C 79 20 20 73 63 61 6E 6E 65 64 20 rmally scanned
0000D0: 20 6F 6E 20 20 65 76 65 72 79 20 20 73 69 78 74 on every sixt
0000E0: 68 20 20 74 69 63 6B 65 72 20 20 69 6E 74 65 72 h ticker inter
0000F0: 72 75 70 74 0D 0A 20 20 20 20 20 20 20 28 65 76 rupt.. (ev
000100: 65 72 79 20 66 69 66 74 69 65 74 68 20 6F 66 20 ery fiftieth of
000110: 61 20 73 65 63 6F 6E 64 29 2E 20 57 68 69 6C 65 a second). While
000120: 20 69 6E 74 65 72 72 75 70 74 73 20 61 72 65 20 interrupts are
000130: 64 69 73 61 62 6C 65 64 20 74 68 65 20 20 74 69 disabled the ti
000140: 63 6B 73 0D 0A 20 20 20 20 20 20 20 61 72 65 20 cks.. are
000150: 6C 6F 73 74 20 61 6E 64 20 74 68 65 20 6B 65 79 lost and the key
000160: 62 6F 61 72 64 20 77 69 6C 6C 20 20 6E 6F 74 20 board will not
000170: 20 62 65 20 20 73 63 61 6E 6E 65 64 2E 20 20 49 be scanned. I
000180: 66 20 20 69 6E 74 65 72 72 75 70 74 73 20 20 61 f interrupts a
000190: 72 65 0D 0A 20 20 20 20 20 20 20 64 69 73 61 62 re.. disab
0001A0: 6C 65 64 20 66 6F 72 20 61 20 73 69 67 6E 69 66 led for a signif
0001B0: 69 63 61 6E 74 20 70 65 72 69 6F 64 20 28 6D 6F icant period (mo
0001C0: 72 65 20 74 68 61 6E 20 74 68 72 65 65 20 20 74 re than three t
0001D0: 69 63 6B 73 29 20 20 74 68 65 6E 20 20 74 68 69 icks) then thi
0001E0: 73 0D 0A 20 20 20 20 20 20 20 72 6F 75 74 69 6E s.. routin
0001F0: 65 20 73 68 6F 75 6C 64 20 62 65 20 63 61 6C 6C e should be call
Size : 512 (Real : 512)
000000: 65 64 20 6A 75 73 74 20 62 65 66 6F 72 65 20 20 ed just before
000010: 69 6E 74 65 72 72 75 70 74 73 20 20 61 72 65 20 interrupts are
000020: 20 72 65 2D 65 6E 61 62 6C 65 64 2E 20 20 49 66 re-enabled. If
000030: 0D 0A 20 20 20 20 20 20 20 69 6E 74 65 72 72 75 .. interru
000040: 70 74 73 20 61 72 65 20 64 69 73 61 62 6C 65 64 pts are disabled
000050: 20 66 6F 72 20 61 20 6C 6F 6E 67 20 74 69 6D 65 for a long time
000060: 20 28 6D 6F 72 65 20 74 68 61 6E 20 74 77 65 6C (more than twel
000070: 76 65 20 74 69 63 6B 73 29 20 20 74 68 65 6E 0D ve ticks) then.
000080: 0A 20 20 20 20 20 20 20 74 68 65 20 20 75 73 65 . the use
000090: 72 20 20 6D 69 67 68 74 20 20 63 6F 6E 73 69 64 r might consid
0000A0: 65 72 20 20 63 61 6C 6C 69 6E 67 20 20 74 68 69 er calling thi
0000B0: 73 20 20 72 6F 75 74 69 6E 65 20 20 20 61 6E 64 s routine and
0000C0: 20 20 20 72 65 2D 65 6E 61 62 6C 69 6E 67 0D 0A re-enabling..
0000D0: 20 20 20 20 20 20 20 69 6E 74 65 72 72 75 70 74 interrupt
0000E0: 73 20 66 6F 72 20 61 20 73 68 6F 72 74 20 74 69 s for a short ti
0000F0: 6D 65 20 65 76 65 72 79 20 66 69 66 74 69 65 74 me every fiftiet
000100: 68 20 6F 66 20 61 20 73 65 63 6F 6E 64 2E 0D 0A h of a second...
000110: 0D 0A 0D 0A 0D 0A 20 20 20 20 20 20 20 52 65 6C ...... Rel
000120: 61 74 65 64 20 65 6E 74 72 69 65 73 3A 0D 0A 0D ated entries:...
000130: 0A 0D 0A 20 20 20 20 20 20 20 4B 4D 20 53 43 41 ... KM SCA
000140: 4E 20 4B 45 59 53 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A N KEYS..........
000150: 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A 0D 0A ................
000160: 0D 0A 0D 0A 20 20 20 20 20 20 20 41 4D 53 54 52 .... AMSTR
000170: 41 44 20 43 50 43 34 36 34 2F 36 36 34 2F 36 31 AD CPC464/664/61
000180: 32 38 20 46 49 52 4D 57 41 52 45 20 20 20 20 20 28 FIRMWARE
000190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0001A0: 20 20 20 20 20 20 20 70 61 67 65 20 31 37 2E 31 page 17.1
0001B0: 34 0D 0A 1A 20 53 65 70 61 72 61 74 65 20 66 72 4... Separate fr
0001C0: 6F 6D 20 74 68 65 20 6D 61 69 6E 20 66 69 72 6D om the main firm
0001D0: 77 61 72 65 20 6A 75 6D 70 62 6C 6F 63 6B 20 69 ware jumpblock i
0001E0: 73 20 20 61 20 20 73 6D 61 6C 6C 20 20 6A 75 6D s a small jum
0001F0: 70 62 6C 6F 63 6B 20 20 66 6F 72 0D 0A 20 20 20 pblock for..
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
Size : 512 (Real : 512)
000000: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000010: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000020: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000030: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000040: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000050: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000060: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000070: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000080: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000090: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0000F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000100: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000110: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000120: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000130: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000140: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000150: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000160: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000170: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000180: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
000190: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001A0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001B0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001C0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001D0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001E0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
0001F0: E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 E5 ................
   
Tous droits réservés. Reproduction sans autorisation interdite. © Kukulcan