Login
Back to forumSee the full topicGo to last reply

Posted By

MCes
on 2023-01-13
12:03:15
 Re: "c264 jolly cart" system: a new RAM/ROM external expansion cart.

@Majikeyric
Thanks for the link, I had already noticed that wonderful work (SVS's Ultimate map)!

@siz
You are absolutely right:
I was too busy looking at the moon and fell down the well!

I think 256 bytes of writable area is the minimum for a simple and efficient write procedure that wants to move blocks of data,
so I'm thinking another way to write onto external 1 MByte (512k RAM+512k EEPROM),
for example immagin to load a register (WS: Writing Slice) that as the precedent (RCL,RCH,RTED) indicate the targhet:
RAM/EEPROM, and wich of 32 slice has to be wrote (independently if this slice is enabled to be read by CPU or TED).
now the "16k internal displacement" needs to be passed to the cart and it will done simply writing any data to the equivalent 16k displacement inside the area $C000-DFFF (also if cart is deselected).
Now we have the full-MByte address ready and it's possible to write on it simply writing in a specific cart register (WD Writing data),
Surprise: the data you are writing to the WD register will be written to the 19+1 bit address (WS+16k displacement)
and at the end of this operation the last 8 bits of the address will be incremented pointing the new WD write activity to the address next in the memory cart,
this will have a high efficiency in the routine that moves blocks of memory because inside the index cycle you has only to load with index and store without index


cycle LDA [source],X
........STA WD
........INX
........BNE cycle

registers area: inside $FDF0-$FDF7 or inside $FDF8-$FDFD

Can it be a good solution? Tips?




Back to top


Copyright © Plus/4 World Team, 2001-2024