Best 80 column scheme for VIC-20

Modding and Technical Issues

Moderator: Moderators

Post Reply
dano
Vic 20 Dabbler
Posts: 72
Joined: Wed Dec 17, 2008 9:56 pm

Best 80 column scheme for VIC-20

Post by dano »

An 80 column cart for the Vic would be neat to have, but the hardware isn't very useful without software. I've been wondering what the best (theoretical) 40/80 column device would be to get the most software support. Of course we have the Data20 and it's family which already exist, so that's maybe the most obvious. Another possibility would be something close to the 8000 series PET. Never having owned a PET I don't know if there enough software out there for it to make it worth the bother, but the system is simple enough that it may even be possible to get some PET programs running the the VIC without modification. The last thought I had was something similar to the C128, which probably has the largest user base of the three. I'm not really working on anything along these lines at this point but I've had the idea in the back of my mind for a while and I am just wondering what route makes the most sense.
User avatar
nbla000
Salmon Run
Posts: 2582
Joined: Thu Oct 13, 2005 8:58 am
Location: Italy

Post by nbla000 »

There are some vic software projects for a 40 Cols screen but I don't think there are Vic-20 programs designed for a 80 Cols screen.
Mega-Cart: the cartridge you plug in once and for all.
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

You easily get a display of 40 (fairly readable) characters per line with a pure software solution; with either a full BASIC editor emulation like FAT-40, or as output-only oriented routines like those used in MG BROWSE.

Take memory expansion carts for the VIC-20. They are quite common, a good deal of programs exists which actually use them, but they do not require a special "brand" of a certain, say +16K, expansion. These all work equally well.

In converse, the different display adapter cards are not really compatible to each other, or to the 22 column display beyond simple BASIC programs. Most programs in machine language would simply not be aware, that enhanced display hardware was present, and why indeed should they have been? In those times, hardware abstraction at that level didn't interest anyone. Even the start address of screen memory was hardcoded in most programs.

So besides some text-oriented programs, most other programs, and certainly all of the games would not have "magically" been enhanced in resolution by the new hardware. And a program specifically written for a certain display adapter is tied to that hardware, severely limiting the audience. That program would have been better written for a machine natively supporting 80 columns.
User avatar
Schema
factor
Posts: 1430
Joined: Tue Mar 23, 2004 7:07 am
Website: http://www.jammingsignal.com
Location: Toronto, Ontario

Post by Schema »

The Data20 came with a disk of utilities that made use of the 80 column capabilities - word processor, terminal etc. ral-clan made a D64 of it a while back I think.

Another aspect is that you get dual-screen capabilities with these, you can run the 22-column and 40/80 column displays simultaneously. So that opens up possibilities for two-player games, etc.
dano
Vic 20 Dabbler
Posts: 72
Joined: Wed Dec 17, 2008 9:56 pm

Post by dano »

Sorry guys maybe I wasn't 100% clear in what I was asking. I do know of the software only solutions and that there is little out there that supports 80 column hardware for the vic. I guess what I was wondering is if, for example, I made an 80 column cart that used the PET's display hardware, could I expect to maybe get some PET programs to work on the VIC? Is there anything useful/interesting out there other than a word processor, terminal emulator, or text editor? It sounds like the Data20 may be my best best as at least a little software exists for it. Thanks everyone for the feedback so far!
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

dano wrote:I guess what I was wondering is if, for example, I made an 80 column cart that used the PET's display hardware, could I expect to maybe get some PET programs to work on the VIC?
ral-clan wrote this in another thread concerning the Data20 80 columns card:
ral-clan wrote:Oh, I should mention that a bunch of PET games will run on the VIC with this 80 column cartridge. So can see what is going on in the game, but anything that POKES to the PET screen memory locations will need to be changed to the 80 column cart screen locations.
Emphasis by me. So there's still some re-work required.
dano
Vic 20 Dabbler
Posts: 72
Joined: Wed Dec 17, 2008 9:56 pm

Post by dano »

Thanks for the link Mike, that pretty much answers my question. I had remembered some mention of PET games running on the VIC, and thought "maybe if a new 80 col chip used the same memory range as the PET it would allow programs that POKE to screen memory to run". Well, the PET's video is at 8000, right where the charater ROM is on the VIC. So that idea isn't going to work. That thread you pointed me to mentioned cloning the Data20 cart. I would be very interested in getting one if that ever happens!
User avatar
Mike
Herr VC
Posts: 4841
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

As long as BASIC is involved, it is pretty easy to install a BASIC extension, which then diverts the address being POKEd, or PEEKed from the 32768 range to the correct screen RAM address of the hardware - that is how FAT-40 does its job in the soft 40-columns mode. There you can do, for example, 'POKE32768,0', and get an '@' in the top-left corner!

Of course that scheme cannot be easily applied to machine code, unless you're adventurous enough to write a 6502 emulator in 6502 code itself. ;)
Bacon
for breakfast
Posts: 578
Joined: Mon Apr 19, 2004 8:07 am

Post by Bacon »

Mike wrote:Of course that scheme cannot be easily applied to machine code, unless you're adventurous enough to write a 6502 emulator in 6502 code itself. ;)
That has already been done :-)
Bacon
-------------------------------------------------------
Das rubbernecken Sichtseeren keepen das cotton-pickenen Hands in die Pockets muss; relaxen und watschen die Blinkenlichten.
Post Reply