5 ms·
Rethinking the Commodore 64 Memory Map (2018)
- jadbox 7y agoIt's incredible the amount of research and brainstorming it took to develop this solution. Does anyone know more about the author? Is this a hobby project? Either way, these optimizations [system design] are super impressive.
- csixty4 7y agoC64os is by Greg Nacu from the Toronto area. It's a hobby project along with a portable c64 he's built that's more portable than an SX-64 and much more versatile due to modern components.
- Darkphibre 7y agoHaving architect elegant solutions, and watched much of the nuance of the elegance languish in the ecosystem, I can't help but wonder: Did the original creators have exactly this in mind, and it's only just now being capitalized upon?
- jmull 7y agoI think the general idea that the VICII could use a range of addresses for one thing while the CPU used it for another was understood from the start. But I would guess the sheer inventiveness & range of things people put the C64 to was/is astonishing, even to the wildest thinker on the development team. Complete side note: The brain is a very strange thing. I read this post earlier and then started to so some work. I repeatedly found myself trying to type a double quote using SHIFT-2, which is the key combo for the PET and C64 (my first computers). Actually on the PET, it's not the 2 key, but the key where the 2 would be on a modern keyboard. Weird the way 30+ year old muscle memory is invoked.
- karmakaze 7y agoThat really was weird. I just read the post and this comment and couldn't figure out what the point was. I used an Atari that also had the double quote on the 2 and completely forgot that's not where I type them now.
- ddingus 7y agoColor computer had it there too. When I use or read about these old machines, that memory comes out. Brains are weird.
- ddingus 7y agoPerhaps, but it is more likely they provided many options, hoping it worked out. Sometimes it did not. We look back, and some machines were almost there, like the Apple GS. Still great, but with just a bit more thought, could have been amazing. Many of the better effects on C64, and other computers, were actually exploits. Bugs in the logic were found, then abused, then perfected. Most of the better titles on the old 2600 (VCS), for example, exceeded engineering specs. A bit of flexibility left in turned out to make all the difference in the world. Older machines used a combination of software and hardware. That combination turns out to be quite potent over time as people continue to explore what may be possible. Some have coaxed better color, interlaced video, and more out of a C64, despite that not being intended. The memory map options were likely flexible, "just in case", and where that was the thinking back then, it often became the max potential case.
- Annatar 7y ago"Older machines used a combination of software and hardware. That combination turns out to be quite potent over time as people continue to explore what may be possible." Makes me wonder what undiscovered things are possible with say, a SPARCStation 1+, or an Indigo2 R10000 when bit-banging the hardware directly.
- ddingus 7y agoI have wondered that about SGI machines too. One guy did explore the largely unused, shared memory graphics system that was used on the O2 and NT workstations SGI made. He made a very precise compositor. Was capable of many real time effects and sub pixel accuracy. The thing could take huge images and do real time transforms, effects at a couple hundred MHZ clock. I ran it once, in the very early 00's. Can't for the life of me seem to remember enough to get a URL.
- ddingus 7y agoA more recent example is the Parallax Propeller chip. A bunch of us pushed it's video sub-system well beyond the design spec. It could make all kinds of signals. Too fun.
- 7y ago
- egypturnash 7y agoI am pretty sure you can find similar tales of squeezing every single available byte out of the c64 in programmer diaries from the eighties. Bank-switching the VIC and SID out and dumping rarely-changing data like character sets into the space normally used for their I/O registers was not uncommon back then.
- sagebird 7y agoZooming into the grid representation of 64KB of memory reveals some fun artifacts. Tiny o’s appear kind of regularly. I don’t know what kind of resampling would account for that... maybe a mistake or a counterintuitive way to shift error among the cells?
- duskwuff 7y agoThe minor gridlines are dotted. The "tiny o's" appear where the spaces of two lines are aligned, so four dots appear around the crossing point.
- diydsp 7y agoIt's great to see someone putting so much thought into this. I've been coding heavily in hires (320x200) mode the last few weeks on this platform. Having the memory banks swappable has all kinds of fun quirks. For example, although the VIC-II could address many different 8K memory locations for the hi-res screen, only four are okay, because others would be the character ROM ($1000 and $9000). Therefore, people tend to put the music code at $1000. Also there's only one color memory for all the character mode pages and character memory is the color memory for hires mode!
- ddingus 7y agoWhat I love about all this is we managed to get networked together in time to enjoy the roots of computing together. I had no idea the fun 8 bit, and older machines would still see development and innovation. Makes me happy, and I know there is fun to be had when I get old.