What's the fastest one-line 10 PRINT (maze) program we can write in Commodore 64 BASIC? To make experimental benchmarking easier, I created a small utility called Benchmark BASIC (download link below) that soft-patches the C64 BASIC and KERNAL ROMs to automatically report the run time of programs like 10 PRINT once the screen is full. Thanks to Alex Johnson for his speedy two-line version of 10 PRINT that helped inspire this video.
P.S. The thumbnail is from a joke contained IN this video - this actual frame appears just 11 seconds in. And hilariously, RU-vid automatically suggested it as the thumbnail!
To support 8-Bit Show And Tell:
Become a patron: / 8bitshowandtell
One-time donation: paypal.me/8BitShowAndTell
2nd channel: / @8-bitshowandtell247
Download the Benchmark BASIC .d64:
8bitshowandtell.com/downloads...
To use: mount/attach the .d64 image
LOAD"BENCHMARK BASIC",8,1
SYS 49152 to start
STOP+RESTORE keys to disable
To load the source code (requires REU):
LOAD"TMP+REU",8,1
SYS 32768
to view disk directory: [back arrow] *
to load: [back arrow] L
file name: bb33 (or whatever latest filename is on disk)
cursor keys to navigate source file
[back arrow] 3
press S to start
The REU is required to assemble to RAM at $C000 (where Benchmark BASIC lives) because Turbo Macro Pro also uses that memory range. But if you don't have access to an REU, a workaround is to assemble to disk with [back arrow] 5, and then give a filename. Once assembly is complete, you can reset the computer, load the object code with ,8,1 and SYS 49152 to start it.
Video "Optimizing With Integers in Commodore 64 BASIC?": • Optimizing With Intege...
Index:
0:00 Intro: 10 PRINT
1:36 Alex's fast 2-line 10 PRINT
5:15 TI$ benchmarking "the old way": reals vs. integers
9:09 Shortcomings of TI$ benchmarking
10:48 Introducing Benchmark BASIC
12:56 Optimizing classic 10 PRINT with BBASIC
17:11 Optimizing Alex's version
21:40 Making a faster one-line 10 PRINT
26:34 Unrolling it for extra speed
29:04 Addendum: Even more speed!
30:50 Future improvements?
33:00 Thanks!
3 авг 2024