From 9ea4529d125fd5c6b99431093d33b169bdd60d45 Mon Sep 17 00:00:00 2001 From: Adam Goode Date: Fri, 5 Apr 2024 22:19:14 -0400 Subject: [PATCH] Delete glue.c It hasn't been used since https://github.com/autc04/Retro68/commit/0e11f298ba409d0633ab7aa12a378f557f9fbfbb. The actual glue.c is in multiversal. --- libretro/CMakeLists.txt | 1 - libretro/glue.c | 477 ---------------------------------------- 2 files changed, 478 deletions(-) delete mode 100644 libretro/glue.c diff --git a/libretro/CMakeLists.txt b/libretro/CMakeLists.txt index 5490e3aee6..a000968e56 100644 --- a/libretro/CMakeLists.txt +++ b/libretro/CMakeLists.txt @@ -30,7 +30,6 @@ if(CMAKE_SYSTEM_NAME MATCHES Retro68) PoorMansDebugging.h MultiSegApp.c LoadSeg.s - # glue.c qdglobals.c Retro68.r Retro68APPL.r diff --git a/libretro/glue.c b/libretro/glue.c deleted file mode 100644 index 7636b91f30..0000000000 --- a/libretro/glue.c +++ /dev/null @@ -1,477 +0,0 @@ -/* - Copyright 2015 Wolfgang Thaller. - - This file is part of Retro68. - - Retro68 is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - Retro68 is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - Under Section 7 of GPL version 3, you are granted additional - permissions described in the GCC Runtime Library Exception, version - 3.1, as published by the Free Software Foundation. - - You should have received a copy of the GNU General Public License and - a copy of the GCC Runtime Library Exception along with this program; - see the files COPYING and COPYING.RUNTIME respectively. If not, see - . -*/ - -#include -#include -#include -#include -#include -#include -#include -#include - -#pragma parameter __D0 _GetPtrSize(__A0) -pascal long _GetPtrSize(Ptr ptr) = { 0xA021 }; - -pascal Size GetPtrSize(Ptr ptr) -{ - long tmp = _GetPtrSize(ptr); - if(tmp > 0) - return (Size) tmp; - else - return 0; -} - -#pragma parameter __D0 _GetHandleSize(__A0) -pascal long _GetHandleSize(Handle h) = { 0xA025 }; - -pascal Size GetHandleSize(Handle h) -{ - long tmp = _GetHandleSize(h); - if(tmp > 0) - return (Size) tmp; - else - return 0; -} - -#pragma parameter __A0 _PtrToHand(__A0, __D0) -pascal Handle _PtrToHand(const void *srcPtr, long size) = { 0xA9E3 }; - -EXTERN_API( OSErr ) -PtrToHand( - const void * srcPtr, - Handle * dstHndl, - long size) -{ - *dstHndl = _PtrToHand(srcPtr, size); - - return MemError(); -} - -#pragma parameter __A0 _HandToHand(__A0) -pascal Handle _HandToHand(Handle h) = { 0xA9E1 }; - -EXTERN_API( OSErr ) -HandToHand(Handle * theHndl) -{ - *theHndl = _HandToHand(*theHndl); - - return MemError(); -} - -#pragma parameter __D0 _StringToNum(__A0) -pascal long _StringToNum(ConstStr255Param theString) = { 0x3F3C, 0x0001, 0xA9EE }; - -EXTERN_API( void ) -StringToNum( - ConstStr255Param theString, - long * theNum) -{ - *theNum = _StringToNum(theString); -} - -#pragma parameter _NumToString(__D0, __A0) -pascal long _NumToString(long theNum, ConstStr255Param theString) = { 0x4267, 0xA9EE }; - -EXTERN_API( void ) -NumToString( - long theNum, - Str255 theString) -{ - _NumToString(theNum, theString); -} - -#pragma parameter __D0 _CmpString(__A0, __A1, __D0) -pascal long _CmpString(const char *a, const char *b, long lens) = { 0xA03C }; -#pragma parameter __D0 _CmpStringCase(__A0, __A1, __D0) -pascal long _CmpStringCase(const char *a, const char *b, long lens) = { 0xA43C }; -#pragma parameter __D0 _CmpStringMarks(__A0, __A1, __D0) -pascal long _CmpStringMarks(const char *a, const char *b, long lens) = { 0xA23C }; -#pragma parameter __D0 _CmpStringCaseMarks(__A0, __A1, __D0) -pascal long _CmpStringCaseMarks(const char *a, const char *b, long lens) = { 0xA63C }; - -EXTERN_API( Boolean ) -EqualString( - ConstStr255Param str1, - ConstStr255Param str2, - Boolean caseSensitive, - Boolean diacSensitive) -{ - long lens = (str1[0] << 16) | str2[0]; - long result; - if(caseSensitive) - { - if(diacSensitive) - result = _CmpStringCase(str1+1, str2+1, lens); - else - result = _CmpStringCaseMarks(str1+1, str2+1, lens); - } - else - { - if(diacSensitive) - result = _CmpString(str1+1, str2+1, lens); - else - result = _CmpStringMarks(str1+1, str2+1, lens); - } - return result == 0; -} - -pascal void GetIndString(Str255 theString, short strListID, short index) -{ - Handle h = GetResource('STR#', strListID); - theString[0] = 0; - if(index > *(short*)*h) - return; - unsigned char *p = ((unsigned char*) *h) + 2; - while(--index > 0) - p += *p + 1; - if(index == 0) - memcpy(theString, p, p[0]+1); -} - -EXTERN_API( UniversalProcPtr ) -NGetTrapAddress( - UInt16 trapNum, - TrapType tTyp) -{ - if(tTyp == kOSTrapType) - return GetOSTrapAddress(trapNum); - else - return GetToolTrapAddress(trapNum); -} - -EXTERN_API( void ) -CountAppFiles( - short * message, - short * count) -{ - Handle h = LMGetAppParmHandle(); - if(!GetHandleSize(h)) - return; - *message = ((short*)*h)[0]; - *count = ((short*)*h)[1]; -} - -static AppFile* AppFilePtr(short index) -{ - Handle h = LMGetAppParmHandle(); - if(!GetHandleSize(h)) - return NULL; - short count = ((short*)*h)[1]; - if(index < 1 || index > count) - return NULL; - index--; - - Ptr p = *h + 4; - while(index) - { - AppFile *f = (AppFile*) p; - p += (8 + 1 + f->fName[0] + 1) & ~1; - } - return (AppFile*) p; -} - -EXTERN_API( void ) -GetAppFiles( - short index, - AppFile * theFile) -{ - AppFile *ptr = AppFilePtr(index); - if(ptr) - memcpy(theFile, ptr, 8 + 1 + ptr->fName[0]); -} - -EXTERN_API( void ) -ClrAppFiles(short index) -{ - AppFile *ptr = AppFilePtr(index); - if(ptr) - ptr->fType = 0; -} - - -pascal OSErr SetVol (ConstStr63Param volName, short vRefNum) -{ - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.volumeParam.ioNamePtr = (StringPtr)volName; - pb.volumeParam.ioVRefNum = vRefNum; - return PBSetVolSync(&pb); -} - -EXTERN_API( OSErr ) -GetVol( - StringPtr volName, - short * vRefNum) -{ - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.volumeParam.ioNamePtr = volName; - OSErr err = PBGetVolSync(&pb); - *vRefNum = pb.volumeParam.ioVRefNum; - return err; -} - - -pascal OSErr UnmountVol (ConstStr63Param volName, short vRefNum) -{ - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.volumeParam.ioNamePtr = (StringPtr)volName; - pb.volumeParam.ioVRefNum = vRefNum; - return PBUnmountVolImmed(&pb); -} - -pascal OSErr Eject (ConstStr63Param volName, short vRefNum) -{ - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.volumeParam.ioNamePtr = (StringPtr)volName; - pb.volumeParam.ioVRefNum = vRefNum; - return PBEject(&pb); -} - -pascal OSErr FSOpen (ConstStr255Param fileName, short vRefNum, short *refNum) -{ - OSErr err; - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioParam.ioNamePtr = (StringPtr)fileName; - pb.ioParam.ioVRefNum = vRefNum; - - // Try newer OpenDF first, because it does not open drivers - err = PBOpenDFSync(&pb); - if (err == paramErr) { - // OpenDF not implemented, so use regular Open. - err = PBOpenSync(&pb); - } - - *refNum = pb.ioParam.ioRefNum; - return err; -} - -pascal OSErr OpenDF (ConstStr255Param fileName, short vRefNum, short *refNum) -{ - return FSOpen(fileName, vRefNum, refNum); -} - -pascal OSErr FSClose (short refNum) -{ - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioParam.ioRefNum = refNum; - return PBCloseSync(&pb); -} - -pascal OSErr FSRead (short refNum, long *count, void *buffPtr) -{ - OSErr err; - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioParam.ioRefNum = refNum; - pb.ioParam.ioBuffer = buffPtr; - pb.ioParam.ioReqCount = *count; - - err = PBReadSync(&pb); - *count = pb.ioParam.ioActCount; - return err; -} - -pascal OSErr FSWrite (short refNum, long *count, const void *buffPtr) -{ - OSErr err; - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioParam.ioRefNum = refNum; - pb.ioParam.ioBuffer = (void *)buffPtr; - pb.ioParam.ioReqCount = *count; - - err = PBWriteSync(&pb); - *count = pb.ioParam.ioActCount; - return err; -} - -pascal OSErr GetEOF (short refNum, long *logEOF) -{ - OSErr err; - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioParam.ioRefNum = refNum; - err = PBGetEOFSync(&pb); - *logEOF = (long)pb.ioParam.ioMisc; - return err; -} - -pascal OSErr SetEOF (short refNum, long logEOF) -{ - OSErr err; - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioParam.ioRefNum = refNum; - pb.ioParam.ioMisc = (Ptr)logEOF; - return PBGetEOFSync(&pb); -} - -pascal OSErr GetFPos (short refNum, long *filePos) -{ - OSErr err; - ParamBlockRec pb; - pb.ioParam.ioRefNum = refNum; - err = PBGetFPosSync(&pb); - *filePos = pb.ioParam.ioPosOffset; - return err; -} - -pascal OSErr SetFPos (short refNum, short posMode, long posOff) -{ - ParamBlockRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioParam.ioRefNum = refNum; - pb.ioParam.ioPosMode = posMode; - pb.ioParam.ioPosOffset = posOff; - return PBSetFPosSync(&pb); -} - -pascal OSErr Create (ConstStr255Param fileName, short vRefNum, OSType creator, - OSType fileType) -{ - ParamBlockRec pb; - OSErr err; - memset(&pb, 0, sizeof(pb)); - pb.fileParam.ioVRefNum = vRefNum; - pb.fileParam.ioNamePtr = (StringPtr)fileName; - // create the file - err = PBCreateSync(&pb); - if (err != noErr) return err; - // get previous finder info - err = PBGetFInfoSync(&pb); - if (err != noErr) return err; - // clear directory index - pb.fileParam.ioFDirIndex = 0; - // copy finder info words - pb.fileParam.ioFlFndrInfo.fdType = fileType; - pb.fileParam.ioFlFndrInfo.fdCreator = creator; - // save finder info - return PBSetFInfoSync(&pb); -} - -pascal OSErr GetWDInfo(short wdRefNum, short *vRefNum, long *dirID, - long *procID) -{ - OSErr err; - WDPBRec pb; - memset(&pb, 0, sizeof(pb)); - pb.ioVRefNum = wdRefNum; - err = PBGetWDInfo(&pb, false); - *vRefNum = pb.ioWDVRefNum; - *dirID = pb.ioWDDirID; - *procID = pb.ioWDProcID; - return err; -} - -EXTERN_API( OSErr ) -GetFInfo( - ConstStr255Param fileName, - short vRefNum, - FInfo * fndrInfo) -{ - ParamBlockRec pb; - OSErr err; - memset(&pb, 0, sizeof(pb)); - pb.fileParam.ioVRefNum = vRefNum; - pb.fileParam.ioNamePtr = (StringPtr)fileName; - err = PBGetFInfoSync(&pb); - *fndrInfo = pb.fileParam.ioFlFndrInfo; - return err; -} - -EXTERN_API( OSErr ) -HDelete( - short vRefNum, - long dirID, - ConstStr255Param fileName) -{ - HParamBlockRec pb; - pb.fileParam.ioVRefNum = vRefNum; - pb.fileParam.ioNamePtr = (StringPtr)fileName; - pb.fileParam.ioDirID = dirID; - pb.fileParam.ioFVersNum = 0; // ??? - return PBHDeleteSync(&pb); -} - -EXTERN_API( OSErr ) -HGetFInfo( - short vRefNum, - long dirID, - ConstStr255Param fileName, - FInfo * fndrInfo) -{ - HParamBlockRec pb; - OSErr err; - pb.fileParam.ioVRefNum = vRefNum; - pb.fileParam.ioNamePtr = (StringPtr)fileName; - pb.fileParam.ioFVersNum = 0; // ??? - pb.fileParam.ioFDirIndex = 0; - pb.fileParam.ioDirID = dirID; - err = PBHGetFInfoSync(&pb); - *fndrInfo = pb.fileParam.ioFlFndrInfo; - return err; -} - -EXTERN_API( OSErr ) -HSetFInfo( - short vRefNum, - long dirID, - ConstStr255Param fileName, - const FInfo * fndrInfo) -{ - HParamBlockRec pb; - OSErr err; - pb.fileParam.ioVRefNum = vRefNum; - pb.fileParam.ioNamePtr = (StringPtr)fileName; - pb.fileParam.ioFVersNum = 0; // ??? - pb.fileParam.ioFDirIndex = 0; - pb.fileParam.ioDirID = dirID; - pb.fileParam.ioFlFndrInfo = *fndrInfo; - return PBHSetFInfoSync(&pb); -} - -pascal OSErr OpenDriver(ConstStr255Param name, short *drvrRefNum) -{ - ParamBlockRec pb; - OSErr err; - memset(&pb, 0, sizeof(pb)); - - pb.ioParam.ioNamePtr = (StringPtr)name; - - err = PBOpenSync(&pb); - *drvrRefNum = pb.ioParam.ioRefNum; - return err; -} - -pascal OSErr CloseDriver(short refNum) -{ - return FSClose(refNum); -}