CHAPTER 2: WELCOME TO THE MACHINE 2.1 HOW ACORN'S MICROPROCESSOR WORKS TO CARRY OUT THE ABOVE OPERATIONS THE MICROPROCESSOR HAS AN APPENDIX C HEXADECIMAL TO DECIMAL 1st DIGIT 2nd DIGIT INTERNAL ARITHMETIC LOGIC UNIT (A.L.U.) WHOSE OUTPUT IS SENT TO AN INTERNAL REGISTER OF ONE BYTE LENGTH CALLED THE ACCUMULATOR 'A', THIS REGISTER ALSO ACTS AS ONE OF THE OPERANDS; THE OTHER BEING DRAWN FROM THE MEMORY EXTERNAL TO THE JUPROCESSOR, WHICH IS CON- NECTED TO THE /iP BY 8 LINES CALLED THE DATABUS:
0 0 0 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 1 1 17 33 49 65 81 97 113 129 145 161 177 193 209 225 241 2 2 18 34 b(A 66 82 98 114 130 146 162 178 194 210 226 242 3 3 19 35 51 67 83 99 115 131 147 163 179 195 211 227 243 4 4 20 36 52 68 84 100 116 132 148 164 180 196 212 228 244 5 5 21 37 53 69 85 ' 101 6 6 22 38 b4 70 86 1Cl2 118 134 150 166 182 198 214 230 246 7 7 23 39 55 71 87 103 119 135 151 167 183 199 215 231 247 8 8 24 40 56 72 88 104 120 136 152 168 184 200 216 232 248 9 9 25 41 b/ 73 89 105 121 137 153 169 185 201 217 233 249 A 10 26 42 58 74 90 106 122 138 154 170 186 202 218 234 250 B 11 27 43 59 75 91 107 123 139 155 171 187 203 219 235 251 C 12 28 44 60 76 92 108 124 140 156 172 188 204 220 236 252 D 13 29 45 61 77 93 E 14 3d 46 62 78 94 nd 126 142 158 174 190 206 222 238 254 F 15 31 47 63 79 95 111 127 143 159 175 191 207 223 239 255 1 2 3 4 5 6 7 8 9 A B C D E F DATABUS MEMORY 117 133 149 165 181 197 213 229 245 1(Z!9 125 141 157 173 189 205 221 237 253 DATA CAN BE TRANSFERRED ALONG THE DATABUS IN EITHER DIRECTION, THIS DIRECTION IS CHOSEN BY THE, /zP AND INDICATED TO THE EXTERNAL UNITS BY A SINGLE 'R/W' LINE :WHEN HIGH, T , THE JUP IS RECEIVING DATA FROM THE MEMORY, 'READING'; WHEN LOW, '0', THE JJLP IS SENDING DATA TO THE MEMORY, 'WRITING'.
ALL INFORMATION USED BY THE JUP TRAVELS ALONG THE DATABUS, INCLUDING THE INSTRUCTIONS. SO THAT THE JJL? HEX 100 200 400 800 1000 2000 4000 8000 10000 DEC 256 512 1024 2048 4096 8192 16384 32768 65536 KNOWS WHERE ITS INSTRUCTIONS ARE IT HAS A TWO BYTE (16 l 0 BIT) REGISTER CALLED THE PROGRAM COUNTER, 'PC, WHICH POINTS AT THE INSTRUCTIONS BEING EXECUTED. THE MEMORY CAN BE VIEWED AS A BOOK OF 256 PAGES, THE PARTICULAR PAGE BEING DECIDED BY THE MOST SIGNIFICANT 8 BITS (BITS 15-8) OF THE 16 BIT ADDRESS, EACH PAGE CON- TAINING 256 BYTES, THE PARTICULAR BYTE BEING DECIDED BY THE LEAST SIGNIFICANT8BITS (BITS7-0) OF THE 16 BIT ADDRESS.
APPENDIX D ACORN MONITOR ADDRESS INFORMATION 16 BIT ADDRESS > MEMORY ONE BYTE OF DATA ADDRESS 0000,0001 0002,0003 0004,0005 0006,0007 0008,0009 000A 000B 000C 000D LABEL MAP GAP PAP COMMENT LOW AND HIGH BYTES OF THE M ADDRESS LOW AND HIGH BYTES OF THE GO ADDRESS LOW AND HIGH BYTES OF THE BREAKPOINT ADDRESS LOW AND HIGH BYTES OF THE TAPE FROM ADDRESS LOW AND HIGH BYTES OF THE TAPE TO ADDRESS REGISTER 0: CONTAINS A AFTER BREAK. REGISTER 1: CONTAINS X AFTER BREAK. REGISTER 2: CONTAINS Y AFTER BREAK. REGISTER 3: TEMPORARI LY P AFTER BREAK, CONTAINS LAST PRESSED KEY FOR DISPLAY MSB=1 SETS REPEATEDLY SCANNED DISPLAY, OTHERWISE SINGLE SCAN.
FAP TAP IN THE KIT, PAGES FE 16 & FF 16 ARE OCCUPIED BY A NON-ERASEABLE PROGRAM TO INTERFACE BETWEEN THE MICROPROCESSOR AND THE KEYBOARD & DISPLAYUNIT.TOSTARTTHE/iPINTHISPROGRAM (ATTHE CORRECT PLACE) THERE IS A RESET BUTTON WHICH INITIALIZES THE PROGRAM COUNTER. IN PAGE00 16 THERE IS SOME ALTERABLE MEMORY, OF WHICH THE BOTTOM IF 1 6 BYTES ARE GIVEN SPECIAL USES BY THE FE 16 & FF 16 MONITOR PROGRAM, SO, UNLESS PRESSED FOR SPACE, IT'S BEST TO STAY OUT OF THEM. R0 R1 R2 R3, KEY 000E REPEAT 000F EXEC EXECUTION STATUS OF THE KEY PROCESSING ROUTINE