computer think that you have typed LOAD FILE,8,1 so it will go off to the disk drive and LOAD the program called file. There is one carriage return left in the keyboard buffer. The cursor is now over the keyword RUN and when the RETURN is executed the computer thinks you have typed RUN. Simple isn't it? If you are confused read the explanation again and play around with the program in FIGURE 2. Quite often you will come across a program which when the loader for it is RUN, proceeds to POKE itself into the same memory locations as the loader program. This of course will not work. In order to overcome this problem you have to move the start of Basic so that the Loader program and the machine code will be at two different memory locations. Memory locations 43 and 44 (45 and 46 on the CI 28) hold the start of Basic. Location 43 holds the low byte off the address and location 44 holds the high byte. The following formulae can be used to work out the numbers to be POKED into the relevant memory locations: LOW BYTE = ADDRESS - 256* INT (ADDRESS/256) HIGH BYTE = INT (ADDRESS/ 256) Where address is the memory location where you want Basic to start One further point worth raising is that the memory location before the start of Basic should always contain a zero. For example if you had moved Basic to memory location 2000, location 1999 should be POK Ed with a zero. <strong>Commodore</strong> 128 owners have an advantage over C64 owners when it comes to SAVEing a prograrn, they have a machine code SAVE instruction in Basic 7.0 as well as the one in the monitor. C64 owners have to resort to POKEing into memory yet again. We have already said that locations 43 and 44 hold the start of Bask. Memory locations 45 and 46(47 and 48 on the CI 28) hold the memory address of' the end of Basic. Whenever a SAVE is performed the computer looks at these memory loca-tions to see what area of memory it should SAVE to whatever device you are using. If you POKE these memory locations with the start address and end address of your machine code program you will be able to SAVE your code. The C64 AND C12811 memory locations should be POKEd with the following values: 43 low byte of start address 44 high byte of start address 45 low byte of end address 46 high byte of end address The formulae already given can be used to work out the numbers to be POKE& Of course, since you have moved Basic, you will not be able to list any programs in Basic memory until you reset the memory locations to their original values. One more problem that you may come across is the fact that the machine code program to be turned into DATA statements sits at the same memory location as the Data Maker Data Maker C64 PROGRAM: DATAMAKER-C64 Please read 'LISTINGS' before entering program. 10 10 81,-145 :LN-70 :SA-4915 2 F9 20 FOR L-0 TO BL:CX-0:FOR D- O TO 15 9F 30 READ A:IF A>255THENPRINT" NUMBER TO LARGE":1.N*(1,*10S TOP 28 40 CX-CX-PA:POKE NEXT D A9 50 READ AilF A>
C64 AND C128 ill D3 Al ,56,53,48,2004 350 DATA 0,0,0,3,67,54,192,6 ,32,0,197,169,0,141,138,200, 1199 360 DATA 141,139,200,162,0,1 89,143,200,240,7,32,210,255, 00 131 4,105,1,1788 630 DATA 141,138,200,173,139 ,200,105,0,141,139,200,169,0 ,141,16,201,2103 640 DATA 141,17,201,32,154,1 97,169,16,141,18,201,32,22,1 OF 1D ,141,24,1430 910 DATA 201,96,169,255,32,2 02,197,169,255,32,202,197,24 ,173,23,201,2428 920 DATA 105,10,141,23,201,1 73,24,201,105,0,141,24,201,1 DD EF 13 4A 2C 232,76,213,2439 370 DATA 193,32,228,255,240, 251,201,89,208,11,32,222,198 ,169,255,141,2725 380 DATA 157,199,76,254,193, 201,78,208,232,169,0,141,157 ,199,162,0,2426 390 DATA 189,198,200,240,7,3 2,210,255,232,76,0,19402.22 8,255,201,2549 400 DATA 68,208,3,76,29,194, 201,77,208,242,76,14,195,162 02 12 20 88 96,176,47,1760 650 DATA 32,2,196,141,22,201 ,24,10946,201,141,16,201,17 1,17,201,1693 660 DATA 105,0,141,17,201,17 3,22,201,170,32,216,196,169, 44,32,202,1921 670 DATA 197,206,18,201,173, 18,201,208,210,32,106,197,76 ,122,195,173,2333 680 DATA 18,201,240,21,169,4 8,32,202,197,169,44,32,202,1 97,206,18,1996 57 C7 5A A9 73,23,201,1746 930 DATA 32,202,197,173,24,2 01,32,202,197,96,173,16,201, 133,99,173,2151 940 DATA 17,201,133,98,162,1 44,56,32,73,188,32,223,189,1 33,253,132,2066 950 DATA 254,160,0,177,253,2 40,13,140,21,201,32,202,197, 172,21,201,2284 960 DATA 200,76,131,197,169, 0,32,202,197,96,169,255,32,2 02,197,32,2187 ,16,32,1801 DC OB 26 61 410 DATA 234,197,173,142,200 ,208,22,162,0,189,229,200,24 0,7,32,210,2445 420 DATA 255,232,76,41,194,3 2,228,255,240,251,76,29,194, 169,1,133,2406 430 DATA 184,169,8,133,186,1 69,0,133 3,183,169,178,2345 440 DATA 133,187,169,200,133 185,173, ,188,32,192,255,32,47,196,32 142,200, ,220,197,162,2375 450 133DATA 1,32,198,255,32,207 ,255,141,19,201,32,207,255,1 41,20,201,2197 Fl A6 70 91 Ill 690 DATA 201,173,18,201,208, 238,32 3197,169,0,2143 700 DATA 32,202,197,165,251, 106,19 133,45,165,252,133,46,32,51, 7,169, 165,32,109,2010 0,32,2 710 DATA 198,96,160,0,177,65 02, ,72,24,165,65,105,1,133,65,1 65,66,1557 720 DATA 105,0,133,66,104,96 ,165,66,205,141,200,240,7,17 6,1,76,1783 730 DATA 45,196,56,96,165,65 ,205,140,200,240,2,176,245,2 4,96,32,1983 D1 5C CS 15 6A 970 DATA 202,197,24,173,23 01,105,10,141,23,201,173,24, 3 201,105,0,1803 2 980 DATA 141,24,201,173,23,2 01,32,202,197,173,24,201,32, 202,197,169,2192 990 DATA 131,32,202,197,169, 32,32,202,197,96,160,0,145,2 51,24,165,2035 1000 DATA 251,105,1,133,251, 165,252,105,0,133,252,96,56, 165,45,233,2243 1010 DATA 2,133,251,165,46,2 33,0,133,252,96,142,137,200, 160,0,185,2135 68 460 DATA 173,157,199,240,3,3 Cl 740 DATA 204,255,169,13,32,2 A8 1020 DATA 255,200,240,7,32,2 42 DD 2,165,196,76,140,194,173,138 ,200,24,105,2215 470 DATA 1,141,138,200,173,1 39,200,105,0,141,139,200,169 79 10,255,32,210,255,169,32,32, 210,255,32,2365 750 DATA 210,255,169,0,32,18 9,255,169,15,162,8,160,15,32 DE 10,255,200,76,239,197,162,0, 169,46,32,2320 1030 DATA 210,255,232,236,13 7,200,208,247,162,0,169,157, 3, ,0,141,16,1903 54 DO DF 05 42 08 F8 84 7A AF 480 DATA 201,141,17,201,32,1 54,197,169,16,141,18,201,32, 207,255,141,2123 490 DATA 22,201,32,183,255,2 08,44,173,22,201,24,109,16,2 01,141,16,1848 500 DATA 201,173,17,201,105, 0,141,17,201,173,22,201,170, 32,216,196,2066 510 DATA 169,44,32,202,197,2 06,18,201,173,18,201,208a07 ,32,106,197,2211 520 DATA 76,123,194,173,18,2 01,240,21,169,48,32,202,197, 169,44,32,1939 530 DATA 202,197,206,18,201, 173,18,201,208,238,32,106,19 7,169,0,32,2198 540 DATA 202,197,169,0,32 2,197,165,251,133,45,165,251 ; ,133,46,169,2358 550 20 DATA 1,32,195,255,32,204 ,255,32,51,165,32,109,198,96 ,162,0,1819 560 DATA 189,104,200,240,7,3 2,210,255,232,76,16,195,32,1 ,192,144,2127 570 DATA 3,76,254,193,165,20 ,141,19,201,133,65,165,21,14 1,20,201,1818 580 DATA 133,66,173,157,199, 240,3,32,165,196,162,0,189,4 C5 C3 7D BA EO BA C3 OC 9F EE 26 ,186,255,2112 760 DATA 32,192,255,162,15,3 2,198,255 01,13,240,2249 3 770 DATA 7,153,73,200,200,76 160,0,32, ,90,196,169,0,153,73,200,173 207,255,2 ,73,200,2036 780 DATA 201,48,240,3,76,126 ,196,173,74,200,201,48,240,3 8,169,73,2106 790 DATA 160,200,32,30,171,3 2,204,255,162,15,32,201,255, 169,73,32,2023 800 DATA 210,255,169,13,32,2 10,255,32,231,255,104,10402 ,228,255,240,2625 810 DATA 251,76,254,193,96,1 73,19,201,133,99,171,20,201, 133,98,162,2282 820 DATA 144,56,32,73,188,32 ,223,189,133,253,132,254,24, 173 830 3 DATA 105,25,133,34,173,1 5&,199,105,0,133,35,160,0,17 155 7,253,240,1928 , 840 DATA 6,145,34,200,76,205 199 ,196,96,134,99,169,0,133,98, , 162,144,1897 226 850 DATA 56,32,73,188,32,223 ,189,133,253,132,254,24,160, 00,177,253,2179 860 DATA 240,13,140,21,201,3 2,202,197,172,21,201,200,76, lA DD 2C 07 2C 11 18 28 28 67 F2 32,210,255,232,2942 1040 DATA 236,137,200,208,24 7,169,0,141,142,200,32,228,2 55,240,251,201,2887 1050 DATA 13,240,47,201,20,2 40,44,201,32,144.239,201,91, 176,3,76,1968 1060 DATA 58,198,201,192,144 ,228,201,219,176,224,174,142 ,200,236,137,200,2930 1070 DATA 240,216,157,178,20 0,32,210,255,238,142,200,169 ,0,133,212,76,2658 1080 DATA 26,198,96,173,142, 200,240,194,206,142,200,169, 157,32,210,255,2640 1090 DATA 169,46,32,210,255, 169,157,32,210,255,76,26,198 ,173,157,199,2364 1100 DATA 240,51,173,138,200 ,133,99,173,139,200,133,98,1 62,144,56,32,2171 1110 DATA 73,18802,223,189, 133,253,132,254,24,173,155,1 99,105,7,133,2273 1120 DATA 34,173,156,199,105 ,0,133,35,160,0,177,253,201, 6,145,34,1850 1130 DATA 200,76,154,198,96, 96,173,23,201,24,105,10,133, 99,173,24,1785 1140 DATA 201,105,0,133,98,1 6 2 A2 F7 80 21,200,240,2276 590 DATA 7,32,210,255,232,74 , ,60,195,32,3,192,144,3,76,2' 4,193,1964 , 600 DATA 165,20,141,140,200, 165,21,141,141,200,173,141,1 00,205,20,201,2274 610 DATA 240,5,144,170,76,11 A2 CO 81 238,196,96,2246 870 DATA 165,43,133,97,165,4 4,133,98,169,0,133,57,133,58 ,160,0,1588 880 DATA 177,97,200,17,97,24 0,27,160,2,177,97,133,57,200 ,177,97,1955 890 RATA 133,58,160,0,177,97 07 C4 11 289,133,253,2022 1150 DATA 132,254,24,173,155 1 ,199,105,16,133,34,173,156,1 4 4 99,105,0,133,1991 , 51160 6 DATA 35,160,0,177,253,2 , 40,6,145,34,200,76,211,198,9 6,32,220,2083 31170 2 DATA 197,165,251,141,15 6,195,173,140,200,205,19,201 ,72,200,177,97,133,98,104,13 , 5,199,165,252,141,156,199,16 C8 ,240,159,176,2459 620 DATA 3,76,14,195,32,220, 197,76,139,195,173,138,200,2 98 , 1 960 6ATA 14,197,24,165,57,10 5,10,141,23,201 ; 165,58,105,0 BA 79,255,32,202,197,2876 3 , 1180 DATA 169,255,32,202,197 ,173,23,201,32,202,197,173,2 1 8 8 , 3 2 , 2 2 YOUR COMMODORE november 1986:79 3 , 1 CLD 411.
- Page 1 and 2:
11111111 YOUR BEST INDEPENDENT COMM
- Page 3 and 4:
1 REGULARS FEATURFq Irl V L U M E 3
- Page 5 and 6:
11/11 - fl E S Tt r Ha i gT h t Ei
- Page 7 and 8:
I I I R T fl S T F I T E U E N T E
- Page 9 and 10:
'44%4 4 , L a p 4 ., _ ,• 241 .
- Page 11 and 12:
Crystal Castles Diamond Plateaus in
- Page 13 and 14:
A wmay seem like a strange concept
- Page 15 and 16:
C64 LISTING 11 I i ' Please read 'L
- Page 17 and 18:
11111111•11DIMENSION 27/29 High S
- Page 19 and 20:
Drive - which allows you to change
- Page 21 and 22:
With the Commodore disk drive it is
- Page 23 and 24:
Nearly all code will need data tabl
- Page 25 and 26:
A swhich enables you to store any s
- Page 27 and 28: Playing all sounds in memory Doing
- Page 29 and 30: 3,0375 10600ATA 4C,A1,15,AD,A7,10,C
- Page 31 and 32: SPECIAL OFFER — FREE MODEM WITH Y
- Page 33 and 34: memory you have left. MEM will disp
- Page 35 and 36: C64 REVIEWS The Newsralcom Desi91 -
- Page 37 and 38: 'po , • p • ; . • • • •
- Page 39 and 40: Checksum Program The hexadecimal nu
- Page 41 and 42: 1 Should you not have any of the ab
- Page 43 and 44: Vtt C4* 4eW computer show k9 * t Ch
- Page 45 and 46: Maintenance, Service. Support. Trai
- Page 47 and 48: O E c o m m o d olii r e At last th
- Page 49 and 50: ROJAN THE ULTIMATE IN GRAPHICS TOOL
- Page 51 and 52: RAD 28 95 AMSTRAD POW DISK 1945 ATA
- Page 53 and 54: W can a be like a stroll through a
- Page 55 and 56: 1 Games Reviews COLLAPSE REVIEWS Th
- Page 57 and 58: HOODOO VOODOO REVIEWS its detectors
- Page 59 and 60: SPEED KING The smell of petrol, the
- Page 61 and 62: of enemy lighters, its only after p
- Page 63 and 64: THE FINAL CARTRIDGEI I MO IMO oroYo
- Page 65 and 66: HARDWARE REVIEWS Pick of the Sticks
- Page 67 and 68: Y look o out for new programs, hint
- Page 69 and 70: ENT trfull arrie arp ikon the la y
- Page 71 and 72: MICROCOMPUTER HARDWARE SUPPLIES COM
- Page 73 and 74: PROGRAM: AUTOS AVE Please read 'LIS
- Page 75 and 76: EPILOG-I CARTRIDGE SYSTEM COMMODORE
- Page 77: DATA VALUES will be saved on each l
- Page 81 and 82: U page n at the sight of an acronym
- Page 83 and 84: LEAPER ••• •1 0 - 1 Amazing
- Page 85 and 86: I n data can be input into your cod
- Page 87 and 88: LISTING 6 MACHINE CODE 10 $0073 CHA
- Page 89 and 90: P P . A 0 • 7 TELETE\ i _c t C 0-
- Page 91 and 92: program allows you to set up the co
- Page 93 and 94: Going from left to right across the
- Page 95 and 96: Lineage: 45p per word. (52p incl. V
- Page 97 and 98: SOFTWARE LIBRARY MIDLAND COMPUTER L
- Page 100: k_ *8 digitally recorded drum sound