| |
SIDWAVE Account closed
Registered: Apr 2002 Posts: 2238 |
DE00-DFFF
I read just about everything I could find about this memory area, but I remembered something, perhaps from a chat on IRC or something..
This mem area contains the program-counter, the last accessed line nr, cycle-counter, well - just about everything the machine does.
Is this true ?
Who knows anything ?
I can dig that any expansions put into the machine must have some input data, so naturally there has to be some important info in this memblock - but which ones exactly ?
I also read that it don't nessecarily behave the same way on every C64.
So ?
Help!!
I am also looking for a way to read the read-only registers of the SID.
My friend Kaze/TST did it once, but that program is lost forever, and he didn't code since 1988 on C64. damn.
The program was running a modified KERNAL, and it enabled us to write the music while playing, out to disk as a D400+ dump - but it was way to slow and the disk just got filled up very fast.
But it worked!
|
|
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
when you read from open i/o space you will always get the value that was on the bus last. it "contains" nothing at all unless you connect some sort of i/o expansion that maps its registers there (thats what this area is for anyways)
and as for "reading" the sid registers - its not possible either. the program your friend made probably worked the same way as the "music cruncher". it banks out i/o (and thus the sid), then calls the music routine. the music routine would then store whatever it writes into the ram at $d4xx instead of the sid, and the ram can ofcourse be read. (and to play the music at the same time, you keep track of what locations has been written to and write these values into the sid - after banking it in again ofcourse) |
| |
SIDWAVE Account closed
Registered: Apr 2002 Posts: 2238 |
Well, my DE00 area is filled with some random numbers jumping around, but upon closer inspection - they are not random. There are counters and flip/flops. |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
the $DE00 area has nothing to do with the SID. also, reading sid register is impossible except for the read only registers ofcourse. if kaze used a modified kernal i believe he switched off the I/O area and let all sid register writes go to ram instead of sid and then log them + copy them to the sid registers. |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
oops, same reply as groepaz :D |
| |
SIDWAVE Account closed
Registered: Apr 2002 Posts: 2238 |
Tell me what you know about DE00-DFFF Graham!?
Is there real´ly nothing usefull there, besides adding an expansion ?
|
| |
Hoogo
Registered: Jun 2002 Posts: 105 |
Quote: when you read from open i/o space you will always get the value that was on the bus last. it "contains" nothing at all unless you connect some sort of i/o expansion that maps its registers there (thats what this area is for anyways)
and as for "reading" the sid registers - its not possible either. the program your friend made probably worked the same way as the "music cruncher". it banks out i/o (and thus the sid), then calls the music routine. the music routine would then store whatever it writes into the ram at $d4xx instead of the sid, and the ram can ofcourse be read. (and to play the music at the same time, you keep track of what locations has been written to and write these values into the sid - after banking it in again ofcourse)
I thought about that too, but I found that it would only work if the music-routine writes only one tiome per call into the registers. And I imagined quite some effects that need more than one writing, and so I dropped that. |
| |
Graham Account closed
Registered: Dec 2002 Posts: 990 |
Quote: Tell me what you know about DE00-DFFF Graham!?
Is there real´ly nothing usefull there, besides adding an expansion ?
it is there for expansions. cartridges map parts of their rom and registers there. no cartridge attached -> no use. |
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
hoogo: yes that problem exists. another problem is that you can not say for sure which register has been written to at all, which make things even worse. however, it seems to work ok for many tunes anyway.
graham: didnt marko makäla write some little crazy program that runs in open i/o space? mmmh... or was that color-ram? *shrug* |
| |
SIDWAVE Account closed
Registered: Apr 2002 Posts: 2238 |
Hmmm... about DE00+ i found i could fuck up things by poking values to it.
About SID i made a frame-grabber that saves all poking to the SID.
Problem is, 1 min of music takes more than 64K ( I knew this beforehand).
I will now make it so it only saves the values that are different from the previous frame, then see how much RAM that takes..
LOL |
| |
iopop
Registered: Dec 2001 Posts: 317 |
@rambones: Could you care to explain why you want the data of a whole tune for a post processing scenario? Since, I guess you're aiming for the c64 as target machine of your idea? I'm just curious and if you don't want to reveal your secrets I can surely wait.. |
... 23 posts hidden. Click here to view all posts.... |
Previous - 1 | 2 | 3 | 4 - Next |