PLUS4-C128-BENCHMARK-EVENT -------------------------------------------------------------------------------------------------- TOOL {Commodore Plus4}: BASIC 3.5 TOOL {Commodore C128}: BASIC 7.0 Language: BASIC Extra: none Author: Misel Zivanovic Note: (C) 2nd of AUGUST 2026 - www.lived.ch, mzretro.ch --------------------------------------------------------------------------------------------------- After the VC-20 with good success and C64 with GRAND PRIX success, Commodore decided to make a business computer for SERIOUS USERS { that's a good one, right!, hehe} Time to get serious too and see how serious this computer for serious users actually is! I will test it against the C128 which came 1 year later to the market and it was also advertised as a computer for business, for serious user {just with built-in C64 for not serious users among the serious once! All clear right. The COMMODORE STRATEGY! However let's also quickly have it compared against the C64 too, the computer for the "not so serious" people! I had zero knowledge about the Commodore Plus4 until recently {today is 04.08.2026} and after exploring it for a while now, I am allowing me to create my own Commodore Plus4 based on facts, knowledge and common sense! AND I JUST CAN'T STOP WONDERING WHY IT WASN'T DONE LIKE THAT!!?? ---------------|-----------------|-----------------|-----------------|----------------------------- | 1982 | 1984 | 1985 | 1984 ---------------|-----------------|-----------------|-----------------|----------------------------- What is it? | Commodore C64 | Commodore Plus4 | Commodore C128 | MY COMMODORE PLUS4 VERSION ---------------|-----------------|-----------------|-----------------|----------------------------- CPU: | 0.985MHz, 6502 | 1.76MHz, 7501 | 1MHz, 8502 | 1.76MHz, 7501/8501 MEMORY: | 64KB | 64KB | 128KB {2x 64KB} | 128 KB {2x 64} SCREEN: | 320x200/160x200 | 320x200/160x200 | 320x200/160x200 | 320x200/160x200 VIDEOCHIP: | VIC-II | TED | VIC-II | VIC-II HW SPRITES: | YES | NO | YES | YES SOUND: | SID | TED | SID | SID COLORS: | 16 | 121 | 16 | 121 NUMERIC KEYPAD:| NO | NO | YES | YES FLOPPY: | 1541 | 1551 | 1571 | 1551 COMPATIBILITY: | YES {C128} | NO | YES {C64} | NO ---------------|-----------------|-----------------|-----------------|----------------------------- --------------------------------------------------------------------------------------------------- *************************************************************************************************** Let's focus now on the BENCHMARKS and they came out surprisingly well in favor of the Commodore Plus4. EVERY BENCHMARK was coded by me and it's not anything like those fancy benchmarks you can find in the computer magazines from back in the days. However, I can see the speed differences in daily usage and that's all that matters to me! --------------------------------------------------------------------------------------------------- BENCHMARK 1 --------------------------------------------------------------------------------------------------- 100 graphic 1,1 110 ti$="000000" 150 for x=0 to 192 step 8 160 : color 1,((x/10) and 15)+1,5 170 : box 1,x+64,x,x+80,x+14,,1 180 next x 190 print ti/60 *************************************************************************************************** Results: Commodore Plus4 : 6.083 Commodore C128 : 6.083 This was the same, even though, Commodore Plus4 had advantage with 1.76MHz CPU. Later tests were showing that in high resolution graphics mode, the 76% faster CPU speed wasn't really beneficial for the Commodore Plus4 when only graphics commands were involved... However, there are scenarios where Commodore C128 will start eating some serious dust as soon as extras are involved which default commands are also offering. *************************************************************************************************** --------------------------------------------------------------------------------------------------- BENCHMARK 2 --------------------------------------------------------------------------------------------------- 100 ti$="000000":scnclr:print chr$(153) 110 for y=0 to 18 120 for x=0 to 39 125 a$=right$(str$(int(rnd(1)*26+64)),2) 130 char 1,x,y,a$ 140 next:next:print chr$(154) 150 print ti/60 *************************************************************************************************** Results: Commodore Plus4 : 24.83 Commodore C128 : 30.13 Approximately 25% faster is the Commodore Plus4 in this test. Commands used are practically the same. In general, the differences between BASIC 3.5 and BASIC 7.0 aren't so huge or better said: you need to search for it with a microscope. Talking about the CHAR command here... I did the test also in GRAPHIC MODE {GRAPHIC 1,1} and the results were the same. *************************************************************************************************** --------------------------------------------------------------------------------------------------- BENCHMARK 3 --------------------------------------------------------------------------------------------------- 10 ti$="000000":scnclr 20 a$="clear the way! faster than light" 30 for y=0 to 18 40 print a$ 50 next 60 print:print ti/60 --------------------------------------------------------------------------------------------------- *************************************************************************************************** Results: Commodore Plus4 : 0.333 Commodore C128 : 0.483 Approximately 45% difference here. Commodore C128 clearly lost this one too. The string output is visibly faster on Commodore Plus4. This is actually great for games when you don't "speak" assembly language. Too bad Commodore made exactly this part be on the level of Commodore VC-20 on Plus4! {no hardware sprites, sound less good, multicolor character handling not so good {no cursor visible} *************************************************************************************************** BENCHMARK 4 --------------------------------------------------------------------------------------------------- 10 ti$="000000":graphic 1,1 20 for x=0 to 319 step 4 30 draw,0,0 to x,199 35 draw,319,0 to 319-x,199 40 next 50 char 1,1,1,str$(ti/60) 55 char 1,1,3,"hit any key" 60 getkey a$ 70 graphic 0 --------------------------------------------------------------------------------------------------- *************************************************************************************************** Results: Commodore Plus4 : 19.45 Commodore C128 : 19.68 GRAPHIC MODE is something, Commodore Plus4 doesn't like at all. No matter how you twist it, it's not getting any better even with superior {or at least MHz faster} CPU. It's like in GRAPHIC MODE, the Commodore Plus4 is going down with the frequency to 1MHz or a little bit higher, just enough to match the C128 SPEED! They are practically on the same level as soon as we are talking about high resolution graphics. I don't have the equipment to test my theory, but I strongly assume, something is limiting the Commodore Plus4 here! It's usually faster in all NOT high resolution tests. VERY SUSPECIOUS! Could also be that TED is slowing down the performance in GRAPHICS MODE? Because, as we will see, as soon as some additional calculations are involved {which is calling the CPU}, the Commodore C128 is losing all battles also in GRAPHICS MODE department! *************************************************************************************************** BENCHMARK 5 {this code will run on Commodore Plus4 and Commodore C128 without additional modification} --------------------------------------------------------------------------------------------------- 100 ti$="000000":scnclr:c1=0 110 gc=peek(162) 120 gp=peek(165) 130 if gc<>0 and gp=0 then c1=1 140 if c1=1 then a$="commodore c128" 150 if c1=0 then a$="commodore plus4" 160 print "welcome "a$ 170 if c1=1 then sd=1024:cd=55296 180 if c1=0 then sd=3072:cd=2048 190 : 200 for y=2 to 18 step 2 205 for x=2 to 37 step 2 210 char 1,x,y,chr$(18)+chr$(160) 215 next:next 220 : 300 for a=0 to 999 310 xp=peek(sd+a):cc=int(rnd(1)*15+1)+64 320 ifxp=32thenpokesd+a,81:pokecd+a,cc 330 next:print chr$(19) 350 print:printchr$(18);ti/60 --------------------------------------------------------------------------------------------------- *************************************************************************************************** Results: Commodore Plus4 : 36.733 Commodore C128 : 46.083 And again, Commodore Plus4 wins the NO HIGH RESOLUTION test! It's better approx. 27% which isn't bad at all considering the fact how COMMODORE C128 is supposed be a better business computer and it came one year later on the market than the Commodore Plus4. This is just confirming how after the COMMODORE C64, COMMODORE had absolutely zero clue what they were actually doing. Commodore Plus4 was a, not total, but a big mess up compared to C64 and COMMODORE C128 was a, not total, but a medium mess up compared to COMMODORE PLUS4. *************************************************************************************************** BENCHMARK 6 --------------------------------------------------------------------------------------------------- 100 ti$="000000":xy=2 110 ifpeek(65)<>0thenpoke 65301,0 120 ifpeek(62)<>0thencolor 0,1:color4,1 130 graphic 1,1 140 v=.25:w=.12:e=80:f=100:g=220:h=100 150 for r=0 to 120 160 v=v+.6 170 a=v*sin(r) 180 b=v*cos(r) 190 color 1,rnd(ti)*15+2,6 200 box1,e+a,f+b,e+a+xy,f+b+xy,45,0 210 w=w+.6 220 c=w*cos(v/2) 230 d=w*sin(v/2) 240 color 1,rnd(ti)*15+2,4 255 circle1,g+c,h+d,xy,xy 260 next 270 char 1,0,0,str$(ti/60) 275 char 1,1,2,"hit any key!" 280 getkey a$ 290 graphic 0 --------------------------------------------------------------------------------------------------- *************************************************************************************************** Results: Commodore Plus4 : 131.2 Commodore C128 : 161.7 Clear as a clear drop of water! Commodore C128 got finally seriously beaten in GRAPHICS MODE! As you can see, if we add some math to the regular graphics, Commodore C128 is starting to show its age... Oh wait! Commodore C128 is NEWER! What age are you talking about!?? EXACTLY! C128 got beaten by the older Commodore Plus4. Roughly and merciful speaking, Commodore C128 is here 23% slower than Commodore Plus4. However, it's easily imaginable, that this number will grow the more math complex gets. That is not 76% as we mortals would have expect from a 76% faster CPU, but win is a win. And yes, in FAST {2MHz} mode Commodore C128 has reached 77.5 seconds, which is around 70% faster than 7501, 1.76MHz! BUT, that is a blind mode where you don't see what's going on, there is no picture visible on the screen! You are basically missing all the fun. It's like driving at night with a fast car and without lights! It's unfortunately true, COMMODORE messed up every 8-bit computer after the Commodore C64! *************************************************************************************************** BENCHMARK 7 --------------------------------------------------------------------------------------------------- 100 ti$="000000":s=2 110 ifpeek(65)<>0thenpoke 65301,1+32 120 ifpeek(62)<>0thencolor 0,1:color4,1 130 graphic 1,1:d=160:e=110:v=.25 140 for r=0 to 36 step 0.1 150 v=v+.25:w=w+.5 160 x=v*sin(v) 170 y=v*cos(w) 180 color 1,rnd(ti)*15+2,6 190 box1,d+x,e+y,d+x+s,e+y+s,45,1 200 next 210 char 1,0,0,str$(ti/60) 220 char 1,1,2,"hit any key!" 230 getkey a$ 240 graphic 0 --------------------------------------------------------------------------------------------------- *************************************************************************************************** Commodore Plus4 : 41.95 Commodore C128 : 52.16 And again, 25% faster. This is clear now. As soon as additional tasks are involved, C128 must knee and show respect to older brother Commodore Plus4. I want to test that one more time and see how deep the impact really goes! How bad C128 actually is even if it came 1 year later on the market. The Commodore C128 progress was obviously going backwards and it was a Commodore's quick shot just to have something in the pocket for the upcoming event{s}. *************************************************************************************************** BENCHMARK 8 --------------------------------------------------------------------------------------------------- list list 100 ti$="000000" 110 graphic 1,1 120 for y=0 to 174 step 25 130 for x=0 to 299 step 20 140 for r=0 to 16 step 1.5 150 box 1,10+x,y+10,x+10+r,y+10+r,a,0 160 next: next: a=a+45: next 170 char 1,0,0,str$(ti/60) 180 char 1,20,0,"hit any key!" 190 getkey a$ 200 graphic 0 --------------------------------------------------------------------------------------------------- *************************************************************************************************** Commodore Plus4 : 51.25 Commodore C128 : 58.85 This will be the last test. The goal was to see where Commodore Plus4 can benefit even if the graphic commands itself are the same. As expected, as soon as any calculation is involved, like calculating a new angle, Commodore Plus4 is winning the race. I made also other intensive tests where Commodore C128 was left up to 150 seconds behind... Now it's all in the perspective, but after this tests I would dare to say that even with BASIC 3.5, not so great built-in Machine Language Monitor, the COMMODORE PLUS4 was the much better computer than COMMODORE C128... Especially if I take 121 colors into account! However, no hardware sprites, just 64KB memory and not the greatest TED as video and audio chip! And then NO NUMERIC KEYPAD ON A BUSINESS MACHINE, made it die very quickly!!! Oooppsss...COMMODORE did it again! Unfortunately, that's just COMMODORE! They know how this is done! Ongoing bad management and repeated mistakes by COMMODORE! = BANKRUPTCY! --------------------------------------------------------------------------------------------------- UPDATE, 21:48 18.08.2026 {No screenshot available for this} *************************************************************************************************** --------------------------------------------------------------------------------------------------- This will fill the screen with a specific character or characters! Ideal to draw a game background or a background for any kind of logo, big title etc. --------------------------------------------------------------------------------------------------- Commodore Plus4 version: {0.98 second} -------------------------------------------------------- 10 ti$="000000":scnclr:x=3072 20 a$="oooooooooooooooooooooooooooooooooooooooo" 25 b$="ooooooooooooooooooooooooooooooooooooooo"+chr$(19) 30 for y=0 to 23:print a$:next:print b$ 55 poke 4071,15:char 1,0,0,"" 60 print:print chr$(18)ti/60 Commodore C128 Version: {1.33 second} -------------------------------------------------------- 10 ti$="000000":scnclr:x=3072 20 a$="oooooooooooooooooooooooooooooooooooooooo" 25 b$="ooooooooooooooooooooooooooooooooooooooo"+chr$(19) 30 for y=0 to 23:print a$:next:print b$ 55 poke 2023,15:char 1,0,0,"" 60 print:print chr$(18)ti/60 ***************************************************************************************************