Skip to content

Conversation

JoeMatt
Copy link

@JoeMatt JoeMatt commented Jun 25, 2025

This is a WIP.

It's from an older commit and has a lot of extra testing files.

It's setup for testing / building on macOS for libretro or the main app.

If someone wants to take a stab at it,

Building

Libretro dylib

./build.sh

You can edit this file or use flags to change from Debug/Release and other flags.

Testing and .app

Edit this file with your XCode path (I was using an older 16.2 for "reasons")

https://github.com/flyinghead/flycast/pull/1987/files#diff-0869deaeb6cabbb5daf2d47cee7447314cf3f7ff2fb461ebc81ac7698a968d0d

./tests/tesh.sh

This will build the .app, and testing binary (using a new common static lib).

Some content is auto-generated so I usually run this whole single command to,

  1. Build
  2. Run tests
  3. Start the app in LLDB

Run once to create cmake setup:

tests/test.sh

Then rebuild/run changes with this:

PATH="/opt/homebrew/bin:$PATH" python3 tools/gen_sh4_ir_tables.py &&  cmake --build build_for_tests -j8 &&
build_for_tests/flycast_tests && lldb -o run -- build_for_tests/Flycast.app/Contents/MacOS/Flycast

Status

  • BIOS boot starts but endless loops (bad memory writes too)
  • Most (all?) op codes done
  • Will report missing opcodes with an exception if one is found

TODO

Invesigate JMP, CMP and LOAD/STORE ops for correctness to see if that's why we're looping.

JoeMatt added 30 commits June 21, 2025 02:03
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
Signed-off-by: Joseph Mattiello <git@joemattiello.com>
@JoeMatt JoeMatt closed this Jul 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant