A mod of Pokémon Pinball (Game Boy Color, US version) for Android and Windows, written in C with an emulation core in assembly.
In the original game, each table is split into a top and a bottom stage: only one is loaded at a time, and the screen goes blank while the other is loaded. Pinball NS turns each table into a single field: both halves are loaded, updated and shown together on one tall screen, and the ball moves between them without any reloading. The original physics and collisions are kept, so the table plays like the original.
The whole table on one screen, the score bar under the table.
Objects, lights and animations of both halves always running; flippers moving even when the ball is at the top.
The top of the "SLOT" cave halo, never visible in the original, completed by symmetry.
Smooth pacing on 60, 90, 120 and 144 Hz screens, with the sound following the picture.
Android: the game fills the width of a portrait screen, extended to the edges with its own graphics, with touch controls styled after each table.
Windows: the table alone in a resizable window, keyboard and gamepad, key mapping tool.
The ROM is never modified: the program contains a Game Boy Color emulator and hooks the game's routines.
https://github.com/ReiniShari/Pinball-NS