Coin-Op Collection Presents: DECO-16 (Diet Go Go)
This afternoon's release for the Analogue Pocket and MiSTerFPGA platforms is the next entry on the DECO-16 platform. Diet Go Go is a single-screen action-platformer with a weight-management twist, where players fatten enemies with thrown food and burst them across the stage, built on Data East's 16-bit custom hardware.
Kuhga / Vapor Trail (1989)
Crude Buster / Two Crude (1990)
Dark Seal / Gate of Doom (1990)
The Cliffhanger: Edward Randy (1990)
Super Burger Time (1990)
Death Brade / Mutant Fighter (1991)
Tatakae Genshijin: Joe & Mac / Caveman Ninja (1991)
Robocop 2 (1991)
Thunder Zone / Desert Assault (1991)
Wolf Fang: Kuhga 2001 / Rohga (1991)
Tumble Pop (1991)
Dark Seal II / Wizard Fire (1992)
Funky Jet (1992)
Gun Ball / Nitro Ball (1992)
Diet Go Go (1992)
The Great Ragtime Show / Boogie Wings (1992)
Double Wings (1993)
Diet Go Go is one of the leanest boards in the family, and the part that stands out is what runs the game rather than what draws it. Its program code is encrypted, the MC68000 sits behind a Data East DE102 carrier, and the core unscrambles the instruction stream live as the processor fetches it, rather than decrypting the ROM ahead of time the way emulation does. The rest of the board is deliberately spare, a single tilemap generator driving two playfields, one sprite engine, and a HuC6280 running one FM chip and one sampler, with a DECO 104 handling protection and I/O, in a two-player cabinet.
This post covers a technical overview of Diet Go Go on DECO-16, the work the board required, and the game itself.
Overview:
Diet Go Go runs on Data East's DECO-16 hardware (PCB DE-0370-2), driven by a Motorola MC68000 in an encrypted Data East DE102 carrier (DECO Custom 102) at 14 MHz, with no second processor on the main bus. The sound system uses a HuC6280 (DECO Custom 45) at 8.055 MHz driving a YM2151 (OPM) at 3.58 MHz and a single OKI M6295 ADPCM sampler at 1.007 MHz. There is no YM2203 and no second OKI on this board, and there is no sample-bank switching. Audio output is mono.
The video system outputs 320x240 in a horizontal orientation at 57.445 Hz. Graphics are rendered by a set of Data East custom ICs, a single DECO 141 tilemap generator drives two playfields, each four bits per pixel, and a single DECO 52 sprite engine draws one sprite layer. A DECO 104 handles the board's protection and I/O. The palette holds 768 entries in 24-bit RGB, eight bits per channel.
Development Challenges:
The work on Diet Go Go is mostly in getting the board to run at all, because its program never appears in the clear. The MC68000's code sits inside a Data East DE102 package, which scrambles both the address the processor asks for and the data it reads back, and it does so differently for instructions than for ordinary data. Emulation handles this by decrypting the whole ROM once at startup into a second, hidden copy that the processor reads from. The core cannot do that and decrypts on the fly instead, unscrambling every fetch in hardware as it happens, with the logic watching the 68000's function-code lines to tell an opcode fetch from a data read and applying the matching transform to each. The processor sees plain code and data while the ROM on the board stays encrypted, exactly as it does on the original.
The graphics carry a second layer of the same idea. The tile ROMs are encrypted too, in the scheme the DECO 141 tilemap generator expects to unscramble on-chip, so before the tilemaps can draw anything the graphics data has to be decoded. The core does this as the ROMs load, decrypting the tile data on the way into memory and reordering it so that a full row of pixels lands in adjacent words for the wide reads the renderer makes. From there the DECO 141 drives its two playfields normally.
The sound section is one of the leanest on the platform, a HuC6280 running a single YM2151 and a single OKI sampler in mono, with none of the sample-bank switching the larger boards use. The one wrinkle is that the board runs Data East's standard sound program, which is written for the fuller hardware and still addresses a YM2203 and a second OKI that this board was never fitted with. Rather than let those writes stall the sound CPU, the core decodes their addresses and absorbs them, just as the board does with nothing wired to answer there.
Core Options:
The MiSTer core includes video settings for aspect ratio, vertical scaling and cropping, scandoubler effects, and H/V positioning and sync adjustments.
Audio settings provide separate OPM and M6295 PCM toggles, each with its own volume control, covering the board's two sound chips. Arcade dip switches are directly accessible from the OSD. Game settings include per-player auto-fire with adjustable rates, mapping options for Player 1 and Player 2, and a synced mapping mode that mirrors Player 1's layout to Player 2.
Cheats are accessible from the OSD and include infinite credits, along with per-player infinite lives, invincibility, power up, speed up, super bomb, and rapid fire.
The Pocket core provides auto-fire with per-button targeting and adjustable rates. Its cheat set is a single-player subset: invincibility, power up, speed up, and super bomb. Arcade dip switches available on Pocket are No. of Lives, Game Difficulty, and Alternate Graphics.
The core supports six sets, four European Diet Go Go revisions and the USA and Japanese releases.
History, Gameplay, and Regional Information:
Diet Go Go reached arcades in 1992, developed and published by Data East. It was planned by Makoto Kikuchi and led in programming by Hidemi Hamada, with a soundtrack from Data East's in-house sound team Gamadelic, scored by Tomoyoshi Sato. The game is a follow-up in all but name to Data East's 1991 hit Tumble Pop, reusing its single-screen format, its visual style, and even its mad-scientist villain, with the vacuum cleaner of the original swapped for a very different weapon.
The game is a single-screen action-platformer for one or two players at once, each clearing every stage of its enemies to advance. The twist is food. The player characters, a boy and a girl, attack by pelting enemies with sweets and snacks, which inflate the target like a balloon, and a fully swollen enemy can be burst and sent bouncing around the screen, flattening anything it touches in a chain. The catch is that the enemies throw food back, so getting hit makes your own character balloon up and slow down, with a second hit proving fatal, and diet drinks are scattered around each stage to trim back down.
The setup is an obesity epidemic engineered by a mad scientist who has flooded the world with free fattening food, and the two heroes work through a run of themed single-screen worlds to stop him. Defeated enemies drop coins that feed a slot-machine bonus, and some stages are dressed with pinball bumpers that send the ballooned enemies ricocheting. The stages are short and come quickly, in the fast-clear rhythm the format is built around.
Across regions the game is the same, kept under the Diet Go Go title everywhere with no localized rename. The North American version adds the standard Winners Don't Use Drugs screen, and some European boards shipped with an alternate title-screen graphic that a dip switch selects, but the game underneath is identical. Diet Go Go was a minor title in its day and has remained one since, an obscure and openly derivative follow-up that leans on Tumble Pop's ideas without adding much beyond the food gimmick, remembered, when it is at all, for its bright presentation more than its depth.
Updates:
Diet Go Go is the next public release in wave 2 for Data East's DECO-16 platform. Its encrypted DE102 processor is where this platform's live decryption was first worked out, solved on this board ahead of Boogie Wings and Double Wings, both of which were built on that same work and reached release before it did.
The remaining wave 2 titles are:
Super Burger Time (1990)
Thunder Zone / Desert Assault (1991)
Wolf Fang: Kuhga 2001 / Rohga (1991)
Dark Seal II / Wizard Fire (1992)
Funky Jet (1992)
The files have been pushed to GitHub, update_all, and pupdate for distribution. Please allow the updaters time to sync. Other update information shared in the previous posts can be found in their update sections at the links below:
https://www.patreon.com/posts/165187605
https://www.patreon.com/posts/165306904
https://www.patreon.com/posts/165401081
https://www.patreon.com/posts/165413183
Disclaimer: All product names, trademarks, and registered trademarks mentioned are the property of their respective owners. "Analogue", "Analogue Pocket", "MiSTer", "MiSTerFPGA", "OpenFPGA", "Data East", "NEC", "Hudson Soft", "Motorola", "Yamaha", "OKI", and all derivative works are trademarks, registered trademarks, or copyrighted materials of their respective holders. Use of these names does not imply endorsement or association with this post. All rights reserved to their respective owners. This post is for educational and research purposes only.
Comments (4)
Thank you so much Coin-Op Collection Team🔥🔥🔥🔥
Thanks, excelent game!!!
Nice! How about "Boogie Wings" for the pocket ;)
Sometime today!
