Yes, it's the fastest, but the vic-20 is faster for games because of the big characters.DigitalQuirk wrote:According to Boray's link, it actually looks like a C128 running at 2Mhz is going to be the best BASIC machine.
If you could have changed one thing about the VIC...?
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
- eslapion
- ultimate expander
- Posts: 5037
- Joined: Fri Jun 23, 2006 7:50 pm
- Location: Canada
- Occupation: 8bit addict
And because the VIC, unlike the 64, does not get CPU cycles taken by the video chip...Boray wrote:Yes, it's the fastest, but the vic-20 is faster for games because of the big characters.DigitalQuirk wrote:According to Boray's link, it actually looks like a C128 running at 2Mhz is going to be the best BASIC machine.

- orion70
- VICtalian
- Posts: 4272
- Joined: Thu Feb 02, 2006 4:45 am
- Location: Piacenza, Italy
- Occupation: Biologist
It's a goblin in the *great* RPG "Sorcery" by B.Jones, see here.ral-clan wrote:Orion70, what game is your avatar from?
BTW, Brendan, if you're still lurking, how's your 1.1 RC of the game going on? Unfortunately, a new job - and moving to another city - did not help me to play and draw more maps, but I promise to do my best in the next few months.

...and because all communication between the 80 column chip of the c128 and the processor is done through just two bytes in memory. Not very handy for game programming...eslapion wrote:And because the VIC, unlike the 64, does not get CPU cycles taken by the video chip...Boray wrote:Yes, it's the fastest, but the vic-20 is faster for games because of the big characters.DigitalQuirk wrote:According to Boray's link, it actually looks like a C128 running at 2Mhz is going to be the best BASIC machine.
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
- saundby
- Vic 20 Enthusiast
- Posts: 166
- Joined: Wed Feb 22, 2006 11:55 pm
- Website: http://saundby.com/
- Location: Gold Country, CA
The one thing I'd change about the Vic is that I would have included a better BASIC, something closer to what the PET had. At the very least, PLOT and SOUND commands, though I'd not want to include everything from, say, the Super Expander. Gotta give those newbie programmers some incentive to delve into ML, after all. 
I'd be willing to give up integer variables to get a better BASIC overall.
The speed of the disk drive was never a problem from my perspective until the C-64. I never loaded anything large enough on a Vic, either that or my sense of timing had been so badly broken by the C2N that -anything- seemed fast.
On the user port--I liked the user port myself. I got a VicModem at the same time I got a cassette drive, and used the heck out of it. I was logging in to a Cyber7700 and programming LISP the day I came home with the modem. The VicModem and the user port were big selling points for me. The price of a Vic wasn't that far off from the price of a standard modem back then. In fact, I think I paid more for the Hayes 300 modem for my Kaypro than I paid for my Vic.
On 40/80 column cards, my recall is they came out at about $200 and dropped to about half that within a year. The problem was they were incompatible, and since they were nonstandard they weren't well supported in software. If the Vic -had- come out with a 6545 in it, like a PET, I think it would have distinguished itself far less than it did in the market with the VIC chip. The 6545 probably would have simplified the Vic's memory though, since it would only have needed a byte for each character on the screen, and there wouldn't have been any color memory needed. So 2000 bytes for an 80x25 display, half that for 40x25.
Commodore's engineers could have made the display colorful by adding a colorburst and phase-shifting the white output according to a chosen color. This is dead simple to do, it was one of the ways in which color was created on the TV Typewriters. Then you could have chosen a single color for the display's foreground. ML programmers could have played games with the system to change colors on a raster line by raster line basis, or try changing colors mid-scanline without too many glitches.
In fact, if Coomodore had wanted to make new silicon, adding such a circuit to a 6545 wouldn't have been too difficult, particularly if they had some left over silicon on the 6545 die.
This alternate-history speculation is always fun.
-Mark

