1220 Commits
Author SHA1 Message Date
Wolfgang Thaller afedcdcb53 Merge pull request #324 from garethpotter/fix-atomic-include-ordering
Fix include ordering in atomic.c on macOS when using universal interfaces
2026-10-17 00:23:37 +02:00
Gareth Potter bb3e2ef709 fix include ordering in atomic.c on macOS (case-insensitive filesystem) 2026-10-16 10:24:22 +01:00
Wolfgang Thaller 91b5d69b5d Update multiversal 2026-10-16 01:15:08 +02:00
Wolfgang Thaller 389a81d8dc Merge branch 'newlib-fix' 2026-10-16 00:21:58 +02:00
Wolfgang Thaller 834be89830 newlib: fix m68k memcpy alignment problems
Pick up upstream newlib commit 588c19ecdbcca1e70030688c1b08c342ada01b84 ("Fix memcpy alignment problems for m68k architecture", Yuichi Nakamura), which the bundled newlib 4.6.0 predates.

Under MISALIGNED_OK=0 (68000) an unaligned copy longer than 64 KiB was truncated, because the residue loop used "dbra d1" over the whole length. Also fixes 68020 misaligned access, word-aligned 68000 access, and the signed loop comparison that broke copies >2 GiB.

Fixes #315
2026-10-16 00:21:57 +02:00
Wolfgang Thaller 749150ec53 update multiversal (fixes #323) and fix LaunchAPPL SKILL 2026-10-15 22:02:45 +02:00
Wolfgang Thaller a38d2919e7 add some SKILLs 2026-10-15 21:23:40 +02:00
Wolfgang Thaller 09e181af4c update multiversal (fixes #322) 2026-10-15 20:30:25 +02:00
Wolfgang Thaller 78a6736cc4 Merge pull request #321 from hoffman373/ndrv-sample-multiversal
Fixed a spelling error and updated previous merge to adjust with latest version of multiversal
2026-10-15 20:10:22 +02:00
Wolfgang Thaller 5e3da26052 Update multiversal 2026-10-15 20:09:01 +02:00
Dustin Hoffman b322aafa4d Multiversal now has <DriverServices.h>, with DriverDescription but not
DoDriverIO's types, and NumVersion is a plain integer there. Recognize when
the Universal Interfaces are present by the UNIVERSAL_INTERFACES_VERSION rather than by
the header's presence, and with Multiversal declare only what it lacks.
2026-10-14 22:37:11 -04:00
Wolfgang Thaller 0101fa21ab make sure our own libhfs takes precedence (#139) 2026-10-15 00:05:18 +02:00
Wolfgang Thaller afe277e4db Update multiversal (fixes #320) 2026-10-14 23:55:22 +02:00
Wolfgang Thaller 96959d3343 Update multiversal 2026-10-14 23:49:37 +02:00
Wolfgang Thaller d8b891a602 Merge pull request #319 from rubin55/fix-ndrv-universal
Fix for Samples/NDRV/driver.c with Universal headers.
2026-10-09 13:16:28 +02:00
Rubin Simons 09d629087a Fix for Samples/NDRV/driver.c with --universal 2026-10-07 10:53:53 +02:00
Wolfgang Thaller 8d1e0da4cb Merge pull request #317 from hoffman373/add-ndrv
Add ndrv
2026-10-07 00:28:51 +02:00
Wolfgang Thaller a4f38da117 Console: fix port-setting bugs 2026-10-05 01:19:56 +02:00
Wolfgang Thaller f55567420c missing file from previous commit: CMake changes for test case 2026-10-05 01:19:42 +02:00
Wolfgang Thaller 64f55cac07 fix .eh_frame garbage collection 2026-10-04 23:25:28 +02:00
Wolfgang Thaller 927cad44d9 BFD/ELF: don't corrupt relocations for .eh_frame inputs in custom
output sections
2026-10-04 22:24:53 +02:00
Wolfgang Thaller 7927e7f8ad implement __atomic_ functions (single-threaded only for now) 2026-10-04 22:24:52 +02:00
Wolfgang Thaller 22da77d5b5 minor Console bug fix for Carbon (restoring TextFace) 2026-10-04 22:24:52 +02:00
Wolfgang Thaller 516af82534 Update multiversal 2026-10-04 22:24:52 +02:00
Wolfgang Thaller 1f42f3d88c add -universal variants of dev shells 2026-10-04 22:24:52 +02:00
Wolfgang Thaller 9050d49497 Elf2Mac: guard against duplicate relocations 2026-10-04 22:24:52 +02:00
Wolfgang Thaller 6ae492cd64 fix relative path in HelloWorld Makefile 2026-10-04 22:24:51 +02:00
Wolfgang Thaller 4cec112095 add C++ std::print() version of HelloWorld 2026-10-04 22:24:51 +02:00
Wolfgang Thaller 278e981eb4 minimal creat implementation 2026-10-04 22:24:51 +02:00
Dustin HoffmanandClaude Opus 5.5 97cdf43325 README: describe the NDRV sample and add_ndrv()
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 17:35:11 -04:00
Dustin HoffmanandClaude Opus 5.5 a0bcdddbd5 Samples: add NDRV, a native driver that does nothing
Built for classic PowerPC only, with add_ndrv(... KIND GENERIC).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 17:35:11 -04:00
Dustin HoffmanandClaude Opus 5.5 cf46e71cb2 cmake: add add_ndrv() for PowerPC native drivers
Builds an 'ndrv' the Driver Loader loads from the Extensions folder:
links with ndrv.lds and an export list, runs MakePEF, and Rezzes the PEF
with RetroPPCndrv.r into <name>.bin and <name>.dsk.

KIND GENERIC, AIM or SIM writes the export list for a Device Manager
driver (DoDriverIO), an ATA Interface Module (ThePluginDispatchTable) or a
SCSI Interface Module (LoadSIM), each with TheDriverDescription. EXPORTS
takes a list file instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 17:35:11 -04:00
Dustin HoffmanandClaude Opus 5.5 3730f4c0c7 libretro: add RetroPPCndrv.r, the 'cfrg' template for native drivers
One member, kDropInAdditionCFrag, no 'SIZE'. Mac OS skips a driver file
without a 'cfrg' in its resource fork.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 17:35:11 -04:00
Dustin HoffmanandClaude Opus 5.5 e1e1029a5c cmake: add ndrv.lds, a linker script for native drivers
Lays out GCC's XCOFF sections the way MakePEF expects for an 'ndrv':
read-only data goes in .data, since a driver is never memory-mapped, and
.data starts with a pad word against a ROM DisposePtr bug. From
elliotnunn/classicvirtio, MIT-licensed. Installed with the .cmake files.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 17:35:11 -04:00
Wolfgang Thaller f3b44a4749 Merge pull request #316 from vaelen/system-extra-file
LaunchAPPL: --system-extra-file, extra system-disk files on the Mini vMac boot disk
2026-09-26 21:07:45 +02:00
Andrew C. YoungandClaude Fable 5.1 f84e8d3bab LaunchAPPL: --system-extra-file, extra system-disk files on the Mini vMac boot disk
The Mini vMac launcher builds its boot disk from scratch and copies only
the System file, the debugger and a fixed handful of extensions from the
configured system image. Anything else a program under test needs is
absent -- notably the 'AppleTalk' file, which carries the .XPP and .DSP
drivers on System 6/7, so OpenDriver(".DSP") returns fnfErr on every
LaunchAPPL boot even though the system image has it.

Add a repeatable --system-extra-file NAME option (config-file key
system-extra-file). Each named file is copied by name from the system
disk's blessed folder when present, right after the debugger file, using
the existing CopySystemFile path; a name missing from the system disk is
skipped, so one config can serve images that differ. Documented in
LaunchAPPL.cfg.example with the AppleTalk file as the example.

Verified on macOS with a System 6.0.8 image: an app that opens .DSP
fails without the option and succeeds with `--system-extra-file
AppleTalk`.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KKngnYbKgJyQ78EqPQZAGL
2026-09-07 19:58:12 +09:00
Wolfgang Thaller f99ecb5aeb Merge pull request #312 from doctashay/fix-realloc-leak
libretro: fix`_realloc_r` memory leaks and zero-size reallocation
2026-07-21 21:13:18 +02:00
Shay 1740769c6c libretro: fix_realloc_r memory leaks and zero-size reallocation
The previous `_realloc_r` implementation would leak the original memory block (`ptr`) when the in-place `SetPtrSize` call failed and a new block had to be allocated.

This change also adds correct handling for `realloc(ptr, 0)`, which should free the block and return `NULL`.
2026-07-20 10:00:10 -06:00
Wolfgang Thaller 335fa54f6d update multiversal 2026-06-06 02:21:39 +02:00
Wolfgang Thaller a0b7c47d42 fix a problem with the nix development shell on macos 2026-06-06 02:21:29 +02:00
Wolfgang Thaller d785ac4d62 update multiversal 2026-06-06 02:01:21 +02:00
Wolfgang Thaller e19ad4edf7 Merge pull request #310 from autc04:github-actions
gh actions based CI + boost system fix
2026-06-06 01:57:15 +02:00
Wolfgang Thaller abc3143226 bump upload-artifacts GH action version 2026-06-06 01:56:26 +02:00
Wolfgang Thaller db3746c994 remove if: for cachix - deepseek was wrong here. 2026-06-06 01:21:37 +02:00
Wolfgang Thaller 4c44daae7a remove azure build 2026-06-06 00:55:12 +02:00
Wolfgang Thaller 34bc077751 work around an intellisense false positive 2026-06-06 00:52:28 +02:00
Wolfgang Thaller 3d99e06e96 build nix mac/linux using matrix 2026-06-06 00:44:50 +02:00
Wolfgang Thaller f0f397f20f bump minimum cmake version (minimally) 2026-06-06 00:44:21 +02:00
Wolfgang Thaller ae2e2472e2 remove mentions of boost::system 2026-06-06 00:44:08 +02:00
Wolfgang Thaller c836638c43 gh actions based CI 2026-06-06 00:08:59 +02:00