https://github.com/cbonello/pc1500
An emulator for the Sharp PC-1500 pocket computer written in Dart.
https://github.com/cbonello/pc1500
dartlang emulator flutter flutter-desktop flutter-web
Last synced: about 2 months ago
JSON representation
An emulator for the Sharp PC-1500 pocket computer written in Dart.
- Host: GitHub
- URL: https://github.com/cbonello/pc1500
- Owner: cbonello
- License: mit
- Created: 2020-08-04T23:12:28.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2026-03-31T21:31:36.000Z (3 months ago)
- Last Synced: 2026-04-01T00:41:00.533Z (3 months ago)
- Topics: dartlang, emulator, flutter, flutter-desktop, flutter-web
- Language: Dart
- Homepage:
- Size: 44.6 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
- Authors: AUTHORS
Awesome Lists containing this project
README
# Sharp PC-1500 Emulator
A Sharp PC-1500 / PC-1500A pocket computer emulator built with Flutter for macOS.
## Features
- Full LH5801 CPU emulation at 1.3 MHz
- Accurate LCD display (156x7 pixels) with symbol indicators
- On-screen keyboard with authentic skin
- Physical keyboard support
- Sound emulation (buzzer)
- Screenshot capture (toolbar button)
- PC-1500 and PC-1500A hardware variants
- BASIC programming environment
## Keyboard Shortcuts
| Key | Function |
|-----|----------|
| A-Z, 0-9 | Alphanumeric input |
| Enter | ENTER |
| Space | SPACE |
| Arrow keys | Navigation |
| Backspace / Delete | CL (Clear) |
| Escape | ON |
| F1-F6 | Function keys |
## Building
```bash
flutter pub get
flutter run -d macos
```
## Requirements
- Flutter SDK >= 3.10.0
- macOS 10.15+
- Xcode
## Architecture
The emulator runs the LH5801 CPU in a separate Dart isolate for consistent timing. The display and keyboard communicate with the emulator via message passing.
| Package | Description |
|---------|-------------|
| `device` | Emulator core: CPU, keyboard, LCD, and isolate management |
| `lcd` | LCD event model and display buffer decoding |
| `packages/lh5801` | LH5801 CPU emulator |
| `packages/lh5811` | LH5811 I/O port controller |
## License
See [LICENSE](LICENSE) for details.