- Added INPUT_FRAME_TICK event type to input_event.h - Added wants_frame_updates() virtual method to Game base class - Implemented frame tick logic in main loop (basic1.cpp and emulator/main.cpp) - Added Lua bindings: game.set_frame_updates(bool) and INPUT.FRAME_TICK - Updated LuaGame to support frame updates via registry flag - Updated ball.lua to use continuous frame updates for smooth animation - Both hardware and emulator now support continuous animation for physics/games
Emulator for basic1 Game Logic
This folder contains a desktop emulator for the basic1 game, using the same game logic and rendering libraries as the embedded version. The emulator uses SFML for graphics and input, allowing you to test and develop the game on your computer.
Features
- Uses the same game logic and rendering code as the embedded firmware
- Emulates touch with mouse clicks
- Emulates hardware buttons with keyboard keys
- Runs as a native desktop application (no Pico SDK required)
Build Instructions
- Install SFML (https://www.sfml-dev.org/)
- Run
cmake . && makein this directory - Run
./basic1_emulator
Input Mapping
- Mouse click: Emulates touch
- Arrow keys, space, enter: Emulate hardware buttons
Extending
- Add new features or overlays for debugging
- Update input mapping as needed
This emulator is independent from the embedded build system.