| |
Krill
Registered: Apr 2002 Posts: 2855 |
Alt-history no-cost design changes with great value
Which things in the C-64 could have been implemented or connected differently without conceivable extra cost, for coding advantages?
Thinking of things like shuffling the chip register bits like VIC's $d011 and $d016 differently (such that some effects can be achieved with fewer register writes or less twiddling).
Or putting some IO register to $01 (and move the memory configuration somewhere else, somehow).
Maybe also having different PLA memory configurations (not necessarily more).
Or connecting external signals to the CIA port pins in a different order.
Discuss! =) |
|
... 65 posts hidden. Click here to view all posts.... |
| |
Dwangi
Registered: Dec 2001 Posts: 129 |
Maybe not an answer to the original question.
But I miss the Z-register. |
| |
Copyfault
Registered: Dec 2001 Posts: 467 |
Another what-if idea: grouping CSEL (not RSEL, mind!) and the YSCROLL-bits together in one VIC-II-control register would sometimes help to do badline- and sideborder-stuff in one go. |
| |
Krill
Registered: Apr 2002 Posts: 2855 |
Quoting CopyfaultAnother what-if idea: grouping CSEL (not RSEL, mind!) and the YSCROLL-bits together in one VIC-II-control register would sometimes help to do badline- and sideborder-stuff in one go. Just have a global border-disable bit as Oswald suggested, and be done with it. :) |
| |
Copyfault
Registered: Dec 2001 Posts: 467 |
Quoting KrillQuoting CopyfaultAnother what-if idea: grouping CSEL (not RSEL, mind!) and the YSCROLL-bits together in one VIC-II-control register would sometimes help to do badline- and sideborder-stuff in one go. Just have a global border-disable bit as Oswald suggested, and be done with it. :) Global border-disable flag is maybe the most steroidal what-if-scenario :)
But grouping CSEL and YSCROLL is not the same and may offer other things, like: opening the sideborder and repeating the textline (and supressing badlines in the following) \o/ |
| |
Krill
Registered: Apr 2002 Posts: 2855 |
Badline-disable bit, then! =) |
| |
chatGPZ
Registered: Dec 2001 Posts: 11149 |
Hungarians suggesting global border disable. Mind: blown |
| |
Count Zero
Registered: Jan 2003 Posts: 1826 |
Krill is already on a maker track and just collecting further suggestions? Much here sounds like you guys want some Amiga500 at 1MHz ... or a DTV or so? :) |
| |
Codetsu
Registered: Feb 2017 Posts: 3 |
jep DTV have all that and more
no dreams it's here ready to code |
| |
Krill
Registered: Apr 2002 Posts: 2855 |
Quoting Count ZeroKrill is already on a maker track and just collecting further suggestions? Much here sounds like you guys want some Amiga500 at 1MHz ... or a DTV or so? :) No, this is just idle musing.
Retro ≠ Vintage,
DTV ≠ C-64. |
| |
Slammer
Registered: Feb 2004 Posts: 416 |
Quote: Agreed on deinterleaving the sprite position registers
Re-arranging the pulse width bits on SID to put the eight high bits in a single register would have saved a fair bit of code - most tunes could happily leave the low four bits untouched during playback.
Putting the lowest bit of sprite X position into a separate register instead of the highest would likely have resulted in a lot of routines that left the LSB zero, but would make full screen sprite positioning a hell of a lot saner if you could live with the slightly coarser movement.
Alternately, instead of seperate registers for sprite x-msb, spriority, sprite x/y expand, sprite MCM, have a mode register for each sprite that combines those five attributes (and probably the collision flags too).
Soooo much saner for multiplexers that actually change modes.
Allow disabling of the character set images in one of the memory maps (surely just a change in PLA programming).
Bugfix stx $xxxx,y and sty $xxxx,x
I understand the logic behind the 'one control register for each sprite' but I would miss easy sprite stretching. |
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 - Next |