Skip to content

Instantly share code, notes, and snippets.

@jquast
Created October 6, 2025 04:00
Show Gist options
  • Select an option

  • Save jquast/2ac7cd4fe86c75e3f8e62d9af4ea526d to your computer and use it in GitHub Desktop.

Select an option

Save jquast/2ac7cd4fe86c75e3f8e62d9af4ea526d to your computer and use it in GitHub Desktop.
petload.bas
110 dim t$(16),f$(16):for i=1 to 16:t$(i)="":f$(i)="":next
130 t$(1)="back2pet (demo!)":t$(2)="frobots4 (demo!)"
150 t$(3)="miner! (1980)":t$(4)="pbros (2023)"
170 t$(5)="tut-tut (2021)":t$(6)="3d maze ..(2021)"
190 t$(7)="escape .. (2024)":t$(8)="defender (2020)"
220 t$(9)="trekwar (2022)":t$(10)="pssp (2023)"
240 t$(11)="truchet (2025)":t$(12)="kenatron (2025)"
260 t$(13)="microchess(1978)":t$(14)="vortex (1982)"
280 t$(15)="space! (1979)":t$(16)="galaga (1982)"
330 ms$="welcome to the 2025 detroit retro gaming show! "
331 ms$=ms$+"check out this sweet commodore pet 2001-32b "
340 ct=3:sc=1:a$="":n=-1:hl=0:lk=0:ms$=ms$+" wow ! "
360 ?chr$(147):gosub 900:gosub 700
400 gosub 900:get a$:if a$<>"" then 500
415 n=-1:if ct<1 then n=1:goto 600
420 goto 400
500 if a$>="1" and a$<="9" then n=val(a$)
520 if a$>="a" and a$<="z" then n=asc(a$)-64+9
530 if a$>="A" and a$<="Z" then n=asc(a$)-96+9
550 if n<0 or n>16 then 400
600 lk=1:hl=n:gosub 700
601 if n=1 then load"back2pet",8:run
602 if n=2 then load"frobots4",8:run
603 if n=3 then load"miner",8:run
604 if n=4 then load"pbros",8:run
605 if n=5 then load"tuttut",8:run
606 if n=6 then load"3dmaze",8:run
607 if n=7 then load"efpc",8:run
608 if n=8 then load"defender",8:run
609 if n=9 then load"trekwar",8:run
610 if n=10 then load"pssp",8:run
611 if n=11 then load"truchet",8:run
612 if n=12 then load"kenatron",8:run
613 if n=13 then load"microchess",8:run
614 if n=14 then load"vortext",8:run
615 if n=15 then load"space",8:run
616 if n=16 then load"galaga",8:run
617 print "if you are reading this something went wrong":end
700 ?:?:for i=1 to 8
730 n1$=mid$("12345678",i,1):n2$=mid$("9abcdefg",i,1)
750 ?n1$;" ";t$(i);
770 ?tab(21);n2$;" ";t$(i+8):?
780 next i
800 ?:if lk=1 then 870
830 ?:?chr$(18);"select with keys [1-9, a-i]";chr$(146);
831 ?" ... ";right$(str$(ct),2)
832 return
870 ?"now loading ";chr$(18);" ";t$(hl);" ";chr$(146)
875 ?" ":return
900 ?chr$(19);chr$(18);:rem ** scrolling banner
940 s$=mid$(ms$,sc,40)+left$(ms$,sc-1)
950 if len(s$)<40 then s$=s$+left$(ms$,40-len(s$)):
960 ?left$(s$,40);
970 sc=sc+1:if sc>len(ms$) and lk=0 then ct=ct-1:sc=1:gosub 700
999 return
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment