@@alexandermirdzveli3200 It would be interesting to see a benchmark of the various graphic functions (line, circle, box, fills, etc) between the BASICs.
I had a Super Expander cartridge my impression at that time was that the Abacus compiler just did the redirect into the ROM for those additional Basic commands but didn't optimize beyond that.
All of the line-drawing routines are so slow that you can actually see each line being drawn in real time. All the different graphical systems must be using BASIC-ROM floating-point calculations instead of integer methods. The C128 version would run more than twice as fast in FAST mode, though you wouldn't be able to see the progress until it's done.
A little over 6 seconds. I showed it in a previous video but didn't do a deep dive into it th-cam.com/video/WJiK-EI7ed0/w-d-xo.htmlsi=jdwmc7wNKoP7i6Gm&t=369
@@retrooldguy9880 My bad, I had seen that video too. I am trying to learn Vision Basic so I am always looking for more content. (I hope the new version 1.1 is not so different that I have to unlearn stuff!) Thanks again for these head to head videos.
Sadly yes, All of the BASIC expansion utilities require that the cartridge/utility be present when running, even when compiled. The only one that doesn't is Vision Basic, but that's a modern compiler (2017).
@@retrooldguy9880 Didn't EPYX have some sort of BASIC environment with extended BASIC and a very nice sprite and character editors? I think you could have compile the code and it would be a stand alone program!
Yes they did. I never used it myself, but have seen it in other videos. You still need to have the expansion cartridge/software loaded for programs created with it to run.
@@retrooldguy9880 No, no. I had that system a long time ago. It was on floppy disk. No cartridge. You can distribute the final code and even sell it. Ugh, your going to force me to find this in my basement!! :D
Nice comprison! I am interested, if you could share th code here (as a text)? I would like to make a try with Commodore Plus/4. It has some compilers, but none of them make the gfx command faster, but otherwise the (on average) 1.23MHz CPU is quite capable. It would be interesting ,if the natibve and the Austrospeed complied version how perform compare to these. Many thanks in advance!
Here you go. This is the SuperExpander version. You'll have to change the graphic commands appropriately. Hope you make a video, would like to see how the Austrospeed compiler works. 10 graphic 2:scnclr:x=rnd(-ti) 20 dim a(160),s(30):n=159 30 for i=0 to n:read a(i) 40 draw ,i*2,n to i*2,n-a(i):next 50 char 1,0,21,"space to start" 60 get a$:if a$" " then 60 70 char 1,0,21,"sorting...{6 space}" 80 : 90 ti$="000000" 100 s(1)=0:s(2)=n:p=2 110 l=s(p):p=p-1:f=s(p):p=p-1:i=f 120 j=l:d=a((f+l)/2) 130 if a(i)d then j=j-1:goto 140 150 if i>j then 210 160 draw 0,i*2,n to i*2,n-a(i) 170 t=a(i):a(i)=a(j):a(j)=t 180 draw ,i*2,n to i*2,n-a(i) 190 draw ,j*2,n to j*2,n-a(j) 200 i=i+1:j=j-1 210 if i
My guess is that you're really benchmarking how
fast each system draws a line.
I'll bet most the time is spent in the line-drawing function.
Aha! That's why the difference between interpreted and compiled versions was so small.
@@alexandermirdzveli3200 It would be interesting to see a benchmark of the various graphic functions (line, circle, box, fills, etc) between the BASICs.
That was the most interesting 6 minute video I have ever seen. Well done!
My 1st computer was a Timex Sinclair.... my 2nd was a Commodore 64. Please keep up the awesomeness.
I had a Super Expander cartridge my impression at that time was that the Abacus compiler just did the redirect into the ROM for those additional Basic commands but didn't optimize beyond that.
All of the line-drawing routines are so slow that you can actually see each line being drawn in real time. All the different graphical systems must be using BASIC-ROM floating-point calculations instead of integer methods.
The C128 version would run more than twice as fast in FAST mode, though you wouldn't be able to see the progress until it's done.
How fast would the Qsort run for the modern Vision Basic compiler?
A little over 6 seconds. I showed it in a previous video but didn't do a deep dive into it
th-cam.com/video/WJiK-EI7ed0/w-d-xo.htmlsi=jdwmc7wNKoP7i6Gm&t=369
@@retrooldguy9880 My bad, I had seen that video too. I am trying to learn Vision Basic so I am always looking for more content. (I hope the new version 1.1 is not so different that I have to unlearn stuff!) Thanks again for these head to head videos.
Cool. Did not know you can do that!
I'm assuming the compiled program still needs the SuperExpander cartidge?
th-cam.com/video/JEc6udy8KnA/w-d-xo.htmlsi=ylfNGsM6h8h9a4yc&t=243
Sadly yes, All of the BASIC expansion utilities require that the cartridge/utility be present when running, even when compiled. The only one that doesn't is Vision Basic, but that's a modern compiler (2017).
@@retrooldguy9880 Didn't EPYX have some sort of BASIC environment with extended BASIC and a very nice sprite and character editors? I think you could have compile the code and it would be a stand alone program!
Yes they did. I never used it myself, but have seen it in other videos. You still need to have the expansion cartridge/software loaded for programs created with it to run.
@@retrooldguy9880 No, no. I had that system a long time ago. It was on floppy disk. No cartridge. You can distribute the final code and even sell it. Ugh, your going to force me to find this in my basement!! :D
Nice test. I see you didn't try fast mode on the 128, it will not support graphics in fast mode, but runs at about 2mhz.
Yeah. I thought it would be better to actually see it happening.
Nice comprison! I am interested, if you could share th code here (as a text)? I would like to make a try with Commodore Plus/4. It has some compilers, but none of them make the gfx command faster, but otherwise the (on average) 1.23MHz CPU is quite capable. It would be interesting ,if the natibve and the Austrospeed complied version how perform compare to these.
Many thanks in advance!
Here you go. This is the SuperExpander version. You'll have to change the graphic commands appropriately. Hope you make a video, would like to see how the Austrospeed compiler works.
10 graphic 2:scnclr:x=rnd(-ti)
20 dim a(160),s(30):n=159
30 for i=0 to n:read a(i)
40 draw ,i*2,n to i*2,n-a(i):next
50 char 1,0,21,"space to start"
60 get a$:if a$" " then 60
70 char 1,0,21,"sorting...{6 space}"
80 :
90 ti$="000000"
100 s(1)=0:s(2)=n:p=2
110 l=s(p):p=p-1:f=s(p):p=p-1:i=f
120 j=l:d=a((f+l)/2)
130 if a(i)d then j=j-1:goto 140
150 if i>j then 210
160 draw 0,i*2,n to i*2,n-a(i)
170 t=a(i):a(i)=a(j):a(j)=t
180 draw ,i*2,n to i*2,n-a(i)
190 draw ,j*2,n to j*2,n-a(j)
200 i=i+1:j=j-1
210 if i