Search found 20 matches
- Fri Aug 05, 2016 6:03 pm
- Forum: GBDev
- Topic: Length Counter Clarifications
- Replies: 1
- Views: 2667
Length Counter Clarifications
Hello! I've got some questions about the Length Counter that I can't seem to resolve by reading PanDocs, GBSSOUND.txt, http://gbdev.gg8.se/wiki/articles/Gameboy_sound_hardware (Wiki) and other sources. Q1: Is the "enabled flag" that's mentioned in the Wiki the same as the length enable fla...
- Fri Aug 05, 2016 8:56 am
- Forum: GBDev
- Topic: Tetris Emulation
- Replies: 1
- Views: 2857
Re: Tetris Emulation
Ok, I found out that I need to properly implement the reading of $FF04 (Divider) to make it work. 
EDIT: It also affects encounters in Pokemon. 0 will disable encounters. Haha.
EDIT: It also affects encounters in Pokemon. 0 will disable encounters. Haha.
- Fri Aug 05, 2016 8:53 am
- Forum: GBDev
- Topic: Tetris Emulation
- Replies: 1
- Views: 2857
Tetris Emulation
My emulator always gives me the square tetromino when I play Tetris, which makes the game boring. 

Did you guys encounter such behavior on your emulators?
Thanks!

Did you guys encounter such behavior on your emulators?
Thanks!
- Wed Aug 03, 2016 3:45 pm
- Forum: GBDev
- Topic: Emulator Bugs (Alleyway & Volley Fire)
- Replies: 3
- Views: 3471
Re: Emulator Bugs (Alleyway & Volley Fire)
Implementing a bare-bones serial fixed it. I was missing serial interrupts and was not getting any read requests from $FF01.
Thanks!
EDIT: This also fixed the rock scrolling in Volley Fire, although I'm having one scanline graphical glitches of the rocks.
Thanks!
EDIT: This also fixed the rock scrolling in Volley Fire, although I'm having one scanline graphical glitches of the rocks.
- Wed Aug 03, 2016 9:03 am
- Forum: GBDev
- Topic: Emulator Bugs (Alleyway & Volley Fire)
- Replies: 3
- Views: 3471
Emulator Bugs (Alleyway & Volley Fire)
I have bugs emulating Alleyway & Volley Fire. For Alleyway, the game auto starts by itself and proceeds to the game. However, I cannot move the paddle and it is stuck all the way to the left. For Volley Fire, the rocks don't move. From my observations, the game is not using HBLANK STAT interrupt...
- Thu Nov 05, 2015 5:24 am
- Forum: NESemdev
- Topic: Question about MMC3's scanline counter
- Replies: 1
- Views: 2017
Question about MMC3's scanline counter
I'm currently implementing MMC3's scanline counter and I just have a question to clarify. If I have both sprite and BG patterns set to $0000 (meaning no transition of A12 from low to high), does the scanline counter get clocked every 2 scanlines due to increment of PPU's Fine Y on PPU clock 256? (I ...
- Wed Nov 04, 2015 8:59 pm
- Forum: NESemdev
- Topic: Holy Diver Batman MMC1 (M1_P128K.nes)
- Replies: 7
- Views: 3307
Re: Holy Diver Batman MMC1 (M1_P128K.nes)
Ok got it fixed! 
It was due to a stupid typo in my PRG bankswitching code as I inadvertently used CHR banking mode as the check for PRG banking mode.
Finally got SGROM to work!

