Considering buying a kazzo and flashing my homebrew
Moderator: Moderators
Considering buying a kazzo and flashing my homebrew
I posted this in another thread, but I got the advise to start a new thread, so here it is.
I'd like to run/test my homebrew on a real device. And I came across the infiniteneslives.com site.
As I understand it, it would suffice to buy the kazzo: http://www.infiniteneslives.com/kazzo.php ($20,-)
And an NROM flash board ($13). This board comes with a PRG and a CHR bank as I understand it.
Right?
And then hook up the kazzo, erase the CHR and PRG bank. Flash both and you can plug it in to your NES.
And if you want to flash another ROM you can.
Am I oversimplifying this, or is this really all it takes? Especially iteratively flashing the ROM on the cartridge sounds like a great feature.
I'd like to run/test my homebrew on a real device. And I came across the infiniteneslives.com site.
As I understand it, it would suffice to buy the kazzo: http://www.infiniteneslives.com/kazzo.php ($20,-)
And an NROM flash board ($13). This board comes with a PRG and a CHR bank as I understand it.
Right?
And then hook up the kazzo, erase the CHR and PRG bank. Flash both and you can plug it in to your NES.
And if you want to flash another ROM you can.
Am I oversimplifying this, or is this really all it takes? Especially iteratively flashing the ROM on the cartridge sounds like a great feature.
- rainwarrior
- Posts: 8062
- Joined: Sun Jan 22, 2012 12:03 pm
- Location: Canada
- Contact:
Re: Considering buying a kazzo and flashing my homebrew
Yes, that's how it works.
- infiniteneslives
- Posts: 2102
- Joined: Mon Apr 04, 2011 11:49 am
- Location: WhereverIparkIt, USA
- Contact:
Re: Considering buying a kazzo and flashing my homebrew
Yeah that's the general idea. If you want the cartridge plastics they're sold separately (above the NROM boards)
Don't hesitate to contact me via email or ticket on my support page if you have any questions/issues.
Don't hesitate to contact me via email or ticket on my support page if you have any questions/issues.
If you're gonna play the Game Boy, you gotta learn to play it right. -Kenny Rogers
Re: Considering buying a kazzo and flashing my homebrew
Alright. There's just one thing left to do then: finish my homebrew. 
Re: Considering buying a kazzo and flashing my homebrew
An alternative setup is to connect your NES to your PC with a USB adapter. With that you only need to cycle the power on the NES, then run a command on the PC to upload it to the flash. This can be convenient, if the NES and PC aren't too far.
This is how the Cheapocabra devkit works. Disclosure: I'm the designer/producer of it. It doesn't have a website currently, but despite that, it can be ordered from Solegoose Productions, or myself.
viewtopic.php?f=4&t=12716 Like $35 for the devkit, free if the board is used for a release.
The Everdrive cartridge also supports USB, it's not on the standard model though. I don't own one so I can't say how it works.
This is how the Cheapocabra devkit works. Disclosure: I'm the designer/producer of it. It doesn't have a website currently, but despite that, it can be ordered from Solegoose Productions, or myself.
viewtopic.php?f=4&t=12716 Like $35 for the devkit, free if the board is used for a release.
The Everdrive cartridge also supports USB, it's not on the standard model though. I don't own one so I can't say how it works.
Re: Considering buying a kazzo and flashing my homebrew
Cool! thanks, I'll look into that.
Although I like the idea of flashing it and lending the cart out to a friend so she can try my game..
fritz
Although I like the idea of flashing it and lending the cart out to a friend so she can try my game..
fritz
Re: Considering buying a kazzo and flashing my homebrew
The cart with the Cheapocabra devkit also does work as a normal cart when it's used alone with an NES, whatever was last programmed onto it will persist until it's erased again. I'll have to do a full write-up on it sometime, but to clarify, the devkit part is a modified Game Genie and a USB adapter that connects to the controller port. So the cart itself is relatively normal.
Re: Considering buying a kazzo and flashing my homebrew
So I've got my kazzo and my cartridge, installed all of the drivers.. Now what.
I have .nes rom, which obviously won't work. But I'm not quite sure how to compile only the .prg. The .chr is easier, I already have that seperately.
I'm using cc65 if that helps. But I'm not sure what to do. Do I only compile the code, and not the header.
Anyways, any kind of steering or help would be appreciated.
I have .nes rom, which obviously won't work. But I'm not quite sure how to compile only the .prg. The .chr is easier, I already have that seperately.
I'm using cc65 if that helps. But I'm not sure what to do. Do I only compile the code, and not the header.
Anyways, any kind of steering or help would be appreciated.
Re: Considering buying a kazzo and flashing my homebrew
You can specify a file attribute for the PRG/CHR memory block in your linker configuration file. You can paste your linker configuration here if you need help with that.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
Re: Considering buying a kazzo and flashing my homebrew
Eh.. ok. I think you mean this cfg file right?
https://github.com/fritzvd/emesh/blob/m ... se/nes.cfg
(i haven't pushed changes in a while, but this should be unaltered..)
https://github.com/fritzvd/emesh/blob/m ... se/nes.cfg
(i haven't pushed changes in a while, but this should be unaltered..)
Re: Considering buying a kazzo and flashing my homebrew
It's a little inconvenient because you have separate PRG, DMC, and VECTORS memory areas in your linker, but even so you should just be able to relace the "%O" with "prg.bin" on all three lines to get something.
i.e.
Alternatively, it looks like you're not using windows? You could also use dd to extract just the PRG, with something like dd bs=16 skip=1 count=1024 if=emesh.nes of=prg.bin
i.e.
Code: Select all
PRG: start = $8000, size = $3f00, file = "prg.bin" ,fill = yes, define = yes;
[...]
DMC: start = $7f00, size = $fa, file = "prg.bin", fill = yes;
[...]
VECTORS: start = $7ffa, size = $6, file = "prg.bin", fill = yes;
Re: Considering buying a kazzo and flashing my homebrew
You can also replace with "%O.prg" and "%O.chr", where appropriate.lidnariq wrote:It's a little inconvenient because you have separate PRG, DMC, and VECTORS memory areas in your linker, but even so you should just be able to relace the "%O" with "prg.bin" on all three lines to get something.
But note that it will no longer create a valid iNES ROM in this case. One way to handle that is to output "%O.hdr", "%O.prg", "%O.chr" separately, and then concatenate them after building (e.g. with cat on *nix, or copy on Windows.)
EDIT: Where did you get this configuration file? The start address for DMC/VECTORS doesn't make sense. (It might still work if you never access the address of the relevant segments.)
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
Re: Considering buying a kazzo and flashing my homebrew
Thanks all for replying! That sounds like a very good idea actually. I was already looking up the other way around, just because I couldn't find it.But note that it will no longer create a valid iNES ROM in this case. One way to handle that is to output "%O.hdr", "%O.prg", "%O.chr" separately, and then concatenate them after building (e.g. with cat on *nix, or copy on Windows.)
(ended up installing dosbox. Which feels super counter intuitive, installing DOS INSIDE LINUX)
Yes I'm not using windows.
Code: Select all
ddI've been doing the http://nesdoug.com tutorial as well as sifting through shiru's examples. So I can recall specifically. But either one of those I guess.EDIT: Where did you get this configuration file? The start address for DMC/VECTORS doesn't make sense. (It might still work if you never access the address of the relevant segments.)
Would you be able to point me to a 'better' configuration file?
EDIT: YES! I replaced the entries in the cfg file and get 3 seperate files, that still work after a
Code: Select all
cat main.hdr main.prg main.chr > main.nesRe: Considering buying a kazzo and flashing my homebrew
You can set the DMC start address to $BF00, and the vector start address to $BFFA. Or DMC start address to $FF00 and vector start address to $FFFA. Both are valid options because of mirroring.fritzvd wrote:I've been doing the http://nesdoug.com tutorial as well as sifting through shiru's examples. So I can recall specifically. But either one of those I guess.EDIT: Where did you get this configuration file? The start address for DMC/VECTORS doesn't make sense. (It might still work if you never access the address of the relevant segments.)
Would you be able to point me to a 'better' configuration file?
This won't make a difference unless you rely on the addresses from those memory blocks somewhere in your code, but it's good practice.
Download STREEMERZ for NES from fauxgame.com! — Some other stuff I've done: fo.aspekt.fi
Re: Considering buying a kazzo and flashing my homebrew
Ah yes.
I actually have that in the nrom 256 setup:
I forgot to switch to 2 banks in the bottom though. So first it wouldn't work. Works now!
I actually have that in the nrom 256 setup:
Code: Select all
# NROM256
DMC: start = $ff00, size = $fa, file = "main.prg", fill = yes;
# Hardware Vectors at end of the ROM
# VECTORS: start = $7ffa, size = $6, file = "main.prg", fill = yes;
# NROM256
VECTORS: start = $fffa, size = $6, file = "main.prg", fill = yes;
Code: Select all
NES_PRG_BANKS :type weak, value = 2; # number of 16K PRG banks, change to 2 for NROM256