I'd be willing to give up integer variables to get a better BASIC overall.
The speed of the disk drive was never a problem from my perspective until the C-64. I never loaded anything large enough on a Vic, either that or my sense of timing had been so badly broken by the C2N that -anything- seemed fast.
On the user port--I liked the user port myself. I got a VicModem at the same time I got a cassette drive, and used the heck out of it. I was logging in to a Cyber7700 and programming LISP the day I came home with the modem. The VicModem and the user port were big selling points for me. The price of a Vic wasn't that far off from the price of a standard modem back then. In fact, I think I paid more for the Hayes 300 modem for my Kaypro than I paid for my Vic.
On 40/80 column cards, my recall is they came out at about $200 and dropped to about half that within a year. The problem was they were incompatible, and since they were nonstandard they weren't well supported in software. If the Vic -had- come out with a 6545 in it, like a PET, I think it would have distinguished itself far less than it did in the market with the VIC chip. The 6545 probably would have simplified the Vic's memory though, since it would only have needed a byte for each character on the screen, and there wouldn't have been any color memory needed. So 2000 bytes for an 80x25 display, half that for 40x25.
Commodore's engineers could have made the display colorful by adding a colorburst and phase-shifting the white output according to a chosen color. This is dead simple to do, it was one of the ways in which color was created on the TV Typewriters. Then you could have chosen a single color for the display's foreground. ML programmers could have played games with the system to change colors on a raster line by raster line basis, or try changing colors mid-scanline without too many glitches.
In fact, if Coomodore had wanted to make new silicon, adding such a circuit to a 6545 wouldn't have been too difficult, particularly if they had some left over silicon on the 6545 die.
This alternate-history speculation is always fun.
-Mark
- eslapion
- ultimate expander
- Posts: 5037
- Joined: Fri Jun 23, 2006 7:50 pm
- Location: Canada
- Occupation: 8bit addict
PET's Basic V4 IS available for the VIC. As a matter of fact, it is me who gave it to Ward Shrake back in the late 90's. Last summer I discovered that ONE byte had been corrupted, I fixed it and sent it to Zimmer's for public availability. The additionnal commands behaves exactly like those on a PET.saundby wrote:The one thing I'd change about the Vic is that I would have included a better BASIC, something closer to what the PET had.
It is now one of the more popular options for the Ultimate Expander I make.
- saundby
- Vic 20 Enthusiast
- Posts: 166
- Joined: Wed Feb 22, 2006 11:55 pm
- Website: http://saundby.com/
- Location: Gold Country, CA
That's neat! Of course, what I was hoping for was that the Vic had shipped with a better BASIC. The poor BASIC on it was a surprise to me after using a friend's PET. I never would have guessed that Commodore would go so far backward on that. I'll have to burn a ROM of it and play around with it sometime.
-Mark
-Mark
For me, I could put up with the lack of branching statements (eg the lack of IF..THEN..ELSE..) - you just got used to how to work around them."poor BASIC" ??? I have never used a PET, but what about the VIC's BASIC is "poor"?
..but, the lack of direct disk commands was a pain. Nice to see what's on your disk without erasing contents of memory, and commands like 'Header', 'Scratch', 'Rename' etc were easier to remember. VIC wasn't really designed with many disk users in mind so I guess it wasn't too much of an issue, but on the Commodore 64 especially, the lack of these commands was an embarrassment. Compare the BBC's Basic to the C64..
-Glen
3^4 is 81.0000001
I always thought BASIC 2.0 was perfectly fine for the VIC. The lack of disk commands really wasn't a bother since, like a lot of people, I used a datassette. Some graphic and sound commands would have been nice, I guess, but a lot of that is pretty straight-forward on the VIC anyway.
When the C64 came out is when 2.0 became a dinosaur. That's when the lack of disk commands became a nuisance for me, anyway. And we all know how ridiculous it is to do sound and graphics in BASIC on a C64.
When the C64 came out is when 2.0 became a dinosaur. That's when the lack of disk commands became a nuisance for me, anyway. And we all know how ridiculous it is to do sound and graphics in BASIC on a C64.
Alan
Yes, and how slow it is on a c128 which has the commands...Alan wrote:And we all know how ridiculous it is to do sound and graphics in BASIC on a C64.
PRG Starter - a VICE helper / Vic Software (Boray Gammon, SD2IEC music player, Vic Disk Menu, Tribbles, Mega Omega, How Many 8K etc.)
One of the most difficult things about programming on the Vic (besides memory issues) is working around the limitations in Basic 2.0. I wrote quite a few programs in QBasic (my favourite); when I use some of the same commands for logic checking on the Vic, I get an error and think, "Oh, yeah," then figure out a different way around the problem. It makes the hobby of programming a Vic and a C-64 that much more of a challenge, which actually is the point for me.
I strongly suspect that the reason why the Vic and C64 used Basic 2.0 was probably because of their licensing agreement; if I recall correctly, Commodore was free to use Basic 2.0 on all of their computers without needing to compensate Microsoft. Note that on the 128, the Microsoft name comes up; apparently, I've read it comes up on some PETs to (through a SYS or POKE or something). With the C64 and Vic, I always (wrongfully) assumed that it was Commodore BASIC and that Microsoft had nothing to do with it.
I strongly suspect that the reason why the Vic and C64 used Basic 2.0 was probably because of their licensing agreement; if I recall correctly, Commodore was free to use Basic 2.0 on all of their computers without needing to compensate Microsoft. Note that on the 128, the Microsoft name comes up; apparently, I've read it comes up on some PETs to (through a SYS or POKE or something). With the C64 and Vic, I always (wrongfully) assumed that it was Commodore BASIC and that Microsoft had nothing to do with it.