| |
ready.
Registered: Feb 2003 Posts: 441 |
VIC pointing at RAM char set in bank 2
Hi everybody,
I need some help with programmable char sets. Using VIC bank $8000-$bfff, I want to display a char set put into RAM at $9000-$9fff (register $d018 bits set as: xxxx010x). The problem is that the VIC uses the ROM memory instead, so only the standard CBM characters apper. Using another RAM position (i.e.: $d018 bit set as: xxxx001x) gives no problem and my char set is displayed.
Is there any way to make the VIC point for char set at RAM instead of ROM at $9000-$9fff?
thanx,
Ready. |
|
| |
Tch Account closed
Registered: Sep 2004 Posts: 512 |
No. |
| |
WVL
Registered: Mar 2002 Posts: 902 |
hehe..
No.
[hmm.. then again, I think you can in Ultimax mode (never tried it myself, so not 100% sure), but you _don't_ want to go to Ultimax mode...
http://www.zimmers.net/anonftp/pub/cbm/html/c64/ultimax.html
you see the VIC will read from ram...] |
| |
MRT Account closed
Registered: Sep 2005 Posts: 149 |
No, can't be done with a regular C64...
See thread
How to disable default charsets in bank 0 and 2 |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
@WVL: A plain C64 can't go to ultimax mode, u need to assert the two other chipselect lines which only a cartridge can do, so unless a cardridge specifically allows you to change the state of those two lines you can't go to ultimax. |
| |
WVL
Registered: Mar 2002 Posts: 902 |
Quote: @WVL: A plain C64 can't go to ultimax mode, u need to assert the two other chipselect lines which only a cartridge can do, so unless a cardridge specifically allows you to change the state of those two lines you can't go to ultimax.
well, he was asking about _any_ way.. so there is atleast one.. |
| |
ready.
Registered: Feb 2003 Posts: 441 |
mmh, thanks for the very interesting infos, I suspected there was somenthing "unusual" with this and you confirmed it.
regards,
Ready. |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
@WVL: Yeah I know... just me trying to be smart. =) |
| |
ready.
Registered: Feb 2003 Posts: 441 |
During coding, I faced another problem, but I'm not sure if it's an error of my code or a feature of the VIC-II.
I want to use the RAM area $9000-$9fff for screen codes (that means that I store 4 screens in that area, pointed by the VIC using the 4 MSB of the register $d018). The problem is that I see only garbage on the screen, as if the VIC pointed to some ROM area instead of the RAM.
Question is: is the VIC in bank 2 unable to point at $9000-$9fff RAM location, be it for getting char-set info or screen info? Using a normal C64, of course.
Hope I made my doubt clear.
Thanx,
Ready. |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
The VIC has a different RAM layout as the CPU:
$0000-$0FFF = RAM
$1000-$1FFF = Charset ROM
$2000-$8FFF = RAM
$9000-$9FFF = Charset ROM
$A000-$FFFF = RAM
There is no way to change this. |
| |
yago
Registered: May 2002 Posts: 333 |
Hey ready, nice to see you coding!
$1000-$1fff and $9000-$9fff is always read from CharacterROM for the VIC, no matter if used for charset, sprite or screen.
|
... 7 posts hidden. Click here to view all posts.... |
Previous - 1 | 2 - Next |