* cleaned up midvunit inputs and outputs. cleaned up seattle outputs.
* better motion inputs and sorted main buttons for midvunit
* keep case the same
* removed runtime tagmap lookup
* gameboy camera functional
* gameboy.xml: remove misleading comment
Sachen 4B-003 was recently added
Signed-off-by: Tauwasser <tauwasser@tauwasser.eu>
* gameboy: fix Super Game Boy VRAM transfer
A basic implementation of VRAM transfer. It fixes a number of games and removes
the SGB border hack. However, it's very likely that the bahvior is much more
complex. The old implementation was good enough for the majority of games,
so this should suffice until such time when SGB is implemented on top of SNES.
The attribute data was resized to 4096 bytes, so a whole VRAM transfer can take place
even though only 4050 bytes are used. The idea is that the whole 4096 bytes are
_probably_ transferred to WRAM and a game might theoretically upload a small executable
and use that data. However, running native SNES code is currently unsupported anyway.
Signed-off-by: Tauwasser <tauwasser@tauwasser.eu>
* gameboy: various code style/comment fixes
- return GB_MBC_NONE instead of magic 0 value
- add MLT_REQ case in sgb code and mention where it's actually handled
- add PAL_PRI to list of known SGB commands (not implemented)
- fix two comments
Signed-off-by: Tauwasser <tauwasser@tauwasser.eu>
* gameboy: coding style fixes for gb_lcd
Signed-off-by: Tauwasser <tauwasser@tauwasser.eu>
Miscellaneous Game Boy changes:
* gameboy: add Super Chinese Land 1.2.3' to MBC1 Collection check code
* gameboy: fix MMM01 zero-adjust logic for ROM bank
New working software list additions
--------------------------------
* gameboy.xml: Sachen 4 in 1 (Euro, 4B-003) [Tauwasser]
M161 is used as mapper, M12 is just a PCB revision.
M01 PCB uses a discrete ROM IC
M12 PCB uses a glob top COB ROM
Signed-off-by: Tauwasser <tauwasser@tauwasser.eu>
based on reverse engineering by Tauwasser. Logo handling not emulated yet
(you have to select the "Skip BIOS check" in the System Configuration menu
to play the games). [Fabio Priuli]
(MESS) gameboy.xml/gbcolor.xml: Added some recent dumps of Sachen carts
[Tauwasser, BigFred, taizou]
out of whatsnew: commit also includes some cosmetic changes suggested by Tauwasser (many thanks for the feedback!)
(off by default) to skip BIOS checks at boot. This allows the
recently dumped Rockman World Prototype to be played,
and the Rocket Games pirate GBC carts too. [Fabio Priuli]
(MESS) gba: added a configuration setting (off by default)
to skip some BIOS checks at boot. This allows Tyrian 2000
Prototype to be played. [Fabio Priuli]
out of whatsnew: for the Rocket Games pirates it is currently unclear how real carts were bypassing
the BIOS checks on a real unit, and it would be nice to emulate it properly. however, this trick allows
to go on fixing the rest of mapper emulation until it's fully understood.
and partially implemented the required mapper [Team Europe, Fabio Priuli]
after selecting a game, the CPU always points to the correct bank of the cart,
but some games don't work anyway (e.g. Duck Tales, PacMan, etc.)
I don't have time to further debug this, at the moment, so I leave it to whoever
wants to take a look