[Coco] Desired RESET behavior
Barry Nelson
barry.nelson at amobiledevice.com
Sat Jan 30 00:15:12 EST 2016
Ahem!
Don't you DARE change the default register layout!
> RETRO Innovations go4retro at go4retro.com
> Fri Jan 29 23:02:12 EST 2016
>
> On 1/28/2016 11:22 PM, Mark McDougall wrote:
> > On 29/01/2016 3:05 PM, RETRO Innovations wrote:
> >
> >> I am inclined to do 8kB.
> >> Working on it it. Looks like it is just a few macrocells, (10-15), so
> >> should be OK
> >
> > Awesome!!! ETA on finish date? ;P
> Well, the board is done and working. I am *almost" done on the SPI
> piece you needed, but trying to determine where to put it in the memory map.
>
> Thinking about register layout now.
>
> Right now, I have:
>
> $ff58: WXXX10AL - W=write FLASH, XXX=reserved, 1=switch 1 status, 0 =
> switch 0 status, A = autostart, L = LED
> $ff59: lo byte of 11 bit bank register
> $ff5a: hi 3 bits of bank register
> $ff5b: ID( $11) (Manufacturer = 1, Device = 1)
>
> For the moment I have replaced $ff5b wth the SPI R/W, but I really want
> to keep the ID (and put a version on there as well. I have 3 options:
>
> 1): Cloud-9 emulation:
>
> $ff58 --- nothing, just like Cloud-9 SuperIDE and Cloud-9 Flash
> $ff59: WNXXXXBB: SuperIDE Flash Bank register - W = write ROM, N= Native
> registers, BB = 2 bit bank value. Only the bank register values are
> returned on READ
>
> I *think* the write to ROM flasg is in bit 7. I seem to have read that
> somewhere, but can't find it now.
>
> And if N is high:
>
> $ff5a: WXXX10AL - W=write FLASH, XXX=reserved, 1=switch 1 status, 0 =
> switch 0 status, A = autostart, L = LED
> $ff5b: lo byte of 11 bit bank register
> $ff5c: hi 3 bits of bank register
> $ff5d: SPI
> $ff5e: ID( $11) (Manufacturer = 1, Device = 1)
> $ff5f: VERSION( $10) 1.0
>
> Incomplete emulation:
>
> $ff58: WXXX10AL - W=write FLASH, XXX=reserved, 1=switch 1 status, 0 =
> switch 0 status, A = autostart, L = LED
> $ff59: lo byte of 11 bit bank register
> $ff5a: hi 3 bits of bank register
> $ff5b: SPI
> $ff5c: ID( $11) (Manufacturer = 1, Device = 1)
> $ff5d: VERSION( $10) 1.0
>
> Or, a 4 register version complete emulation:
>
> $ff58: Part of the IDE registers on SuperIDE, I assume nothing on the
> Cloud-9 flash cart.
> $ff59: WNXXXXBB: SuperIDE Flash Bank register - W = write ROM, N= Native
> registers, BB = 2 bit bank value
>
> And if N is high:
>
> $ff58: WEIX10AL - W=write FLASH, E = go back to emulation, I = ID,
> X=reserved, 1=switch 1 status, 0 = switch 0 status, A = autostart, L = LED
> $ff59: lo byte of 11 bit bank register on read and write
> $ff5a: hi 3 bits of bank register on read and write
> $ff5b: SPI
>
> If I = 1:
>
> $ff58: WEIX10AL - W=write FLASH, E = go back to emulation, E = ID,
> X=reserved, 1=switch 1 status, 0 = switch 0 status, A = autostart, L = LED
> $ff59: lo byte of 11 bit bank register on write, ID on read.
> $ff5a: hi 3 bits of bank register on write, VERSION on read
> $ff5b: SPI
>
> I rather like the first one, but I know the $ffxx space is very crowded.
>
> I also need to see how the CocoSDC does it's FLASH, so see how
> compatible I can be.
>
>
>
>
> Jim
More information about the Coco
mailing list