Commit Graph

6 Commits

Author SHA1 Message Date
ml aaa6e772a7 Replace bundled ROM extraction with runtime import/download flow
Commodore ROMs are copyrighted and can no longer ship inside the APK.
MainActivity now detects missing ROMs on first launch and blocks
startup with a dialog offering two paths: pick files via the system
file picker, or download the official VICE 3.8 tarball and extract the
four ROMs from it client-side (minimal USTAR reader, no extra deps).

- Drop the extractViceRoms Gradle task and asset bundling; add
  res/extract_roms.sh for local sideloading during development instead
- gitignore keystores/keystore.properties ahead of a signed release
- Move architecture.md into docs/, refresh it for the screen-mirroring
  and watch-input additions, and add accompanying Mermaid diagrams
- Add docs/debugging.md and docs/publish.md (Play Store release notes,
  ROM-import compliance rationale)
2026-06-25 09:27:19 +02:00
ml 5a390aa733 Add C64 SID audio output via OpenSL ES with sound toggle 2026-06-13 13:54:41 +02:00
ml 7a8cd492d5 Fix C64 display rendering and keyboard matrix
- Remove android:background from C64DisplayView: SurfaceView's XML
    background painted over the surface, hiding all rendered content
  - Fix pixel byte order: copyPixelsFromBuffer reads [R,G,B,A] bytes, so
    physical colors must be packed as ABGR (not ARGB) to avoid R/B swap
  - Fix six wrong C64 keyboard matrix positions (1, 2, Q, E, R, Y) taken
    from the authoritative VICE hardware matrix table
2026-06-10 19:04:18 +02:00
ml 8c7f2e3306 Add VICE C64 emulator integration to Android companion app
Cross-compiles VICE 3.8 headless for ARM64 and x86_64 as part of the
  Android Studio build (Gradle buildVice task + build_vice.sh). The JNI
  bridge (vice_jni.c) renders frames into a shared framebuffer read by
  C64DisplayView, and forwards key events from C64KeyboardView to VICE's
  keyboard matrix. Without ROM files the app shows a placeholder blue
  screen; with ROMs and a .d64 disk image the full C64 emulator runs.
2026-06-04 16:24:14 +02:00
ml 724157aca3 Removed dead code 2026-06-01 16:31:29 +02:00
ml d7adb56197 Initial commit, adding original binaries, initial watch and companion apps which can talk 2026-06-01 15:53:11 +02:00