I'm surprised that my emulator got this far considering this was a crucial part in PRG bankswitching..
It was due to a stupid typo in my PRG bankswitching code as I inadvertently used CHR banking mode as the check for PRG banking mode.
Finally got SGROM to work!
I'm surprised that my emulator got this far considering this was a crucial part in PRG bankswitching..
- Tue Nov 03, 2015 9:51 pm
- Forum: NESemdev
- Topic: Holy Diver Batman MMC1 (M1_P128K.nes)
- Replies: 7
- Views: 3307
Re: Holy Diver Batman MMC1 (M1_P128K.nes)
Here is my read logic for $6000-$7FFF read // WRAM/battery backed ram if (address >= 0x6000 && address <= 0x7FFF) { if (battPRGRAM) return battPRGRAM[address & 0x1FFF]; return 0xFF; } And here is my write logic // WRAM/Battery backed ram write if (address >= 0x6000 && address <= ...
- Tue Nov 03, 2015 9:42 pm
- Forum: NESemdev
- Topic: Holy Diver Batman MMC1 (M1_P128K.nes)
- Replies: 7
- Views: 3307
Re: Holy Diver Batman MMC1 (M1_P128K.nes)
Here is a snippet 0443 8D 00 A0 STA $A000 = FF A:04 X:10 Y:03 P:24 SP:FD 0446 4A LSR A A:04 X:10 Y:03 P:24 SP:FD 0447 88 DEY A:02 X:10 Y:03 P:24 SP:FD 0448 D0 F9 BNE $443 A:02 X:10 Y:02 P:24 SP:FD 0443 8D 00 A0 STA $A000 = FF A:02 X:10 Y:02 P:24 SP:FD 0446 4A LSR A A:02 X:10 Y:02 P:24 SP:FD 0447 88 ...
- Tue Nov 03, 2015 9:27 pm
- Forum: NESemdev
- Topic: Holy Diver Batman MMC1 (M1_P128K.nes)
- Replies: 7
- Views: 3307
Re: Holy Diver Batman MMC1 (M1_P128K.nes)
Somewhere I'm not sure yet but when I enable WRAM for M1_P128K.nes (i.e. by honoring the write request), the rom does not crash. Although I'm not sure if honoring the write request is the right thing to do. If I don't honor the write request, the emulator dies on an illegal opcode (probably due to j...
- Tue Nov 03, 2015 9:13 pm
- Forum: NESemdev
- Topic: Holy Diver Batman MMC1 (M1_P128K.nes)
- Replies: 7
- Views: 3307
Holy Diver Batman MMC1 (M1_P128K.nes)
I'm currently implementing WRAM (battery backed and not) for MMC1 using Holy Diver Batman as test roms. However, my emulator dies on M1_128K.nes. I assume that it has no WRAM because there are other MMC1 roms that I think have (M1_P128K_C32K_S8K.nes, M1_P128K_C32K_W8K.nes, etc.) Debugging my emulato...
- Tue Nov 03, 2015 3:06 am
- Forum: NESemdev
- Topic: My emulator's MMC1 giving wrong mirroring values
- Replies: 9
- Views: 4284
Re: My emulator's MMC1 giving wrong mirroring values
Finally made it to work (as well as one-screen mirroring for MMC1 and AxROM). Thanks guys!
- Mon Nov 02, 2015 5:31 pm
- Forum: NESemdev
- Topic: My emulator's MMC1 giving wrong mirroring values
- Replies: 9
- Views: 4284
Re: My emulator's MMC1 giving wrong mirroring values
Ok I'll try to understand :) Set mirroring type to 2 (ABAB, vertical mirroring/horizontal arrangement) Write $AB to $2000, which writes to $000 Write $CD to $2400, which writes to $400 Reading $2800 should produce $AB Reading $2C00 should produce $CD I'm okay with this one Set mirroring type to 3 (A...
- Mon Nov 02, 2015 4:46 pm
- Forum: NESemdev
- Topic: My emulator's MMC1 giving wrong mirroring values
- Replies: 9
- Views: 4284
Re: My emulator's MMC1 giving wrong mirroring values
So does that mean that physical address = logical address & bitmask is incorrect?
- Mon Nov 02, 2015 4:25 pm
- Forum: NESemdev
- Topic: My emulator's MMC1 giving wrong mirroring values
- Replies: 9
- Views: 4284
Re: My emulator's MMC1 giving wrong mirroring values
I think I only use 2K of actual PPU memory by using bitmasks according to the nametable mirroring
$F7FF <- for vertical mirroring (This ensures that $0800 doesnt get decoded)
$FBFF <- for horizontal mirroring (This ensures that $0400 doesnt get decoded)
$F7FF <- for vertical mirroring (This ensures that $0800 doesnt get decoded)
$FBFF <- for horizontal mirroring (This ensures that $0400 doesnt get decoded)