Denine wrote:
NMI and reset is pointed to last bank,but i don;t know how to point IRQ thing,I searched nesdevwiki but I wasn't able to find it(or understand it).
In the last bank, you just do this:
Code:
.org $FFFA
.dw vector_nmi
.dw vector_reset
.dw vector_irq
where vector_??? is the label where your nmi, reset or irq is located. If you don't use the IRQ then don't forget to disable it.
Denine wrote:
My game is actually working under Nestopia,but you have to switch region to PAL.In NTSC it's freeze when you try to start actual game(menu is working fine...)
One other issue here. If your target machine is PAL then you cannot use VRC6: this mapper only support NTSC.
Denine wrote:
Quote:
only 3 japanese carts support this mapper
So,my friend can forget about burning eprom,As i wrote before-he can write mapper 2 i 71 only.
Yes. You will only be able to use it in an emulator in this case.
Denine wrote:
Quote:
Create test rom with title code only
It's working the same as whole game.
The goal is to reduce the vector for where the game fail to work. The less code, the easier it will be to figure out the cause. Like mentioned above, your game doesn't work with Nintendulator. This is already a big issue. By reducing the code to only the title screen at first, this should help you figure out where the game fail since you only have the presentation screen to analyze. Once the title screen work, you add back the rest of the code and see if it still fail. Then you can start to debug the next part. Just see it as iterative debugging.
Denine wrote:
Quote:
Convert mapper to VRC-6
If I have to do something more than change number in header,then that's maybe a big problem
Unfortunately, yes you will have to do more. When you use a mapper like the VRC6, you will need to set the default state of the banks for the PRG ones and CHR one. Without that, only the fixed bank will be working right. If I can make that VRC6 sample for famitracker I will put the default bank initialization in it. That should be enough for the current state of your game. I started a little bit yesterday to convert it but in ca65 the sample was not working properly with the sample music I included. I don't know the cause yet (driver bug or my code). The volume of the song goes haywire after a few songs were switched. If you only use one song maybe this will not be an issue for now.
Edit:
I checked the rom and there seems to be some CHR-ROM appended to the end of the file. After tracing your code from the rom, you're trying to use mapper 2 when you don't seems to copy the data in CHR-RAM. What I did is changing the mapper number back to 0 and it's now started to work in Nintendulator. Menu was shown but it fail in the game if not in PAL mode. So it seems that Nestopia/FCEX try to load some CHR-ROM even thought the mapper say it's RAM.
As for the vector, only reset is defined at 8000, NMI and IRQ are not. My guess is your game does too much writing and it spill outside VBLANK but I could be wrong. If I remember well, PAL vblank is longer so this could be the reason that it works in PAL. You will have a lot of re-factoring to do in your game to make it work properly but this is all part of the learning experience. Don't give up