summaryrefslogtreecommitdiff
path: root/packages/libndsfpc
diff options
context:
space:
mode:
authorLegolas <Legolas@3ad0048d-3df7-0310-abae-a5850022a9f2>2008-03-23 14:10:31 +0000
committerLegolas <Legolas@3ad0048d-3df7-0310-abae-a5850022a9f2>2008-03-23 14:10:31 +0000
commitd88bfeab20b8d8353a89958778e56c498a0df574 (patch)
treedace704a29c5794ebdb7b83b46662a1f262cb964 /packages/libndsfpc
parente65265d7e609ebc5b931a83af1386fe89f48d2bd (diff)
downloadfpc-d88bfeab20b8d8353a89958778e56c498a0df574.tar.gz
* ARM9 detection routine does not generate errors anymore
* Updated libmikmod * libnds related changes: * Fixed sound core * Improved interrupt handling - Removed unused code git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@10542 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/libndsfpc')
-rw-r--r--packages/libndsfpc/src/libmikmod/inc/mikmod.inc175
-rw-r--r--packages/libndsfpc/src/nds/arm9/sound.inc44
-rw-r--r--packages/libndsfpc/src/nds/interrupts.inc14
-rw-r--r--packages/libndsfpc/src/nds/ipc.inc18
-rw-r--r--packages/libndsfpc/src/nds/registers_alt.inc40
-rw-r--r--packages/libndsfpc/src/nds/system.inc21
6 files changed, 257 insertions, 55 deletions
diff --git a/packages/libndsfpc/src/libmikmod/inc/mikmod.inc b/packages/libndsfpc/src/libmikmod/inc/mikmod.inc
index 0c9204761b..d312eabf16 100644
--- a/packages/libndsfpc/src/libmikmod/inc/mikmod.inc
+++ b/packages/libndsfpc/src/libmikmod/inc/mikmod.inc
@@ -23,8 +23,8 @@
(**** CONST *******************************************************************)
const
LIBMIKMOD_VERSION_MAJOR = 3;
- LIBMIKMOD_VERSION_MINOR = 1;
- LIBMIKMOD_REVISION = 10;
+ LIBMIKMOD_VERSION_MINOR = 2;
+ LIBMIKMOD_REVISION = 0;
LIBMIKMOD_VERSION = (
(LIBMIKMOD_VERSION_MAJOR shl 16) or
@@ -88,6 +88,7 @@ const
DMODE_SOFT_SNDFX = $0004;
DMODE_SOFT_MUSIC = $0008;
DMODE_HQMIXER = $0010;
+ DMODE_FLOAT = $0020;
DMODE_SURROUND = $0100;
DMODE_INTERP = $0200;
DMODE_REVERSE = $0400;
@@ -146,6 +147,7 @@ const
MAXSAMPLEHANDLES = 384;
+ STM_NTRACKERS = 3;
(****** Types *****************************************************************)
type
@@ -243,6 +245,18 @@ type
MMERR_MAC_SPEED,
MMERR_MAC_START,
+ MMERR_OSX_UNKNOWN_DEVICE,
+ MMERR_OSX_BAD_PROPERTY,
+ MMERR_OSX_UNSUPPORTED_FORMAT,
+ MMERR_OSX_SET_STEREO,
+ MMERR_OSX_BUFFER_ALLOC,
+ MMERR_OSX_ADD_IO_PROC,
+ MMERR_OSX_DEVICE_START,
+ MMERR_OSX_PTHREAD,
+
+ MMERR_DOSWSS_STARTDMA,
+ MMERR_DOSSB_STARTDMA,
+
MMERR_MAX
);
@@ -329,6 +343,7 @@ type
fadevol: cushort;
panning: csshort;
kick: cuchar;
+ kick_flag: cuchar;
period: cushort;
nna: cuchar;
volflg: cuchar;
@@ -362,7 +377,9 @@ type
MP_CONTROL = packed record
main: MP_CHANNEL;
+
slave: PMP_VOICE;
+
slavechn: cuchar;
muted: cuchar;
ultoffset: cushort;
@@ -394,27 +411,34 @@ type
vibpos: cschar;
vibspd: cuchar;
vibdepth: cuchar;
+
trmpos: cschar;
trmspd: cuchar;
trmdepth: cuchar;
+
fslideupspd: cuchar;
fslidednspd: cuchar;
fportupspd: cuchar;
fportdnspd: cuchar;
ffportupspd: cuchar;
ffportdnspd: cuchar;
+
hioffset: cuint;
soffset: cushort;
+
sseffect: cuchar;
ssdata: cuchar;
chanvolslide: cuchar;
+
panbwave: cuchar;
panbpos: cuchar;
panbspd: cschar;
panbdepth: cuchar;
+
newsamp: cushort;
voleffect: cuchar;
voldata: cuchar;
+
pat_reppos: csshort;
pat_repcnt: cushort;
end;
@@ -494,6 +518,20 @@ type
TModule = MODULE;
PModule = ^MODULE;
+
+ VOICEINFO = packed record
+ i: PInstrument;
+ s: PSample;
+ panning: csshort;
+ volume: cschar;
+ period: cushort;
+ kick: cuchar;
+ end;
+ TVoiceInfo = VOICEINFO;
+ PVoiceInfo = ^VOICEINFO;
+
+
+
drvenum1 = (
MD_MUSIC = 0,
MD_SNDFX
@@ -615,6 +653,7 @@ type
HardVoiceLimit: cuchar;
SoftVoiceLimit: cuchar;
Alias: pcchar;
+ CmdLineHelp: pcchar;
CommandLine: TMDCommandLine;
IsPresent: TMDIsPresent;
SampleLoad: TMDSampleLoad;
@@ -788,6 +827,7 @@ var
load_669: MLOADER; cvar; external; (* 669 and Extended-669 (by Tran/Renaissance) *)
load_amf: MLOADER; cvar; external; (* DMP Advanced Module Format (by Otto Chrons) *)
+ load_asy: MLOADER; cvar; external; (* ASYLUM Music Format 1.0 *)
load_dsm: MLOADER; cvar; external; (* DSIK internal module format *)
load_far: MLOADER; cvar; external; (* Farandole Composer (by Daniel Potter) *)
load_gdm: MLOADER; cvar; external; (* General DigiMusic (by Edward Schlunder) *)
@@ -825,6 +865,7 @@ var
{$ifdef ARM9}
var
md_bpm: cushort; cvar;
+
procedure MikMod9_SendCommand(command: cuint); cdecl; {forward;}external;
function Player_LoadMemory(const buffer: pointer; size: cint; maxchan: cint; curious: cint): PModule; cdecl; external;
{$endif ARM9}
@@ -904,6 +945,42 @@ procedure _mm_write_M_ULONGS(value1: pcuint; value2: cint; value3: PMWriter); cd
procedure _mm_write_I_ULONGS(value1: pcuint; value2: cint; value3: PMWriter); cdecl; external;
+procedure SL_HalveSample(value1: PSAMPLOAD; value2: cint); cdecl; external;
+procedure SL_Sample8to16(value: PSAMPLOAD); cdecl; external;
+procedure SL_Sample16to8(value: PSAMPLOAD); cdecl; external;
+procedure SL_SampleSigned(value: PSAMPLOAD); cdecl; external;
+procedure SL_SampleUnsigned(value: PSAMPLOAD); cdecl; external;
+function SL_LoadSamples(): cint; cdecl; external;
+function SL_RegisterSample(value1: PSAMPLE; value2: cint; value3: PMREADER): PSAMPLOAD; cdecl; external;
+function SL_Load(value1: pointer; value2: PSAMPLOAD; value3: cuint): cint; cdecl; external;
+function SL_Init(value: PSAMPLOAD): cint; cdecl; external;
+procedure SL_Exit(value: PSAMPLOAD); cdecl; external;
+
+
+
+
+procedure UniSetRow(value: pcuchar); cdecl; external;
+function UniGetByte(): cuchar; cdecl; external;
+function UniGetWord(): cushort; cdecl; external;
+function UniFindRow(value1: pcuchar; value2: cushort): pcuchar; cdecl; external;
+procedure UniSkipOpcode(); cdecl; external;
+procedure UniReset(); cdecl; external;
+procedure UniWriteByte(value: cuchar); cdecl; external;
+procedure UniWriteWord(value: cushort); cdecl; external;
+procedure UniNewline(); cdecl; external;
+function UniDup(): pcuchar; cdecl; external;
+function UniInit(): cint; cdecl; external;
+procedure UniCleanup(); cdecl; external;
+procedure UniEffect(value1: cushort; value2: cushort); cdecl; external;
+procedure UniInstrument(x: cushort); inline;
+procedure UniNote(x: cushort); inline;
+procedure UniPTEffect(value1: cuchar; value2: cuchar); cdecl; external;
+procedure UniVolEffect(value1: cushort; value2: cuchar); cdecl; external;
+
+
+
+
+
function MikMod_strerror(value: cint): pcchar; cdecl; external;
function MikMod_RegisterErrorHandler(value: MikMod_handler_t): MikMod_handler_t; cdecl; external;
@@ -912,6 +989,7 @@ procedure MikMod_RegisterAllDrivers(); cdecl; external;
function MikMod_InfoDriver(): pcchar; cdecl; external;
procedure MikMod_RegisterDriver(value: PMDriver); cdecl; external;
function MikMod_DriverFromAlias(value: pcint): cint; cdecl; external;
+function MikMod_DriverByOrdinal(value: cint): PMDriver; cdecl; external;
function MikMod_Init(value: string): cint; cdecl; external;
procedure MikMod_Exit(); cdecl; external;
@@ -972,6 +1050,7 @@ procedure Player_Mute(value: csint; args: array of const); cdecl; external;
procedure Player_ToggleMute(value: csint; args: array of const); cdecl; external;
function Player_GetChannelVoice(value: cuchar): cint; cdecl; external;
function Player_GetChannelPeriod(value: cuchar): cushort; cdecl; external;
+function Player_QueryVoices(numvoices: cushort; vinfo: PVOICEINFO): cint; cdecl; external;
function MikMod_RegisterPlayer(value: MikMod_player_t): MikMod_player_t; cdecl; external;
@@ -1060,6 +1139,87 @@ type
NDS_HW_CMD_VOICE_UPDATE
);
+
+var
+ modreader: PMREADER; cvar; external;
+ finetune: array [0..15] of cushort; cvar; external;
+ _of: MODULE; external name 'of';
+ npertab: array [0..(7 * OCTAVE) - 1] of cushort; cvar; external;
+
+ remap: array [0..UF_MAXCHAN - 1] of cschar; cvar; external;
+ poslookup: pcuchar; cvar; external;
+
+ poslookupcnt: cuchar; cvar; external;
+ origpositions: pcushort; cvar; external;
+
+ filters: cint; cvar; external;
+ activemacro: cuchar; cvar; external;
+ filtermacros: array [0..UF_MAXMACRO - 1] of cuchar; cvar; external;
+ filtersettings: array [0..UF_MAXFILTER - 1] of FILTER; cvar; external;
+
+ noteindex: pcint; cvar; external;
+
+
+function ReadComment(value: cushort): cint; cdecl; external;
+function ReadLinedComment(value1: cushort; value2: cushort): cint; cdecl; external;
+function AllocPositions(value: cint): cint; cdecl; external;
+function AllocPatterns(): cint; cdecl; external;
+function AllocTracks(): cint; cdecl; external;
+function AllocInstruments(): cint; cdecl; external;
+function AllocSamples(): cint; cdecl; external;
+function DupStr(value1: pcchar; value2: cushort; value3: cint): pcchar; cdecl; external;
+
+function AllocLinear(): pcint; cdecl; external;
+procedure FreeLinear(); cdecl; external;
+function speed_to_finetune(value1: cuint; value2: cint): cint; cdecl; external;
+procedure S3MIT_ProcessCmd(value1: cuchar; value2: cuchar; value3: cuint); cdecl; external;
+procedure S3MIT_CreateOrders(value: cint); cdecl; external;
+
+function getlinearperiod(value1: cushort; value2: cuint): cushort; cdecl; external;
+function getfrequency(value1: cushort; value2: cuint): cuint; cdecl; external;
+
+var
+ STM_Signatures: array [0..STM_NTRACKERS - 1] of pcchar; cvar; external;
+ md_numchn: cushort; cvar; external;
+ md_sngchn: cushort; cvar; external;
+ md_sfxchn: cushort; cvar; external;
+ md_hardchn: cushort; cvar; external;
+ md_softchn: cushort; cvar; external;
+
+
+function MD_SampleLoad(value1: PSAMPLOAD; value2: cint): csshort; cdecl; external;
+procedure MD_SampleUnload(value: csshort); cdecl; external;
+function MD_SampleSpace(value: cint): cuint; cdecl; external;
+function MD_SampleLength(value1: cint; value2: PSAMPLE): cuint; cdecl; external;
+
+procedure unsignedtoulaw(value1: pcchar; value2: cint); cdecl; external;
+
+function MD_GetAtom(value1, value2: pcchar; value3: cint): pcchar; cdecl; external;
+
+procedure VC_SetupPointers(); cdecl; external;
+function VC1_Init(): cint; cdecl; external;
+function VC2_Init(): cint; cdecl; external;
+
+
+procedure _mm_registerdriver(value: PMDRIVER); cdecl; external;
+procedure _mm_registerloader(value: PMLOADER); cdecl; external;
+function MikMod_Active_internal(): cint; cdecl; external;
+procedure MikMod_DisableOutput_internal(); cdecl; external;
+function MikMod_EnableOutput_internal(): cint; cdecl; external;
+procedure MikMod_Exit_internal(); cdecl; external;
+function MikMod_SetNumVoices_internal(value1, value2: cint): cint; cdecl; external;
+procedure Player_Exit_internal(value: PMODULE); cdecl; external;
+procedure Player_Stop_internal(); cdecl; external;
+function Player_Paused_internal(): cint; cdecl; external;
+procedure Sample_Free_internal(value: PSAMPLE); cdecl; external;
+procedure Voice_Play_internal(value1: cschar; value2: PSAMPLE; value3: cuint); cdecl; external;
+procedure Voice_SetFrequency_internal(value1: cschar; value2: cuint); cdecl; external;
+procedure Voice_SetPanning_internal(value1: cschar; value2: cuint); cdecl; external;
+procedure Voice_SetVolume_internal(value1: cschar; value2: cushort); cdecl; external;
+procedure Voice_Stop_internal(value: cschar); cdecl; external;
+function Voice_Stopped_internal(value: cschar): cint; cdecl; external;
+
+
{$endif NDS_INTERFACE}
{$ifdef NDS_IMPLEMENTATION}
@@ -1073,4 +1233,15 @@ begin
FreeMem(p);
p := nil;
end;
+
+procedure UniInstrument(x: cushort); inline;
+begin
+ UniEffect(cushort(UNI_INSTRUMENT), x)
+end;
+
+procedure UniNote(x: cushort); inline;
+begin
+ UniEffect(cushort(UNI_NOTE), x)
+end;
+
{$endif NDS_IMPLEMENTATION}
diff --git a/packages/libndsfpc/src/nds/arm9/sound.inc b/packages/libndsfpc/src/nds/arm9/sound.inc
index c3979aef47..58c31f0814 100644
--- a/packages/libndsfpc/src/nds/arm9/sound.inc
+++ b/packages/libndsfpc/src/nds/arm9/sound.inc
@@ -39,7 +39,45 @@
*)
{$ifdef NDS_INTERFACE}
-procedure playSound(sound: pTransferSoundData); cdecl; external;
-procedure setGenericSound(rate: cuint32; vol: cuint8; pan: cuint8; format: cuint8); cdecl; external;
-procedure playGenericSound(const data: pointer; length: cuint32); cdecl; external;
+var
+ Snd: TTransferSound;
+ SndDat: TTransferSoundData; // = { (void *)0 , 0, 11025, 64, 64, 1 };
+
+procedure playSound(ASound: pTransferSoundData);
+procedure setGenericSound(rate: cuint32; vol: cuint8; pan: cuint8; format: cuint8);
+procedure playGenericSound(data: pointer; length: cuint32);
{$endif NDS_INTERFACE}
+
+{$ifdef NDS_IMPLEMENTATION}
+procedure playSoundBlock(ASnd: PTransferSound);
+begin
+ DC_FlushRange(ASnd, sizeof(TTransferSound));
+ IPC^.soundData := ASnd;
+end;
+
+procedure setGenericSound(rate: cuint32; vol: cuint8; pan: cuint8; format: cuint8);
+begin
+ SndDat.rate := rate;
+ SndDat.vol := vol;
+ SndDat.pan := pan;
+ SndDat.format := format;
+end;
+
+procedure playSound(ASound: pTransferSoundData);
+begin
+ Snd.count := 1;
+ Move(ASound^, Snd.data[0], sizeof(TTransferSoundData) );
+ playSoundBlock(@Snd);
+end;
+
+procedure playGenericSound(data: pointer; length: cuint32);
+begin
+ Snd.count := 1;
+ move(SndDat, Snd.data, sizeof(TTransferSoundData) );
+ Snd.data[0].data := data;
+ Snd.data[0].len := length;
+ playSoundBlock(@Snd);
+end;
+
+
+{$endif NDS_IMPLEMENTATION}
diff --git a/packages/libndsfpc/src/nds/interrupts.inc b/packages/libndsfpc/src/nds/interrupts.inc
index 1571a70e27..54ae90ab6a 100644
--- a/packages/libndsfpc/src/nds/interrupts.inc
+++ b/packages/libndsfpc/src/nds/interrupts.inc
@@ -86,14 +86,20 @@ const
IME_ENABLE : IME_VALUE = 1; (* Enable all interrupts not masked out in REG_IE *)
+type
+ TVoidFunctionPointer = procedure of object;
+
var
// __irq_vector: array [0..0] of VoidFunctionPointer; cvar; external;
// __irq_vector: array [0..0] of Pointer; cvar; external;
// __irq_flags: array [0..0] of cuint32; cvar; external;
// __irq_flags: pcuint32; cvar; external;
// __irq_vector: ^VoidFunctionPointer; cvar; external;
- __irq_vector: Pointer; cvar; external;
- __irq_flags: pcuint32; cvar; external;
+
+/// __irq_vector: Pointer; cvar; external;
+/// __irq_flags: pcuint32; cvar; external;
+ __irq_vector: Pointer; external name '__irq_vector';
+ __irq_flags: pcuint32; external name '__irq_flags';
@@ -107,10 +113,10 @@ type
end;
procedure irqInit(); cdecl; external;
-//procedure irqSet(irq: IRQ_MASK; handler: VoidFunctionPointer); cdecl; external;
+procedure irqSet(irq: IRQ_MASK; handler: TVoidFunctionPointer); cdecl; external;
procedure irqSet(irq: IRQ_MASK; handler: pointer); cdecl; external;
procedure irqClear(irq: IRQ_MASK); cdecl; external;
-//procedure irqInitHandler(handler: VoidFunctionPointer); cdecl; external;
+procedure irqInitHandler(handler: TVoidFunctionPointer); cdecl; external;
procedure irqInitHandler(handler: pointer); cdecl; external;
procedure irqEnable(irq: cuint32); cdecl; external;
procedure irqDisable(irq: cuint32); cdecl; external;
diff --git a/packages/libndsfpc/src/nds/ipc.inc b/packages/libndsfpc/src/nds/ipc.inc
index 9054ac512d..42e7586612 100644
--- a/packages/libndsfpc/src/nds/ipc.inc
+++ b/packages/libndsfpc/src/nds/ipc.inc
@@ -87,20 +87,22 @@ type
end;
);
end;
- unixTime: cint32;
+// unixTime: cint32; // Moved!
battery: cuint16; // battery life ?? hopefully. :)
aux: cuint16; // i have no idea...
// Don't rely on these below, will change or be removed in the future
- soundData: pTransferSound;
+ soundData: PTransferSound;
mailAddr: cuint32;
mailData: cuint32;
mailRead: cuint8;
mailBusy: cuint8;
mailSize: cuint32;
+ // unixTime here, because in the old position it breaked nds sound system O_o
+ unixTime: cint32;
end;
TransferRegion = sTransferRegion;
TTransferRegion = TransferRegion;
@@ -129,14 +131,14 @@ const
{$ifdef NDS_IMPLEMENTATION}
-function getIPC(): pTransferRegion; inline;
+function getIPC(): PTransferRegion; inline;
begin
- getIPC := pTransferRegion(pointer($027FF000));
+ getIPC := PTransferRegion(pointer($027FF000));
end;
-function IPC(): TransferRegion;
+function IPC(): PTransferRegion; inline;
begin
- IPC := getIPC()^;
+ IPC := getIPC();
end;
procedure IPC_SendSync(sync: cuint); inline;
@@ -173,8 +175,8 @@ const
{$endif NDS_INTERFACE}
{$ifdef NDS_INTERFACE}
-function getIPC(): pTransferRegion; inline;
-function IPC(): TransferRegion;
+function getIPC(): PTransferRegion; inline;
+function IPC(): PTransferRegion; inline;
procedure IPC_SendSync(sync: cuint); inline;
function IPC_GetSync(): cint; inline;
{$endif NDS_INTERFACE}
diff --git a/packages/libndsfpc/src/nds/registers_alt.inc b/packages/libndsfpc/src/nds/registers_alt.inc
index f63b197b96..5c36b2a049 100644
--- a/packages/libndsfpc/src/nds/registers_alt.inc
+++ b/packages/libndsfpc/src/nds/registers_alt.inc
@@ -39,17 +39,20 @@
*)
{$ifdef NDS_INTERFACE}
+type
+ f32 = integer;
+
const
REG_DISPCNT : pcuint32 = pointer($4000000);
{$ifdef ARM9}
- WAIT_CR = REG_EXMEMCNT;
+ {$define WAIT_CR := REG_EXMEMCNT}
{$else}
- WAIT_CR = REG_EXMEMSTAT;
+ {$define WAIT_CR := REG_EXMEMSTAT}
{$endif}
- DISP_SR = REG_DISPSTAT;
- DISP_Y = REG_VCOUNT;
+{$define DISP_SR := REG_DISPSTAT}
+{$define DISP_Y := REG_VCOUNT}
REG_BGCTRL : pcuint16 = pointer($4000008);
REG_BG0CNT : pcuint16 = pointer($4000008);
@@ -106,12 +109,13 @@ const
REG_BLDMOD : pcuint16 = pointer($4000050);
REG_COLV : pcuint16 = pointer($4000052);
REG_COLY : pcuint16 = pointer($4000054);
-
- SERIAL_CR = REG_SPICNT;
- SERIAL_DATA = REG_SPIDATA;
- SIO_CR = REG_SIOCNT;
- R_CR = REG_RCNT;
-
+
+{$ifdef ARM7}
+ {$define SERIAL_CR := REG_SPICNT}
+ {$define SERIAL_DATA := REG_SPIDATA}
+ {$define SIO_CR := REG_SIOCNT}
+ {$define R_CR := REG_RCNT}
+{$endif ARM7}
(* secondary screen *)
REG_DISPCNT_SUB : pcuint32 = pointer($4001000);
REG_BGCTRL_SUB : pcuint16 = pointer($4001008);
@@ -218,22 +222,22 @@ const
REG_TM3CNT : pcuint16 = pointer($400010E);
- REG_SIOCNT : pcuint16 = pointer($4000128);
+// REG_SIOCNT : pcuint16 = pointer($4000128);
REG_SIOMLT_SEND : pcuint16 = pointer($400012A);
- KEYS = REG_KEYINPUT;
- KEYS_CR = REG_KEYCNT;
+{$define KEYS := REG_KEYINPUT}
+{$define KEYS_CR := REG_KEYCNT}
//???
- REG_RCNT : pcuint16 = pointer($4000134);
+// REG_RCNT : pcuint16 = pointer($4000134);
REG_HS_CTRL : pcuint16 = pointer($4000140);
(* Interupt enable registers *)
- IE = REG_IE;
- _IF = REG_IF;
- IME = REG_IME;
+{$define IE := REG_IE}
+{$define _IF := REG_IF}
+{$define IME := REG_IME}
(*controls power 0x30f is all on *)
- POWER_CR = REG_POWERCNT;
+{$define POWER_CR := REG_POWERCNT}
(* ram controllers 0x8 is enabled, other bits have to do with mapping *)
REG_VRAM_A_CR : pcuint8 = pointer($4000240);
diff --git a/packages/libndsfpc/src/nds/system.inc b/packages/libndsfpc/src/nds/system.inc
index 34edb63c0c..bfc498109f 100644
--- a/packages/libndsfpc/src/nds/system.inc
+++ b/packages/libndsfpc/src/nds/system.inc
@@ -83,17 +83,6 @@ end;
{$ifdef ARM9}
{$ifdef NDS_INTERFACE}
-{$ifdef DOXYGEN}
-type
- ARM9_power = cint;
-const
- POWER_LCD : ARM9_power = 0;
- POWER_2D_A : ARM9_power = 1;
- POWER_MATRIX : ARM9_power = 2;
- POWER_3D_CORE : ARM9_power = 3;
- POWER_2D_B : ARM9_power = 4;
- POWER_SWAP_LCDS : ARM9_power = 5;
-{$else DOXYGEN}
const
POWER_LCD = (1 shl 0);
POWER_2D_A = (1 shl 1);
@@ -103,7 +92,6 @@ const
POWER_SWAP_LCDS = (1 shl 15);
POWER_ALL_2D = (POWER_LCD or POWER_2D_A or POWER_2D_B);
POWER_ALL = (POWER_ALL_2D or POWER_3D_CORE or POWER_MATRIX);
-{$endif DOXYGEN}
{$endif NDS_INTERFACE}
{$ifdef NDS_IMPLEMENTATION}
@@ -126,17 +114,10 @@ end;
{$ifdef ARM7}
{$ifdef NDS_INTERFACE}
-{$ifdef DOXYGEN}
-type
- ARM7_power = cint;
-const
- POWER_SOUND: ARM7_power = 0;
- POWER_UNKNOWN: ARM7_power = 1;
-{$else DOXYGEN}
const
POWER_SOUND = (1 shl 0);
POWER_UNKNOWN = (1 shl 1);
-{$endif DOXYGEN}
+
procedure readUserSettings(); cdecl; external;
{$endif NDS_INTERFACE}
{$endif ARM7}