The way the VIC20 display works fascinates me, always hated fixed borders on C64. I managed to find out the memory locations to change the size of the screen but not taken it any further. I plan to learn 6502 machine code programming next year anyway (C64) and wouldn't mind trying to port some early single screen games like Oh Mummy from ZX/CPC to a +16k VIC20.
I want something more task/example based than just technical data to work from, although it needs to have technical info too. Doesn't have to be in machine code but I don't think you can use BASIC editor when using extra large screens?
Any recommendations for a jump point?
A good book or written piece about large resolutions on VIC?
Moderator: Moderators
-
- Vic 20 Drifter
- Posts: 22
- Joined: Wed May 09, 2012 11:49 pm
Re: A good book or written piece about large resolutions on VIC?
Basically when using larger screen areas on the VIC you just need to adjust the registers from $9000 to $9003 and make sure the result still fits on most display devices, otherwise your target audience will shrink considerably. Also there is the differences between PAL and NTSC so it's a good idea to use relative values to adjust the registers. From past experience areas of about 24x26 are fine on most NTSC-displays and 26x32 are fine on PAL.
You can use this from BASIC but the editor will get messed up and all cursor-commands still think the screen is 22x23. To make development easier you can use my MAXIEDIT-tool, which adjust the screen and the BASIC-editor to the new screen sizes. The thread also shows how you can implement a simple loader so you can package this with your BASIC-programs.
If you are getting more serious and use pure assembler you will do all the necessary calculations in assembler anyway, but for a start and to get a feel for the larger screen-area I would suggest using BASIC.
You can use this from BASIC but the editor will get messed up and all cursor-commands still think the screen is 22x23. To make development easier you can use my MAXIEDIT-tool, which adjust the screen and the BASIC-editor to the new screen sizes. The thread also shows how you can implement a simple loader so you can package this with your BASIC-programs.
If you are getting more serious and use pure assembler you will do all the necessary calculations in assembler anyway, but for a start and to get a feel for the larger screen-area I would suggest using BASIC.
-
- Vic 20 Drifter
- Posts: 22
- Joined: Wed May 09, 2012 11:49 pm
Re: A good book or written piece about large resolutions on VIC?
Thanks for the help
Should have said I will be doing it on a PAL machine and we're going for 28-30 columns, which I will test on my old early 80s/late 70s goldfish bowl CRTs. It's just a proof of concept really, might as well do parallel dev work for C64 and VIC. You might need a goldfish bowl CRT and PAL VIC20 to play it though!
Should point out my knowledge of the VIC20 is bare minimum, way below my understanding of how the C64 works but as the machine code routines will be identical I thought I would do ZX Spectrum type aspect game to aid cross development. I can get up to 31 columns I think on VICE but have to try it all on real CRT and VIC to see how that goes.
I found a routine to play up to 42 notes under interrupt on all 3 channels, luckily Oh Mummy music is about 40-42 notes so I could use that after a bit of tinkering to account for extra RAM. So already making the most of stacks of Commodore User mags

Should point out my knowledge of the VIC20 is bare minimum, way below my understanding of how the C64 works but as the machine code routines will be identical I thought I would do ZX Spectrum type aspect game to aid cross development. I can get up to 31 columns I think on VICE but have to try it all on real CRT and VIC to see how that goes.
I found a routine to play up to 42 notes under interrupt on all 3 channels, luckily Oh Mummy music is about 40-42 notes so I could use that after a bit of tinkering to account for extra RAM. So already making the most of stacks of Commodore User mags

-
- Vic 20 Drifter
- Posts: 22
- Joined: Wed May 09, 2012 11:49 pm
Re: A good book or written piece about large resolutions on VIC?
Thanks, will have to check it out.
Got a bit side-tracked lately on a WIP I like to call The PETSCII with no name. Was a little disappointed with The Wild Bunch on C64, not quite how I imagined nod towards open world/sandbox game on an 8bit micro.....so I decided to see how far I could take that without PETSPEED compiler (compiled BASIC wipes out states so then the game is limited to RAM not maximum disk space for a multi-load). And then I finally discovered the reverse scroll Kernal routines (hacky way to use the built in editor's insert a line into display from row x so that has also kept me at the brown breadbin as well as POKE speed improvements in PETSPEED lol
Got a bit side-tracked lately on a WIP I like to call The PETSCII with no name. Was a little disappointed with The Wild Bunch on C64, not quite how I imagined nod towards open world/sandbox game on an 8bit micro.....so I decided to see how far I could take that without PETSPEED compiler (compiled BASIC wipes out states so then the game is limited to RAM not maximum disk space for a multi-load). And then I finally discovered the reverse scroll Kernal routines (hacky way to use the built in editor's insert a line into display from row x so that has also kept me at the brown breadbin as well as POKE speed improvements in PETSPEED lol
Re: A good book or written piece about large resolutions on VIC?
this thread has a picture of the max screen size tested on my old CRT TV
-
- Vic 20 Newbie
- Posts: 6
- Joined: Mon Jan 23, 2023 10:16 pm
- Website: http://www.davevw.com
- Location: California
- Occupation: Software Engineer
Re: A good book or written piece about large resolutions on VIC?
I programmed a hires-vic-20 project last year (open source: https://github.com/davervw/hires-vic-20) which allows variable resolution. Max I got was around 216x144 and 144x208 using standard 8x16 matrix, no interrupts.
Here is a demo sped up for viewers. Sample program included at github.

https://techwithdave.davevw.com/2022/07 ... ayout.html
BASIC Extensions include commands for
Here is a demo sped up for viewers. Sample program included at github.

https://techwithdave.davevw.com/2022/07 ... ayout.html
BASIC Extensions include commands for
- COLOR, TEXT, HIRES, DELAY, PLOT, RECT, SHAPE

- javierglez
- Vic 20 Hobbyist
- Posts: 120
- Joined: Sat Jun 03, 2017 3:33 pm
- Location: Spain
Re: A good book or written piece about large resolutions on VIC?
The maximum columns I got with a 1084 was 27-28. Maybe even 29 columns, but at this point the image width was so narrow that the whole borders fit inside the screen and the edges of the CRT had an uncomfortable white glow.
It's better to stick to 26 columns for PAL, anyway regular TVs can't adjust the beam width.
VICE is misleading for this purpose.
Oh mummy is a good idea, I see it is 5 blocks and 6 lanes width, it fits perfectly in a 26 column screen with 4 columns width blocks.
It's better to stick to 26 columns for PAL, anyway regular TVs can't adjust the beam width.
VICE is misleading for this purpose.
Oh mummy is a good idea, I see it is 5 blocks and 6 lanes width, it fits perfectly in a 26 column screen with 4 columns width blocks.
- MrSterlingBS
- Vic 20 Afficionado
- Posts: 302
- Joined: Tue Jan 31, 2023 2:56 am
Re: A good book or written piece about large resolutions on VIC?
Hello,
I used a 32x32 Char Screen in the Tutorial.
http://sleepingelephant.com/ipw-web/bul ... 98#p117798
BR
Sven
I used a 32x32 Char Screen in the Tutorial.
http://sleepingelephant.com/ipw-web/bul ... 98#p117798
BR
Sven