From 88fae8936982a8ad76730ea333e04d7757c9b25e Mon Sep 17 00:00:00 2001 From: Abdessamad Derraz <3028866+Abdess@users.noreply.github.com> Date: Sun, 18 Oct 2026 19:35:40 +0200 Subject: [PATCH] feat: profile opera's built-in Opera Boot ROM Upstream compiles Opera Boot into the core as the default BIOS and reads opera-boot.bin from the system directory. Every retail BIOS becomes optional; opera-boot.bin is collected from the opera-boot release, identical to the embedded image. --- bios/3DO Company/3DO/opera-boot.bin | Bin 0 -> 131072 bytes database.json | 28 ++++++++- emulators/opera.yml | 90 ++++++++++++++++------------ 3 files changed, 77 insertions(+), 41 deletions(-) create mode 100644 bios/3DO Company/3DO/opera-boot.bin diff --git a/bios/3DO Company/3DO/opera-boot.bin b/bios/3DO Company/3DO/opera-boot.bin new file mode 100644 index 0000000000000000000000000000000000000000..f014b9d1f1ca21f786f1db3b85efd6b8246d2b7e GIT binary patch literal 131072 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 Bx