Showing posts with label Bankswitcing. Show all posts
Showing posts with label Bankswitcing. Show all posts

Friday, December 13, 2019

Bomberman Selection Korean selected for a Game Boy Color re-release?

Hudson, a now defunct videogame developer best known for their Bomberman and Mario Party spin-offs, and least known by their Same Game series of games released a few compilations covering and combining their past titles into a single game. Why is this interesting? Well, because one of compilations is probably one of the most obscure re-releases of a videogame since it is more of a downgrade than the usual instance where game developers add more features. While they do just that, they actually remove an entire game, and ultimately select the lesser-great versions of one of the included games in the process. This hasty decision makes it an almost completely pointless release (or re-release?) of an already existing compilation in a very short time apart from the original, Bomberman Collection.

First, let's start off by explaining the history of the Game Boy Bomberman games. Bomber Boy was originally released on 08/31/90 for the Japanese market, sometime in 1991 for the rest of Asia, later as Atomic Punk for the US in October 1991, and Europe received the game titled Dynablaster in 1991.

Bomber Boy is your standard Bomberman Game where you move on a birds' eye grid, place a bomb near stationary structures and moving enemies to blow them up retreiving powerups such as a higher blast radius, remote control detonators for button controlled explosions, bomb kicks, skull viruses that can either hinder the players progress by inverting their controls, disabling their ability to lay bombs, impeding their movement making them vulnerable and other effects, or causing them to speed up. In rare cases this could actually provide an advantage to the infected player. Be ware! touching other players will transmit the effects to them, offering the multiplayer battles an insane turn in either direction for all players. A port of the original Bomberman for the NES was included for good measure and offers passwords and the ability continue after a game over. The highlight of the Bomberman games was the local multiplayer deathmatches which was only achieved via the erroneous, timing sensitive Game Boy link cable. Good luck!

Later releases spanning different consoles offered slightly different gameplay modes, but overall the core gameplay remained the same; the Sega Saturn version even offered new mechanics such as interactive stage effects ranging from spotlights that only showed the players position and a very small window around them, affected controls by pressing switches by walking over the ground are just a few examples. The Sega Saturn version featured animal companions for various protections and abilities, and the now-defunct Netlink service which allowed dial-up competitive deathmatches!

Bomberman GB2 was released for the Game Boy in 1994 initially only offering the ability to play as the white bomber hero, then when Hudson partnered with Nintendo, they added Wario to mix. Bomberman GB2 is curious because it was the first game to use the Super Game Boy's internal SOUND functions for enhanced explosion sound effects and a few others in certain situations, and the game also setup and allowed for up to four local players to compete with each other without needing a Game Boy link cable as long as they had access to a SNES Multitap accessory. The drawback is the small screen area and that all players always had to be visible on screen at all times, something that the console versions worked around by using smaller sprites and landscapes. Bomberman Pocket also supported both features, which was unfortunate a rarity at best when it came to other games.

Pocket Bomberman was originally released in monochrome in Europe and it did not offer any other Super Game Boy features aside from palettes and a few display borders that changed based on game modes, no enhanced internal SOUND functions or multiplayer battles. Later, it was released for the Game Boy Color with no upgrades aside from the expanded palette for the system. Curiously, the original European version does actually load a pre-defined palette scheme if played using a Game Boy Color. Only games released in which Nintendo either published, developed directly or as a second party received special palettes if a button was not pressed when booting up.

Bomberman 3 was the last entry in the series and is a Japanese exclusive and was offered in standard and interestingly as a Nintendo Power GB Memory flash cart title. The game is exactly as you would expect from a Bomberman title without the multiplayer staple, and strangely Hudson forgot to add the Super Game Boy SOUND effects this time around. Interestingly, the game does setup MLT_REQ 03 signifying it does internally support up to four players via aforementioned SNES multitap and controllers, so, it was an early idea? Just for clarification, the original NES Bomberman and all sequential ports including the Game Boy Advance Classic NES Series also plays a DPCM explosion sound sample in their various emulated forms. Time trials and score attack and hidden boss attack modes are offered in this version, I guess as a bonus. In this installment you acquire powerups by buying them in shops. Bomberman 3 is a solid game that does have several missing features and feels very incomplete overall unpolished in contrast to the earlier games. Was it rushed? No clue but I am curious about the omissions.

