I had 3 whole K of RAM (some of which was used by the system), so writing pretty much anything required machine code.
I had 3 whole K of RAM (some of which was used by the system), so writing pretty much anything required machine code.
Problem was, I didn't know how to write a game, so with the Machine Language Monitor I disassembled Jeff Minter's Gridrunner [3] and learned really wonderful tricks.
I remember, in Gridrunner there was a main loop with 20 JSRs or so and each JSR handled a piece of the game, querying the joystick, updating the spaceship, producing the sound, etc... (kinda cooperative multitasking)
It was a wonderful journey to learn all this stuff from that game and then write my own one...
Jeff, if you ever read this, thank you for that wonderful Gridrunner, not only was playing it a lot of fun, I learned a lot from you!
[1] https://retro8bitshop.com/product/commodore-vic-1213-machine... [2] http://www.lust-auf-nostalgie.de/vc20/04_software/commodore_... [3] https://en.wikipedia.org/wiki/Gridrunner
The VIC-20 had a whopping 5kB of RAM. Its basic had 3,583 bytes free.
4 kB Main RAM, 0x1000 - 0x1fff
1 kilonibble (kN?), practically 512 bytes worth color RAM, 0x9400-0x97ff
So I think you could say unexpanded VIC-20 had 5.5 kB of RAM.