diff --git a/BasiliskII/src/AmigaOS/main_amiga.cpp b/BasiliskII/src/AmigaOS/main_amiga.cpp index 44159547..2c3ecc01 100644 --- a/BasiliskII/src/AmigaOS/main_amiga.cpp +++ b/BasiliskII/src/AmigaOS/main_amiga.cpp @@ -75,8 +75,6 @@ uint32 ROMBaseMac; // ROM base (Mac address space) uint8 *ROMBaseHost; // ROM base (host address space) uint32 ROMSize; // Size of ROM -uint32 MacsBugFlags = 0xbff; - // CPU and FPU type, addressing mode int CPUType; @@ -245,18 +243,13 @@ int main(void) RAMSize = 1024*1024; } RAMBaseHost = (uint8 *)AllocVec(RAMSize + 0x100000, MEMF_PUBLIC); -// if (RAMBaseHost == NULL) { -// ErrorAlert(GetString(STR_NO_MEM_ERR)); -// QuitEmulator(); -// } - if (RAMBaseHost == NULL) - { + if (RAMBaseHost == NULL) { uint32 newRAMSize = AvailMem(MEMF_LARGEST) - 0x100000; char xText[120]; sprintf(xText, GetString(STR_NOT_ENOUGH_MEM_WARN), RAMSize, newRAMSize); - if (1 != ChoiceAlert(xText, "Use", "Quit")) + if (ChoiceAlert(xText, "Use", "Quit") != 1) QuitEmulator(); RAMSize = newRAMSize; @@ -265,7 +258,7 @@ int main(void) ErrorAlert(GetString(STR_NO_MEM_ERR)); QuitEmulator(); } - } + } RAMBaseMac = (uint32)RAMBaseHost; D(bug("Mac RAM starts at %08lx\n", RAMBaseHost)); ROMBaseHost = RAMBaseHost + RAMSize; @@ -332,7 +325,7 @@ int main(void) // Set task priority to -1 so we don't use all processing time SetTaskPri(MainTask, -1); - WriteMacInt32(MacsBugFlags, 0); + WriteMacInt32(0xbff, 0); // MacsBugFlags // Swap stack to Mac RAM area stack_swap.stk_Lower = RAMBaseHost; diff --git a/BasiliskII/src/AmigaOS/prefs_editor_amiga.cpp b/BasiliskII/src/AmigaOS/prefs_editor_amiga.cpp index f25fa074..6ff288c5 100644 --- a/BasiliskII/src/AmigaOS/prefs_editor_amiga.cpp +++ b/BasiliskII/src/AmigaOS/prefs_editor_amiga.cpp @@ -27,7 +27,7 @@ #include #include #include -#include // jl +#include #include #include #include @@ -38,7 +38,7 @@ #include #include #include -#include // jl +#include #include #include "sysdeps.h" @@ -533,7 +533,7 @@ quit: FreeAslRequest(dev_request); FreeAslRequest(file_request); - // Delete Menus jl + // Delete Menus LT_DisposeMenu(menu); // Delete handle @@ -1271,24 +1271,21 @@ static void screen_mode_req(struct Window *win, struct LayoutHandle *h) ULONG id; - if (CyberGfxBase) - { - UWORD ModelArray[] = { PIXFMT_LUT8, PIXFMT_RGB15, PIXFMT_ARGB32, 0, ~0 }; - - id = (ULONG) CModeRequestTags(NULL, - CYBRMREQ_MinDepth, 8, - CYBRMREQ_CModelArray, (ULONG) ModelArray, - TAG_END - ); - } - else - { + // Try P96 first, because it also provides a (fake) cybergraphics.library + if (P96Base) { id = p96RequestModeIDTags( P96MA_MinDepth, 8, P96MA_FormatsAllowed, RGBFF_CLUT | RGBFF_R5G5B5 | RGBFF_A8R8G8B8, TAG_END ); - } + } else { + UWORD ModelArray[] = { PIXFMT_LUT8, PIXFMT_RGB15, PIXFMT_ARGB32, 0, ~0 }; + id = (ULONG) CModeRequestTags(NULL, + CYBRMREQ_MinDepth, 8, + CYBRMREQ_CModelArray, (ULONG) ModelArray, + TAG_END + ); + } LT_UnlockWindow(win); if (id != INVALID_ID) { @@ -1469,13 +1466,11 @@ static void parse_serial_prefs(void) ether_unit = 0; const char *str = PrefsFindString("ether"); - if (str) - { + if (str) { const char *FirstSlash = strchr(str, '/'); const char *LastSlash = strrchr(str, '/'); - if (FirstSlash && FirstSlash && FirstSlash != LastSlash) - { + if (FirstSlash && FirstSlash && FirstSlash != LastSlash) { // Device name contains path, i.e. "Networks/xyzzy.device" const char *lp = str; char *dp = ether_dev; @@ -1487,12 +1482,10 @@ static void parse_serial_prefs(void) sscanf(LastSlash, "/%ld", ðer_unit); // printf("dev=<%s> unit=%d\n", ether_dev, ether_unit); - } - else - { + } else { sscanf(str, "%[^/]/%ld", ether_dev, ðer_unit); - } } + } } // Set serial preference item diff --git a/BasiliskII/src/AmigaOS/video_amiga.cpp b/BasiliskII/src/AmigaOS/video_amiga.cpp index 6e896180..12a74737 100644 --- a/BasiliskII/src/AmigaOS/video_amiga.cpp +++ b/BasiliskII/src/AmigaOS/video_amiga.cpp @@ -655,14 +655,13 @@ static __saveds void periodic_func(void) case IDCMP_RAWKEY: if (qualifier & IEQUALIFIER_REPEAT) // Keyboard repeat is done by MacOS break; - if ((IEQUALIFIER_LALT | IEQUALIFIER_LSHIFT | IEQUALIFIER_CONTROL) == - (qualifier & (IEQUALIFIER_LALT | IEQUALIFIER_LSHIFT | IEQUALIFIER_CONTROL)) - && 0x5f == code) - { + if ((qualifier & (IEQUALIFIER_LALT | IEQUALIFIER_LSHIFT | IEQUALIFIER_CONTROL)) == + (IEQUALIFIER_LALT | IEQUALIFIER_LSHIFT | IEQUALIFIER_CONTROL)) + && code == 0x5f) { SetInterruptFlag(INTFLAG_NMI); TriggerInterrupt(); break; - } + } if (code & IECODE_UP_PREFIX) ADBKeyUp(keycode2mac[code & 0x7f]); diff --git a/BasiliskII/src/include/macos_util.h b/BasiliskII/src/include/macos_util.h index 8db49ce9..d3a2e464 100644 --- a/BasiliskII/src/include/macos_util.h +++ b/BasiliskII/src/include/macos_util.h @@ -265,7 +265,7 @@ extern void MountVolume(void *fh); // Mount volume with given file handle (s extern void FileDiskLayout(loff_t size, uint8 *data, loff_t &start_byte, loff_t &real_size); // Calculate disk image file layout given file size and first 256 data bytes extern uint32 DebugUtil(uint32 Selector); // DebugUtil() Replacement -// Construct four-character-code from string +// Construct four-character-code #define FOURCC(a,b,c,d) (((uint32)(a) << 24) | ((uint32)(b) << 16) | ((uint32)(c) << 8) | (uint32)(d)) // Emulator identification codes (4 and 2 characters)