Luigi and the New Quest is a really nice SMB hack done by Darknight13.
btw, is Darknight13 still around? The "Nifty" board and website seems really out of date, and the e-mail there is invalid (an @home address).
I am working on an adventure game / scavenger hunt for some fo my friends.
The idea is that they would find what they think is a SMB1 cartridge, and
be required to play it in order to get the next clue. (For example,
embedded in the winning text on 8-4 or something)
I have created a modified SMB1 PCB that allows me to put mapper 0 roms
onto in using 2 27C256 256Kb EPROMS. (I put the PRG rom on it directly,
and I make 4 copies of the CHR and put it on it)
I have now had success with "SMB1", "burgertime", and "duck."
However, when I tried to do this with LNQ, it seemed to be
fine, the graphics looked fine and it started ok, but the default level
was not 1-1 but rather 0-1, and when you play it it looks like you are on
some random level in the code; it is underwater, no enemies, and after a
short while you get to a bowser bridge and "win" the game.
I have tried patching a number of different versions of SMB, it all seems the same.
The same source rom plays fine on NNNesterJ, VirtuaNES, FakeNES, and FCE Ultra.
I did some more extensive reverse-engineering last night, and it seems as though the starting level is encoded in a different way on LNQ than on SMB, so game genie/hex edits that change the start world on SMB do not work on LNQ. It seems as though the level data is in the same place on the ROM for all levels EXCEPT 1-1, though the 1-1 enemy information is in the same place.
This is interesting, since it seems to be a rather endemic bug in the emulators in that the game plays different on actual NES hardware.
Any ideas? Is there a way I can hard-code the starting level?