On Thu 01 Nov 2012 at 11:37:22 +0100, Micha? Pleban wrote: > I did not see any significance of bits 3-6. Here are the results of the > read test (please note that I also tried reading from $F000 but it > always returns ROM): I'm reformatting your results a bit. If I ignore some parts of them, I can draw some tentative conclusions. However, there must be more going on. I'm ignoring the behaviour of the I/O range here. 0000 0000 $9000 - RAM, $A000 - RAM, $B000 - RAM, $E800 - RAM 0010 1000 1010 ^ |- From this you could think that bit 0 is CR6 (I/O Peek Through)... V 0000 0001 $9000 - RAM, $A000 - RAM, $B000 - RAM, $E800 - I/O 0011 1001 1011 0000 0100 $9000 - rom, $A000 - rom, $B000 - rom, $E800 - RAM 0110 1100 1110 0000 0101 $9000 - rom, $A000 - rom, $B000 - rom, $E800 - I/O 0111 1101 1111 normal situation 1000 0000 hang 0001 1000 1001 1000 0010 $9000 - RAM, $A000 - RAM, $B000 - RAM, $E800 - I/O 1010 1000 0011 $9000 - RAM, $A000 - RAM, $B000 - RAM, $E800 - RAM 1011 ^ |- Looks like /RAM_ON, because it switches RAM at $B000 V 1000 0100 $9000 - RAM, $A000 - RAM, $B000 - rom, $E800 - I/O 1100 1000 0101 $9000 - rom, $A000 - RAM, $B000 - rom, $E800 - RAM 1101 ^ |- Looks like /RAMSEL_A, because it switches RAM at A000 V as long as /RAM_ON=1 1000 0110 $9000 - RAM, $A000 - rom, $B000 - rom, $E800 - I/O 1110 ^ |- Looks like /RAMSEL_9, likewise V 1000 0111 $9000 - rom, $A000 - rom, $B000 - rom, $E800 - RAM 1111 For the cases where it hangs, maybe there is a way to get out of it. I realised that the register at $FFF0, which contains the I/O peek through bit, aka CR6, is always accessible to write. By default, the I/O peek through is 0, I think (the whole register is reset to 00). So if you write #$40 to $FFF0 before trying to write $E888, it would map the I/O back into view. That's my theory, at least. > Michau. -Olaf. -- ___ Olaf 'Rhialto' Seibert -- There's no point being grown-up if you \X/ rhialto/at/xs4all.nl -- can't be childish sometimes. -The 4th Doctor Message was sent through the cbm-hackers mailing listReceived on 2012-11-02 12:00:05
Archive generated by hypermail 2.2.0.