Hi,
I'm trying to find info on how the UNROM mapper is connected (I've read it's just a 74hc161 and a 74hc32, so it should be easy to make). I want to make a dev cart, but am not in a position to find old carts easily. Also, this'd be a cool project, to make the board from scratch. I also have some thoughts on more advanced carts, but I want to start simple, and let those wait until later...
Anyway, any info would be appreciated. I found the connections between the chips and the ROMs on Brian Provincaino(sp?)'s page, but I'm unsure where the mapper connects to the cart edge and such.
Thanks!
Wouldn't it be possible to get rid of the 74hc32 and build an AOROM mapper (maybe without one-screen mirroring) instead?
That's probably what I'm going to design my own game around anyway, it seems to be the easiest mapper with VRAM.
If you want to keep things simple and get a larger ROM size at the same time, use 32kB banks.
Then if you want to run UNROM-style bankswitching, write your program as 16kB banks. Then before loading it to a ROM, duplicate the last 16kB bank in every 32kB bank. (like discussed in the Caesar's Palace thread)
That's what I do with my Squeedo cart.
[quote]Wouldn't it be possible to get rid of the 74hc32 and build an AOROM mapper (maybe without one-screen mirroring) instead?
That's probably what I'm going to design my own game around anyway, it seems to be the easiest mapper with VRAM[/quote]
Yes, and the board is called BNROM. Grab a Deadly Towers cart. The good thing about UNROM is that you could keep the core parts of your game (music, collision detection, main character sprites, physics, etc.) in one bank that is always accessible and avoid unnecessary duplication, which wastes space. The Nintendo discrete logic mappers with the prefixes A, B, and U only support 256KB of PRG ROM at most.
Great Hierophant wrote:
The good thing about UNROM is that you could keep the core parts of your game (music, collision detection, main character sprites, physics, etc.) in one bank that is always accessible and avoid unnecessary duplication, which wastes space.
Except for DMC samples there's no need to duplicate anything across multiple banks, it's just a matter of writing some clever code and keeping the functions local the the data they're accessing.
Perhaps I could even fit my game within a single 32 kB bank and get rid of the mapper entirely, I'll trust my coding skills over my hardware skills any day..
Hey all,
I've started drawing up the circuit of the board. I'm thinking I should just use some SRAM to replace the CHR RAM. I've settled on an AT29c010A 5V flash chip for the PRG ROM. One question though, as this ROM is only 1Mbit: do I leave A17 from the mapper floating, tie it to ground, or what? I suppose I could also use a c020A chip, 2Mbit, and have a switch to enable/disable A17?
Ah, and as for the reason for UNROM, it's because it's second purpose will probably be to play gamesthat are hard-to-get (here in Iceland, that is), and I don't really want to make two boards for that.
Also, if anyone's done a similar project, where did you get PCBs of the proper thickness? The PCBs I usually etch with are considerably thinner than the PCBs in NES cartridges, and I'm guessing they won't make good contact (or any at all).
Thanks!
dsg wrote:
I'm thinking I should just use some SRAM to replace the CHR RAM.
CHR RAM
is SRAM.
dsg wrote:
do I leave A17 from the mapper floating, tie it to ground, or what?
You can either tie it to GND or VCC (+5V). Do NOT leave it floating!
dsg wrote:
Also, if anyone's done a similar project, where did you get PCBs of the proper thickness? The PCBs I usually etch with are considerably thinner than the PCBs in NES cartridges, and I'm guessing they won't make good contact (or any at all).
The correct thickness is .045".
Codemasters, Game Genie, and MIDINES carts have the usual .063" boards, and those work. It's a tight fit on a top-loader, though.
I got my board prototypes from myropcb.com. I've seen other places have that board thickness also, I can't recall where.
How much did your board prototypes cost?
A lot of development time (still on-going), seriously.
They'll do it for $20 per board at the most, but there's a minimum order. The total bill for mine was about $85.
Quietust: Thanks, that cleared it up.
I think I'll just put a little switch to connect A17 to A17 of the ROM or to GND, to be able to use both 128K and 256K ROMs.
Memblers: Thanks... it's a bit expensive for me though. I've heard good things about Olimex (
http://www.olimex.com/) - no minimum order, double-sided euroboard for $26, free panelisation. But they don't seem to offer a suitable thickness for PCBs. Owell, I'll keep looking. I'm also still holding out hope of finding photosensitive precoated boards of this thickness, as then I could avoid having to use third-parties to make the boards entirely... much cheaper. I'm going to open up my NES and see how much variance I can get away with.
Thanks!
Yeah, I considered using Olimex also. And several local places. I just figured I'll want the right-sized board though, for when I eventually (hopefully) do a small production run.
It was pretty expensive for me too, but I'm very grateful to have had a lot of help paying for it with this little fundraiser.
http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&rd=1&item=8133701424
But yeah, if you only want to make one or two boards for your own use, .063" thickness should be fine for that. Like it said on the MIDINES page, and if you've used a game genie, you can stick it in your front-loading NES and it will make good contact without needing to be pushed down.
I've used a MIDINES cart (.063") on my toploader, and it works there.
But, one question: I don't suppose one of you has a UNROM cart and would be willing to snap a couple of digital pictures of the top and bottom layers? As I said earlier, I have no such cart and all the pictures I've found online have been too small and low-res to see the signal trace connections. This would help a lot, as there are a couple of points I'm uncertain of.
(Hey, it was worth a try, eh?
Thanks.
Hey dsg, sorry about the delay replying.
Did you get the UNROM signal traces figured out? I have a digicam, just not batteries for it currently. But I could also use my multimeter to trace some signals if it would help.
Don't have a UNROM on hand but if you're interested in AOROM's pinout, here it is:
Code:
'161
+------V------+
VCC |1Clear|VCC 16|
P/CE|2Clock|COut15|NC
P D0|3 A | QA 14|P A15
P D1|4 B | QB 13|P A16
P D2|5 C | QC 12|P A17
P D4|6 D | QD 11|CI A10
GND |7 En P|En T10|GND
|8 GND |Load 9|P R/W
+------+------+
I only traced it once but it looks correct. If anyones interested I could do AMROM/CNROM too.