What is the relationship between TIME and the registers $A130F1~$A130FF?
So by default the TIME pin is in HIGH state (inactive), when I do a MOVE.b #1, $A130F1, it becomes LOW? or it just pulses (Fosc=?)?
And if I do a MOVE.b #$FF, A130FF, what happens?, or any #$xx to any of the registers?
What if I do word/dword acesses?
Is there any information about this, besides the 40Mbit-SSF doc?
There are no registers at $A13000-$A130FF. Not unless they are in a specific cartridge, in which case you should mention which cartridge you are asking about.
/TIME is a chip select for the address range $A13000-$A130FF, just as /ROM_CE is a chip select for the address range $000000-$3FFFFF. I have been able to use it as an I/O port to both read and write an I2C EEPROM chip. (WR_L and WR_H are used for writes, just as they would be used with a RAM chip)
It supposedly got its name because someone in Japan thought it would be a good idea to put a real-time clock chip on a cartridge. It's certainly too small for a decent RAM chip.
If it had been made $A13000-$A13FFF, games could have had 2K or 4K of battery backup RAM with no extra decoding chips. (a battery management chip would still have been necessary) But I'm pretty sure that I checked and $A13100 locks up the system, meaning there is no DTACK for that address.
Ok no registers... so they are just addresses... fine, no I'm not talking about any particular cart.
The data types make no difference, since there aren't any regs...
Its just Move 1234 to A13000, TIME goes low, 1234 on data bus and that's it?
Then there isn't nothing special about it? It just maps 256 positions, bytes, words, Membanks, whatever...
I thought it was more "functional", I mean configurable HEHE.
I meant with minimal external hardware LOL , with logic gates everything digital is configurable...
Crap, in these days you can even pickup a fpga/pal/cpld, to reduce the onboard complexity and program anything on any 68K address, and generate DTACK with that...
I saw it but it's too complicated for me at the moment, because I haven't look for the commands to do operations in those serial chips (in fact I think I hate them: too much code/trouble to read some bits...) parallel is so easy LOL
For parallel chips you need just need a 74HC74 and 74HC00 (or 74HC138)... if you want, I can give you a schematic, really easy.
And if you're not going to have a 4MB ROM, you only need 74HC00 (or 74HC138)... but you still need to write 1 to A1301F so that emu will know you use extra RAM...
Last edited by TmEE co.(TM) on Fri Sep 07, 2007 2:28 pm, edited 1 time in total.
TmEE co.(TM) wrote:For parallel chips you need just need a 74HC74 and 74HC00 (or 74HC138)... if you want, I can give you a schematic, really easy.
And if you're not going to have a 4MB ROM, you only need 74HC00 (or 74HC138)...
I know how easy it is, It's just a simple address decoding (and a 74HC139 works better than the '138 becuase it has active low outputs)
Though I think those serial memories are good to save games, because they are very cheap and have good endurance...
TmEE co.(TM) wrote:
...but you still need to write 1 to A1301F so that emu will know you use extra RAM...
I didn't know about that, so without that the emulator forbids a write in the rom area?
If you don't emu will not think that your proggy wants to use SRAM... just do a simple write and you don't have to worry about anything... and one other thing, SRAM MUST be at 200000...20FFFF. You can have only 64KB of SRAM (but in reality 2MB is possible).
On emu the SRAM is always saved as 16bit (so if you use only 8bits you'll have odd or even bytes zeros).
On real HW, yes, you can put RAM anywehre you want (and as much as you want), but It gets annoying when you need to reflash your flash cart to see if your program works when you've put SRAM to some other place (or went over the 64KB limitation). One thing : only emu that supports over 64KB of SRAM is Genecyst. But all need the SRAM needs to be in 200000...20FFFF(3FFFFF on Genecyst) range on any emu that I know of.
Only microwire EEPROM mapper made that I know of is mine, and it will not work on emulators(not emulated). Some I2C ones are emulated... 8bitWizard made one which I guess works on some emulator... ask him... Fusion seems to support few mappers...