diff options
Diffstat (limited to 'packages/libogcfpc/src/ogc')
-rw-r--r-- | packages/libogcfpc/src/ogc/arqmgr.inc | 2 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/cast.inc | 27 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/dsp.inc | 2 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/gx.inc | 2 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/isfs.inc | 4 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/lwp_watchdog.inc | 4 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/si.inc | 5 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/system.inc | 4 | ||||
-rw-r--r-- | packages/libogcfpc/src/ogc/usbstorage.inc | 2 |
9 files changed, 30 insertions, 22 deletions
diff --git a/packages/libogcfpc/src/ogc/arqmgr.inc b/packages/libogcfpc/src/ogc/arqmgr.inc index 66e8b9d479..251bfa64bb 100644 --- a/packages/libogcfpc/src/ogc/arqmgr.inc +++ b/packages/libogcfpc/src/ogc/arqmgr.inc @@ -8,6 +8,8 @@ procedure ARQM_Init(arambase: cuint32; len: cint32); cdecl; external; function ARQM_PushData(buffer: pointer; len: cint32): cuint32; cdecl; external; +procedure ARQM_Pop(); cdecl; external; + function ARQM_GetZeroBuffer: cuint32; cdecl; external; function ARQM_GetStackPointer: cuint32; cdecl; external; diff --git a/packages/libogcfpc/src/ogc/cast.inc b/packages/libogcfpc/src/ogc/cast.inc index 3fa5df538e..cd02620413 100644 --- a/packages/libogcfpc/src/ogc/cast.inc +++ b/packages/libogcfpc/src/ogc/cast.inc @@ -21,14 +21,17 @@ const {$ifdef GEKKO} +const + GQR_SCALE_MASK = ($3f shl 8); + procedure __set_gqr(_reg,_val: cint); inline; procedure CAST_Init(); inline; -procedure CAST_SetGQR2(_type, scale: cuint32); inline; -procedure CAST_SetGQR3(_type, scale: cuint32); inline; -procedure CAST_SetGQR4(_type, scale: cuint32); inline; -procedure CAST_SetGQR5(_type, scale: cuint32); inline; -procedure CAST_SetGQR6(_type, scale: cuint32); inline; -procedure CAST_SetGQR7(_type, scale: cuint32); inline; +procedure CAST_SetGQR2(_type, scale: cint32); inline; +procedure CAST_SetGQR3(_type, scale: cint32); inline; +procedure CAST_SetGQR4(_type, scale: cint32); inline; +procedure CAST_SetGQR5(_type, scale: cint32); inline; +procedure CAST_SetGQR6(_type, scale: cint32); inline; +procedure CAST_SetGQR7(_type, scale: cint32); inline; function __castu8f32(_in: pcuint8): f32; inline; function __castu16f32(_in: pcuint16): f32; inline; function __casts8f32(_in: pcint8): f32; inline @@ -85,7 +88,7 @@ procedure CAST_SetGQR2(_type, scale: cuint32); inline; var val: cuint32; begin - val := (((((scale) shl 8) or (_type)) shl 16) or (((scale) shl 8) or (_type))); + val := ((((((scale) shl 8) and GQR_SCALE_MASK) or (_type)) shl 16) or ((((scale) shl 8) and GQR_SCALE_MASK) or (_type))); __set_gqr(GQR2,val); end; @@ -93,7 +96,7 @@ procedure CAST_SetGQR3(_type, scale: cuint32); inline; var val: cuint32; begin - val := (((((scale) shl 8) or (_type)) shl 16) or (((scale) shl 8) or (_type))); + val := ((((((scale) shl 8) and GQR_SCALE_MASK) or (_type)) shl 16) or ((((scale) shl 8) and GQR_SCALE_MASK) or (_type))); __set_gqr(GQR3,val); end; @@ -101,7 +104,7 @@ procedure CAST_SetGQR4(_type, scale: cuint32); inline; var val: cuint32; begin - val := (((((scale) shl 8) or (_type)) shl 16) or (((scale) shl 8) or (_type))); + val := ((((((scale) shl 8) and GQR_SCALE_MASK) or (_type)) shl 16) or ((((scale) shl 8) and GQR_SCALE_MASK) or (_type))); __set_gqr(GQR4,val); end; @@ -109,7 +112,7 @@ procedure CAST_SetGQR5(_type, scale: cuint32); inline; var val: cuint32; begin - val := (((((scale) shl 8) or (_type)) shl 16) or (((scale) shl 8) or (_type))); + val := ((((((scale) shl 8) and GQR_SCALE_MASK) or (_type)) shl 16) or ((((scale) shl 8) and GQR_SCALE_MASK) or (_type))); __set_gqr(GQR5,val); end; @@ -117,7 +120,7 @@ procedure CAST_SetGQR6(_type, scale: cuint32); inline; var val: cuint32; begin - val := (((((scale) shl 8) or (_type)) shl 16) or (((scale) shl 8) or (_type))); + val := ((((((scale) shl 8) and GQR_SCALE_MASK) or (_type)) shl 16) or ((((scale) shl 8) and GQR_SCALE_MASK) or (_type))); __set_gqr(GQR6,val); end; @@ -125,7 +128,7 @@ procedure CAST_SetGQR7(_type, scale: cuint32); inline; var val: cuint32; begin - val := (((((scale) shl 8) or (_type)) shl 16) or (((scale) shl 8) or (_type))); + val := ((((((scale) shl 8) and GQR_SCALE_MASK) or (_type)) shl 16) or ((((scale) shl 8) and GQR_SCALE_MASK) or (_type))); __set_gqr(GQR7,val); end; diff --git a/packages/libogcfpc/src/ogc/dsp.inc b/packages/libogcfpc/src/ogc/dsp.inc index 125f251737..b6b41bd956 100644 --- a/packages/libogcfpc/src/ogc/dsp.inc +++ b/packages/libogcfpc/src/ogc/dsp.inc @@ -79,6 +79,8 @@ procedure DSP_Halt; cdecl; external; procedure DSP_Unhalt; cdecl; external; +function DSP_GetDMAStatus(): cuint32; cdecl; external; + function DSP_RegisterCallback(usr_cb: DSPCallback): DSPCallback; cdecl; external; {$ENDIF} diff --git a/packages/libogcfpc/src/ogc/gx.inc b/packages/libogcfpc/src/ogc/gx.inc index 4dfb3f8511..c44e955d4f 100644 --- a/packages/libogcfpc/src/ogc/gx.inc +++ b/packages/libogcfpc/src/ogc/gx.inc @@ -1030,6 +1030,7 @@ procedure GX_LoadPosMtxIdx(mtxidx: cuint16; pnidx: cuint32); cdecl; external; procedure GX_LoadNrmMtxImm(mt: Mtx; pnidx: cuint32); cdecl; external; +procedure GX_LoadNrmMtxImm3x3(mt: Mtx33; pnidx: cuint32); cdecl; external; procedure GX_LoadNrmMtxIdx3x3(mtxidx: cuint16; pnidx: cuint32); cdecl; external; @@ -2300,6 +2301,7 @@ procedure GX_InitTexObjLOD(obj: PGXTexObj; minfilt, magfilt: cuint8; procedure GX_SetTexCoordScaleManually(texcoord, enable: cuint8; ss, ts: cuint16); cdecl; external; +procedure GX_SetTexCoordCylWrap(texcoord, s_enable, t_enable: cuint8); cdecl; external; (*! * \fn void GX_SetTexCoordBias(u8 texcoord,u8 s_enable,u8 t_enable) diff --git a/packages/libogcfpc/src/ogc/isfs.inc b/packages/libogcfpc/src/ogc/isfs.inc index 2c3d397e9e..ad6af87df0 100644 --- a/packages/libogcfpc/src/ogc/isfs.inc +++ b/packages/libogcfpc/src/ogc/isfs.inc @@ -22,12 +22,12 @@ type function ISFS_Initialize: cint32; cdecl; external; - function ISFS_Deinitialize: cint32; cdecl; external; +function ISFS_Format(): cint32; cdecl; external; +function ISFS_FormatAsync(cb: isfscallback; usrdata: pointer): cint32; cdecl; external; function ISFS_Open(filepath: pcchar; mode: cuint8): cint32; cdecl; external; - function ISFS_OpenAsync(filepath: pcchar; mode: cuint8; cb: isfscallback; usrdata: pointer): cint32; cdecl; external; diff --git a/packages/libogcfpc/src/ogc/lwp_watchdog.inc b/packages/libogcfpc/src/ogc/lwp_watchdog.inc index 354a7d0694..90c99da9cc 100644 --- a/packages/libogcfpc/src/ogc/lwp_watchdog.inc +++ b/packages/libogcfpc/src/ogc/lwp_watchdog.inc @@ -125,12 +125,12 @@ end; function tick_microsecs(ticks: cuint64): cuint64; inline; begin - result := (((cuint64(ticks)*8) mod cuint64(TB_TIMER_CLOCK div 125))); + result := (((cuint64(ticks)*8) div cuint64(TB_TIMER_CLOCK div 125)) mod TB_USPERSEC); end; function tick_nanosecs(ticks: cuint64): cuint64; inline; begin - result := (((cuint64(ticks)*8000) mod cuint64(TB_TIMER_CLOCK div 125))); + result := (((cuint64(ticks)*8000) div cuint64(TB_TIMER_CLOCK div 125)) mod TB_NSPERSEC); end; diff --git a/packages/libogcfpc/src/ogc/si.inc b/packages/libogcfpc/src/ogc/si.inc index 538ef2e560..d1e049f97f 100644 --- a/packages/libogcfpc/src/ogc/si.inc +++ b/packages/libogcfpc/src/ogc/si.inc @@ -66,9 +66,8 @@ type function SI_Sync: cuint32; cdecl; external; - function SI_Busy: cuint32; cdecl; external; - +procedure SI_SetXY(line: cuint16; cnt: cuint8); cdecl; external; function SI_IsChanBusy(chan: cint32): cuint32; cdecl; external; procedure SI_EnablePolling(poll: cuint32); cdecl; external; @@ -82,7 +81,7 @@ function SI_GetStatus(chan: cint32): cuint32; cdecl; external; function SI_GetResponse(chan: cint32; buf: pointer): cuint32; cdecl; external; function SI_GetResponseRaw(chan: cint32): cuint32; cdecl; external; - +procedure SI_SetSamplingRate(samplingrate: cuint32); cdecl; external; procedure SI_RefreshSamplingRate; cdecl; external; function SI_Transfer(chan: cint32; out_: pointer; out_len: cuint32; diff --git a/packages/libogcfpc/src/ogc/system.inc b/packages/libogcfpc/src/ogc/system.inc index 493c20960a..dfd39aa81b 100644 --- a/packages/libogcfpc/src/ogc/system.inc +++ b/packages/libogcfpc/src/ogc/system.inc @@ -115,7 +115,7 @@ type - resetcallback = procedure; + resetcallback = procedure(irq: cuint32; ctx: pointer); powercallback = procedure; resetfunction = function(_final: cint32): cint32; @@ -139,7 +139,7 @@ procedure SYS_ProtectRange(chan: cuint32; addr: pointer; bytes, cntrl: cuint32); procedure SYS_StartPMC(mcr0val, mcr1val: cuint32); cdecl; external; procedure SYS_DumpPMC(); cdecl; external; procedure SYS_StopPMC(); cdecl; external; - +procedure SYS_ResetPMC(); cdecl; external; function SYS_CreateAlarm(thealarm: psyswd_t): cint32; cdecl; external; diff --git a/packages/libogcfpc/src/ogc/usbstorage.inc b/packages/libogcfpc/src/ogc/usbstorage.inc index 994a21e0ab..f3a1a725fc 100644 --- a/packages/libogcfpc/src/ogc/usbstorage.inc +++ b/packages/libogcfpc/src/ogc/usbstorage.inc @@ -57,7 +57,7 @@ type praw_device_command = ^raw_device_command; function USBStorage_Initialize(): cint32; cdecl; external; - +procedure USBStorage_Deinitialize(); cdecl; external; function USBStorage_Open(dev: pusbstorage_handle; device_id: cint32; vid, pid: cuint16): cint32; cdecl; external; function USBStorage_Close(dev: pusbstorage_handle): cint32; cdecl; external; function USBStorage_Reset(dev: pusbstorage_handle): cint32; cdecl; external; |