Hudson released two Bomberman compilations for the Game Boy, and in a metallic tin case (hope I won't be afflicted with tetanus from handling my very slightly rusty Bomberman Collection videogame on extremely rare occasions), which was not really ideal unless you keep it on your shelf forever. The compilation includes Bomber boy, Bomberman GB and Bomberman GB 2 with no changes made except that it uses the memory mapper MCB1M. Here is an oversimplified explanation: the chip allows multiple banks of games to be stored in and swapped out of the consoles RAM than normally accessible by the 32kb and 64kb limitations. Bomberman Selection also relies on the same mapper.

Bomberman Selection is where things take a strange turn. For some inexplicable reason Hudson not only released Bomberman Collection in Korea only, they decided to remove Bomberman GB2 and downgrade Bomberman GB to the original version not including Wario, and lastly they released the game so it was only compatible with the Game Boy Color which is ridiculous because all of the games were not designed for the Game Boy Color at all. This was unnecessary and likely hurt sales of this collection. Interestingly, Super Game Boy borders and all other assets were deleted from the games that originally supported them leaving the space where they would have been completely empty and not used for additional space. This extra space was not used to map out the new palette assignment banks for the Game Boy Color, as you would imagine or expect making this more of a curiosity at best. The game select menu does contain its original Super Game Boy assets but the code to access and load them was removed and changed deliberately instead of actually deleting the files as they did with the games themselves. I actually took the time to restore the leftover menu Super Game Boy support. Here is my quote from Twitter:

"https://gamehacking.org/vb/forum/video-game-hacking-and-development/hacker-threads/13028-nensondubois-codes/page65#post207018 - Bomberman Selection Korea actually does contain the leftover Super Game Boy prg from Bomberman Selection, which was released earlier. Video soon. The SGB from Bomberman GB2 actually was removed; SOUND, border, PAL_SET does not exist in the GBC ROM.

Code is long but I took assembly shortcuts to cut down, which took 3 minutes, plus 22 or so to manually write down. Enable leftover Super Game Boy support from Bomberman Collection. Bomerman GB2 / Wario Blast Featuring Bomberman does not actually load commands after "MLT_REQ 00"

A lot of header information was changed per game. The sound test does work in Bomber Boy as well in DMG, SGB and CGB modes."

031-46F-E6A
037-13F-E62
F59-0EF-3B6
F09-0FF-196
919-10F-C4D
B79-11F-195
289-12F-195
F19-14F-195
379-15F-195
C99-16F-195
3E9-E5F-5D4
E49-E6F-6E9
E09-E7F-E63
479-E8F-6E9
219-F2F-192
009-F3F-E68
989-F4F-F72
119-F5F-B3A
0C9-F6F-6E2
009-F7F-19A
0E9-F8F-F7E
0D9-F9F-6EA
3E9-FAF-E66
809-FBF-80E
069-FCF-D5E
149-FDF-6EA
229-FEF-19D
3C9-FFF-085
05A-00F-C4D
20A-01F-195
FBA-02F-195
19A-03F-195
0DA-04F-195
20A-05F-195
F5A-06F-195
FBA-07F-195
C9A-08F-195
018-D4E-A2E
Load the unused Super Game Boy border from Same Game
D1E-80F-C40
"

So, in conclusion, Bomberman Selection is a novelty more than just a curiosity at this point with all the strange development choices.


Monday, May 13, 2019

Nintendo's only official Game Boy Multicart - Mani 4-in-1

          Nintendo is not known for sanctioning, licencing or much less actually developing official multicart releases of their games. Mainly during the lifespan of the Game Boy Advance it was profitable for companies to mostly release NES or Famicom collections including Nintendo and their port of Mother 1 + 2 (Jaleco, Technos infamously "stole" pocketNES and used in their collections, but that is for a different writeup entree altogether). There is one notable earlier exception by Nintendo and it isn't very well known, in fact, I could find almost no information about its existence, development, sales, and distribution is equally elusive just as obtaining one of the cartridges.

To give a brief background, Nintendo had a small, but growing marketshare in Asia outside of Japan during the Game Boy era nd they decided to release a series of multicarts in China. The series is not very interesting except for Mani 4-in-1 that contains four 'classic' launch Game Boy titles: Tetris, Alleway, Yakuman and Tennis. The latter two games aren't the most exciting choice, but it is understandable why Nintendo selected the titles. Yakuman is a port of the classic Asian game Mah-jong. Tennis isn't great but it can provide a few minutes of ball rallying fun (sorry) on short bus trips.

The menu and the Super Game Boy enhancements are probably the most interesting aspect of the cart is the support for basic Super Game Boy functions (which I briefly wrote about on Twitter: https://twitter.com/nensondubois_/status/1127783157007364096 and here https://twitter.com/nensondubois_/status/1127792706233749509) depicting and matching the originally assigned palettes each game displays. Originally the games included would load a default palette accompanying the theme, area and setting of the game in question. The palette is selected based on the internal filename found within the game's header and then matched against the palette stored hash inside the Super Game Boy / 2 bios.

Instead of actually jumping to the game's bank as they later did with the GB Memory NP flash cartridge and resetting the Super Game Boy bios so it loads directly from memory, the developers took a different direction and instead matched the pre-defined palette as an equivalent Super Game Boy enhanced palette stored in the SNES WRAM. Was it lazier than writing a custom routine to jump to the game as mentioned prior? Possibly, but also not really; there is a technical reason why this method was chosen, but it is also contradictory and unrelated to how bankswitching actually works.

The general gist is using extra chips onboard either a cartridge or hardware interface, usually in the form of RAM and ROM to provide extra functions that native hardware was unable to allow. Tasks could include extra caching, additional sound capacities, better graphics (in older videogame systems including the Famicom and Master System, Turbo Grafx 16) and swapping out RAM and ROM and mapping it to original hardware locations gaining the benefit of better visuals, faster processing, and various other proprietary functions.While it is not technically the same as modern computer graphics cards and DDRAM work, the concept is reasonably comparable. Modern computer interchangeable hardware is rapidly increasingly becoming more complex weekly; the general idea is relatively the same.

Mostly likely the reason is because the developers were using discrete logic MMMC01 instead of the more complex custom flash setup the GB Memory worked with or utilised because it was cheaper and the games were only 32kb and the games didn't use MMCB3,05 battery backup for SRAM, or other special hardware and memory mapping chips, so the menu handles the jump to the game instead because it was easier and cheaper than designing a more robust system. It was probable that the Mani developers had the knowledge to write a custom routine using the Super Game Boy's DATA_SND and JUMP functions that were present in the GB Memory, but it was unnecessary. Still, it is interesting nonetheless. The game select menu even has two sets of palettes; one for loading and a secondary for when the menu fully transitions to its final area on screen. For reference, here is the main menu selection screen and the game's title screen with the default or enhanced Super Game Boy palettes designed to revolve around the game.

Writing the Mani 4-in-1 to a Game Boy flash cartridge like the GB Memory is also possible if you happen to have a flasher (more on building one yourself coming in a later article) device.

[CODE]
PAL_01
Tetris:015F4F0E639F15263100000000000000
Alleyway:01EF65BF7D5F03082100000000000000 Yakuman:01BC66FF3FE07E842C00000000000000 Tennis:016C2BFF7FD91C070000000000000000
[/CODE]














Finally, here is the game select menu using Super Game Boy Palettes. There are no Game Boy Color palettes.













In conclusion, the games play exactly the same as their retail counterparts  and in case you're wondering, Tetris is 1.1 on the Mani 4-in-1 multicart. You question is most likely "Is it worth the money to track down a working cartridge?" Personally, I would since I am a game collector enthusiast of sorts so I managed to find a copy but for way more of a reasonable price. You mileage may vary.