Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/UnrealPowerz/powar
A Pokéwalker emulator
https://github.com/UnrealPowerz/powar
Last synced: about 1 month ago
JSON representation
A Pokéwalker emulator
- Host: GitHub
- URL: https://github.com/UnrealPowerz/powar
- Owner: UnrealPowerz
- License: gpl-3.0
- Created: 2022-08-13T14:45:13.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-12-28T14:50:04.000Z (almost 2 years ago)
- Last Synced: 2024-08-01T21:44:37.707Z (5 months ago)
- Language: C
- Size: 55.7 KB
- Stars: 82
- Watchers: 6
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- starred - UnrealPowerz/powar - A Pokéwalker emulator (C)
README
# Powar
Powar is a **prototype** Pokéwalker emulator. It is still missing tons of features and cannot connect to DS emulator (yet).
![Pokéwalker home screen](/pics/home.png)
![Pokéwalker battle screen](/pics/battle.png)# Usage
Get a Pokéwalker ROM and EEPROM image, you can dump these yourself using [PoroCYon's dumper for DSi](https://git.titandemo.org/PoroCYon/pokewalker-rom-dumper) or
[DmitryGR's PalmOS app](https://dmitry.gr/?r=05.Projects&proj=28.%20pokewalker#_TOC_377b8050cfd1e60865685a4ca39bc4c0).Name these images `rom.bin` and `eeprom.bin` respectively and put them in the same folder as the emulator.
Start the emulator. The buttons are mapped to the arrow keys (left, down, right) and WSD.
# Features
## Supported
- All CPU instructions the walker uses (so far)
- EEPROM
- LCD
- Buttons
- Some Timer W functions## Not yet supported
- RTC
- Accelerometer
- Most interrupts
- Sleep mode
- IR communication
- Sound
- Many more :')# Compiling
## Linux
Make sure SDL2 and CMake are installed.
```
$ cmake .
$ cmake --build .
```## Windows
Make sure Visual Studio is installed, along with the "Desktop development with C++" workload. Additionally, you'll need to install [vcpkg](https://vcpkg.io/en/getting-started.html), activate the Visual Studio integration by running `vcpkg integrate install` from an elevated prompt, and install SDL2 by running `vcpkg install sdl2`.
From Visual Studio use File > Open > CMake to open the CMakeLists.txt file. Use the Select Startup Item menu to select powar.exe, and click Run. This will result in an error, but will create the `out\build\x64-Debug` directory. Place your `rom.bin` and `eeprom.bin` in that folder and click Run again.
## Emscripten (WebAssembly)
Make sure CMake is installed, and then install Emscripten [using the emsdk](https://emscripten.org/docs/getting_started/downloads.html). After installation, activate PATH and other environment variables using the provided scripts (`emsdk_env.sh`, `emsdk_env.bat`, or `emsdk_env.ps1` based on your shell). On Windows, you'll also need to put [Ninja](https://ninja-build.org/) in your `PATH`.
```
$ emcmake cmake .
$ cmake --build .
```You can then run the web interface by starting a web server in the `static` folder.
# Contributing
Help is always welcome.
Would not be possible without [DmitryGR's work](https://dmitry.gr/?r=05.Projects&proj=28.%20pokewalker) on hacking and documenting the Pokéwalker, or [PoroCYon's dumper](https://git.titandemo.org/PoroCYon/pokewalker-rom-dumper).