Home » Personal collection » Commodore disks » disk50a2_progs1.d64 » loader1
loader1
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Personal collection » Commodore disks » disk50a2_progs1.d64 |
Filename: | loader1 |
Read OK: | ✔ |
File size: | 0741 bytes |
Load address: | 0801 |
Exec address: | 0000 |
Duplicates
There is 1 duplicate copy of this file in the archive:
- Personal collection » Commodore disks » disk65a_programs_1.d64 » loader1
- Personal collection » Commodore disks » disk50a2_progs1.d64 » loader1
File contents
10 PRINTCHR$(147);CHR$(30);"ENTER ALL NUMBERS IN HEX":POKE53280,0:POKE53281,0:GOSUB710 20 INPUT"COMMAND";CO$ 30 IF CO$="LOADER" THEN 630 40 IF CO$="INPUT" THEN 180 50 IF CO$="OUTPUT" THEN 240 60 IF CO$="END" THEN END 70 IF CO$="VIEW" THEN 490 80 IF CO$="POKE" THEN 130 90 IF CO$<>"RUN" THEN PRINT"MISTAKE":GOTO20 100 INPUT"BASE ADDRESS";CO$:GOSUB 340:BA=CO 110 SYS BA 120 GOTO 20 130 INPUT"ADDRESS";CO$:GOSUB 340:AD=CO 140 IF AD>65535 OR AD<0 THEN 130 150 INPUT"VALUE (IN DECIMAL)";V 160 IF V>255 OR V<0 THEN 150 170 POKE AD,V:GOTO 20 180 INPUT"FILENAME";FO$:FO$="MC-"+FO$ 190 INPUT"BASE ADDRESS";CO$:GOSUB 340:BA=CO 200 IF BA>65535 OR BA<0 THEN 190 210 OPEN 1,8,0,FO$:INPUT#1,CO:GOSUB410:PRINT"THIS FILE WAS SAVED AT:";CO$ 220 INPUT#1,VL:IF VL=-1 THEN CLOSE 1:GOTO 20 230 POKE BA,VL:BA=BA+1:GOTO220 240 INPUT"FILENAME";FO$:FO$="MC-"+FO$ 250 INPUT"BASE ADDRESS";CO$:GOSUB340:BA=CO 260 IF BA>65535 OR BA<0 THEN 250 270 INPUT"FINISH ADDRESS";CO$:GOSUB340:FA=CO 280 IF FA>65535 THEN 270 290 IF FA<BA THEN 250 300 OPEN 1,8,1,FO$:PRINT#1,BA 310 FORL=BA TO FA 320 PRINT#1,PEEK(L):NEXT:PRINT#1,-1 330 CLOSE 1:GOTO 20 340 V$="0123456789ABCDEF":CO=0 350 FORD=1TOLEN(CO$) 360 FORL=1TO16 370 IF MID$(V$,L+1,1)=MID$(CO$,D,1) THEN 390 380 NEXT:NEXT:RETURN 390 CO=CO+((16^(LEN(CO$)-(D)))*L) 400 NEXT:NEXT:RETURN 410 IF CO>255 THEN 430 420 CO$="00"+HEX$(CO):RETURN 430 CO$=HEX$(INT(CO/256)) 440 CO$=CO$+HEX$(CO-256*INT(CO/256)) 450 RETURN 490 INPUT"BASE ADDRESS";CO$:GOSUB 340:BA=CO 500 PRINTCHR$(147); 510 FORL=BA TO BA+160 STEP 8 520 CO=L:GOSUB410:PRINTCO$;":"; 530 FOR LO=L TO L+7 540 CO=PEEK(LO):GOSUB 410:CO$=MID$(CO$,3,2):PRINTCO$;" ";:NEXT 550 FORLO=L TO L+7:IF PEEK(LO)>127 OR PEEK(LO)<32 THEN PRINT".";:GOTO570 560 PRINTCHR$(PEEK(LO)); 570 NEXT:PRINT:NEXT:PRINT:PRINT"E-END ;-BACK /-CONTINUE" 580 GET K$:IF K$="" THEN 580 590 IF K$="E" THEN 20 600 IF K$=";" THEN BA=BA-161:GOTO 500 610 IF K$="/" THEN BA=BA+161:GOTO 500 620 GOTO 580 630 INPUT"BASE ADDRESS";CO$:GOSUB 340 640 GOSUB 410:PRINTCO$;":";:INPUT P$:BA=CO-1 650 IF P$="END" THEN 20 660 IF LEN(P$)<>16 THEN 640 670 FORLO=1 TO 16 STEP 2 680 CO$=MID$(P$,LO,2):GOSUB 340 690 BA=BA+1:POKE BA,CO:NEXT:BA=BA+1 700 CO=BA:GOTO640 710 DIMHEX$(255):FORR=0TO15 720 FORX=0 TO 15:BA=(R*16)+X 730 A=R+48:IF A>57 THEN A=A+7 740 B=X+48:IF B>57 THEN B=B+7 750 HEX$(BA)=CHR$(A)+CHR$(B):NEXT 760 NEXT:RETURN
E ��(147);�(30);"ENTER ALL NUMBERS IN HEX":�53280,0:�53281,0:�710 X �"COMMAND";CO$ q � CO$�"LOADER" � 630 �( � CO$�"INPUT" � 180 �2 � CO$�"OUTPUT" � 240 �<