Releases: Goldoire/pokeemerald-dualscreen
Release list
v0.5.0
v0.5.0
The biggest update yet: true widescreen and a full Gen 4-style dual-screen battle experience.
True widescreen
- The software PPU now renders wider than 240px natively, no more stretching. The overworld draws a 512px-wide background with vanilla game-space coordinates, so you see more of Hoenn instead of a zoomed crop.
- Widescreen-aware windows and sprite decode. Display-mode changes no longer undo the widened frame.
Gen 4-style dual-screen battles
- Battles take over the bottom screen with DS-style menu geometry: commands, moves, bag, and party all playable from the bottom screen.
- Full input parity: touch or physical buttons, whichever you use. The cursor follows your input method and mirrors the engine cursor.
- Forced send-outs, bag, and party open on the bottom screen mid-battle.
- Optional battle hints (HINTS setting): pixel-caret type-effectiveness markers with multiplier tiers, and the foe's weaknesses on its card.
New bottom-screen UI
- Emerald-authentic redesign of the panel UI.
- Party tab: 2x3 grid of rich party cards using the game's own palettes.
- Bag tab: laid out the way the DS bag does it, with item descriptions.
Stability
- Bounds guards on raw window ids in tilemap/VRAM paths and on Battle Dome facility ids. Fixes a class of crashes unique to running the GBA code natively.
Install
Sideload the APK, then provide your own Pokémon Emerald (U) ROM when prompted on first launch. The app contains no copyrighted game assets. Updating from a previous release installs over the top; saves are kept.
v0.2.1
Widescreen and other settings would sometimes be reset on restart, or broken, that's now fixed.
Fast forward. You can now use R2 to toggle it on and off at the speed you picked in Settings. 2x–4x actually run at those speeds, without causing a noticeable audio delay. Music stays at its normal tempo while the game is sped up, unless you turn on the fast-forward audio setting, in which case it pitches up with the game.
Installing is unchanged, and this can be installed straight over v0.2.0.
v0.2.0
Saves. You can now import or export a save. It sits at Android/data/com.pokeemerald.dualscreen/files/pokeemerald.sav and is an ordinary .sav, so drop yours in there and it loads on the next launch, or copy it out to play elsewhere. Reach the folder over USB or with the device's file manager, and copy your save out before uninstalling, because Android deletes that folder with the app.
v0.1.1
Fixes three bugs in the distributable build. Anyone on v0.1.0 should update: that build could not read or write save files, so progress made on it was never written to disk.
Saves. The runtime asset fill restored ROM bytes over the save and config path buffers after they were set, truncating both paths at 32 characters. The release build could not open pokeemerald.sav, so every launch started fresh and nothing was ever saved. Cart and emulator saves load and persist again.
Settings. Same cause: pokeemerald.cfg was never read or written, so every launch ran on build defaults and any change to background, widescreen, touch controls, battle menus, fast forward or volume was lost on exit.
Fast forward. On Android the frame was presented inside the catch-up loop, so every extra game frame blocked on vsync and the speedup cancelled out exactly. The 2x, 3x and 4x settings now do what they say.
Also hardened: the asset fill now runs before the mod manager builds its RAM tables, so a game activity that Android restarts directly into a fresh process no longer reads zeroed data.
Installing is unchanged, and this can be installed straight over v0.1.0. The APK still contains no game data: pick your own Pokémon Emerald (USA/Europe) ROM on first launch (SHA-1 f3ae088181bf583e55daf962a92bb46f4f1d07b7), or place it at Android/data/com.pokeemerald.experimental/files/baserom.gba beforehand. A ROM you already picked is kept.
v0.1.0
First release of the dual-screen mod for the AYN Thor (and other dual-screen Android devices).
The APK contains no game data. On first launch, select your own Pokémon Emerald (USA/Europe) ROM (SHA-1 f3ae088181bf583e55daf962a92bb46f4f1d07b7), or place it at Android/data/com.pokeemerald.experimental/files/baserom.gba beforehand. Asset ranges are restored from it at boot; nothing is written back to your ROM.
Highlights:
- Native decomp port on the top screen (no emulator), touch companion on the bottom
- Gen 4-style battles: action/move menus live on the bottom screen as touch buttons
- Party (tap for full detail), live Hoenn map, bag, trainer card with real badge art
- Settings: background, widescreen, touch overlay, battle menu placement, fast forward, volume, experimental voxel 3D renderer
- Standard 128KB flash saves; cart/emulator saves drop right in
See the README for build-from-source instructions.