Begin porting ui.asm to C
This commit is contained in:
@@ -57,7 +57,7 @@ WINDOSOBJ=${DOSDIR}/debug.o ${DOSDIR}/joy.o ${DOSDIR}/modemrtn.o ${DOSDIR}/vesa2
|
|||||||
|
|
||||||
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
||||||
|
|
||||||
MAINOBJ=cfgload.o endmem.o fixsin.o init.o initc.o patch.o ui.o vcache.o water.o smoke.o burn.o version.o
|
MAINOBJ=cfgload.o endmem.o fixsin.o init.o initc.o uic.o patch.o ui.o vcache.o water.o smoke.o burn.o version.o
|
||||||
|
|
||||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${WINDOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ}
|
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${WINDOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ}
|
||||||
|
|
||||||
@@ -96,6 +96,7 @@ ui.o: ui.asm macros.mac
|
|||||||
cfgload.o:cfgload.asm macros.mac
|
cfgload.o:cfgload.asm macros.mac
|
||||||
init.o:init.asm macros.mac
|
init.o:init.asm macros.mac
|
||||||
initc.o:initc.c
|
initc.o:initc.c
|
||||||
|
uic.o:uic.c
|
||||||
patch.o:patch.c
|
patch.o:patch.c
|
||||||
|
|
||||||
ALL:
|
ALL:
|
||||||
|
|||||||
@@ -3472,10 +3472,10 @@ NEWSYM SPC7110Load
|
|||||||
.sdd1b
|
.sdd1b
|
||||||
cmp byte[SPC7110Allocated],0
|
cmp byte[SPC7110Allocated],0
|
||||||
jne .notalloc
|
jne .notalloc
|
||||||
push edx
|
pushad
|
||||||
call allocspc7110
|
call allocspc7110
|
||||||
|
popad
|
||||||
mov byte[SPC7110Allocated],1
|
mov byte[SPC7110Allocated],1
|
||||||
pop edx
|
|
||||||
.notalloc
|
.notalloc
|
||||||
call Change_Single_Dir
|
call Change_Single_Dir
|
||||||
jc near .nodir
|
jc near .nodir
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
/Fezsnesw.exe chips\dsp1proc.obj dos\sw.obj dos\gppro.obj dos\vesa12.obj dos\zsipx.obj dos\modemrtn.obj dos\joy.obj dos\debug.obj dos\vesa2.obj dos\initvid.obj cfgload.obj endmem.obj fixsin.obj init.obj initc.obj patch.obj ui.obj vcache.obj water.obj smoke.obj burn.obj version.obj video\procvid.obj win\copyvwin.obj win\winintrf.obj win\winlink.obj win\zloaderw.obj win\ztcp.obj win\zfilew.obj win\zipxw.obj video\makev16b.obj video\makev16t.obj video\makevid.obj video\mode716.obj video\mode716b.obj video\mode716d.obj video\mode716e.obj video\mode716t.obj video\mode7.obj video\mode7ext.obj video\mv16tms.obj video\newg162.obj video\newgfx16.obj video\newgfx2.obj video\newgfx.obj video\m716text.obj video\2xsaiw.obj video\sw_draw.obj video/hq3x16.obj video/hq3x32.obj gui\gui.obj gui\menu.obj cpu\addrni.obj cpu\dma.obj cpu\dsp.obj cpu\dspproc.obj cpu\execute.obj cpu\irq.obj cpu\memory.obj cpu\spc700.obj cpu\stable.obj cpu\table.obj cpu\tableb.obj cpu\tablec.obj chips\dsp1emu.obj chips\fxemu2.obj chips\fxemu2b.obj chips\fxemu2c.obj chips\fxtable.obj chips\sa1proc.obj chips\sa1regs.obj chips\sfxproc.obj zip\unzip.obj zip\zzip.obj zip\zpng.obj zlib.lib libpng.lib wsock32.lib user32.lib gdi32.lib shell32.lib winmm.lib ddraw.lib dsound.lib dinput8.lib d3dx.lib /link /section:.text,erw
|
/Fezsnesw.exe chips\dsp1proc.obj dos\sw.obj dos\gppro.obj dos\vesa12.obj dos\zsipx.obj dos\modemrtn.obj dos\joy.obj dos\debug.obj dos\vesa2.obj dos\initvid.obj cfgload.obj endmem.obj fixsin.obj init.obj initc.obj uic.obj patch.obj ui.obj vcache.obj water.obj smoke.obj burn.obj version.obj video\procvid.obj win\copyvwin.obj win\winintrf.obj win\winlink.obj win\zloaderw.obj win\ztcp.obj win\zfilew.obj win\zipxw.obj video\makev16b.obj video\makev16t.obj video\makevid.obj video\mode716.obj video\mode716b.obj video\mode716d.obj video\mode716e.obj video\mode716t.obj video\mode7.obj video\mode7ext.obj video\mv16tms.obj video\newg162.obj video\newgfx16.obj video\newgfx2.obj video\newgfx.obj video\m716text.obj video\2xsaiw.obj video\sw_draw.obj video/hq3x16.obj video/hq3x32.obj gui\gui.obj gui\menu.obj cpu\addrni.obj cpu\dma.obj cpu\dsp.obj cpu\dspproc.obj cpu\execute.obj cpu\irq.obj cpu\memory.obj cpu\spc700.obj cpu\stable.obj cpu\table.obj cpu\tableb.obj cpu\tablec.obj chips\dsp1emu.obj chips\fxemu2.obj chips\fxemu2b.obj chips\fxemu2c.obj chips\fxtable.obj chips\sa1proc.obj chips\sa1regs.obj chips\sfxproc.obj zip\unzip.obj zip\zzip.obj zip\zpng.obj zlib.lib libpng.lib wsock32.lib user32.lib gdi32.lib shell32.lib winmm.lib ddraw.lib dsound.lib dinput8.lib d3dx.lib /link /section:.text,erw
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ PREOBJ=${OBJDIR}/dosbuff.o ${OBJDIR}/ipx.o ${OBJDIR}/zipx.o
|
|||||||
|
|
||||||
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
ZIPOBJ=${ZIPDIR}/zzip.o ${ZIPDIR}/unzip.o ${ZIPDIR}/zpng.o
|
||||||
|
|
||||||
MAINOBJ=cfgload.o endmem.o fixsin.o init.o initc.o patch.o ui.o vcache.o water.o smoke.o burn.o version.o
|
MAINOBJ=cfgload.o endmem.o fixsin.o init.o initc.o uic.o patch.o ui.o vcache.o water.o smoke.o burn.o version.o
|
||||||
|
|
||||||
|
|
||||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${DOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${PREOBJ} ${MAINOBJ} ${ZIPOBJ}
|
OBJS=${CHIPSOBJ} ${CPUOBJ} ${DOSOBJ} ${GUIOBJ} ${VIDEOBJ} ${PREOBJ} ${MAINOBJ} ${ZIPOBJ}
|
||||||
@@ -110,6 +110,7 @@ ui.o: ui.asm macros.mac
|
|||||||
cfgload.o:cfgload.asm macros.mac
|
cfgload.o:cfgload.asm macros.mac
|
||||||
init.o:init.asm macros.mac
|
init.o:init.asm macros.mac
|
||||||
initc.o:initc.c
|
initc.o:initc.c
|
||||||
|
uic.o:uic.c
|
||||||
patch.o:patch.c
|
patch.o:patch.c
|
||||||
|
|
||||||
ALL:
|
ALL:
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ PREOBJ=
|
|||||||
|
|
||||||
ZIPOBJ=${ZIPDIR}/zzip.obj ${ZIPDIR}/unzip.obj ${ZIPDIR}/zpng.obj
|
ZIPOBJ=${ZIPDIR}/zzip.obj ${ZIPDIR}/unzip.obj ${ZIPDIR}/zpng.obj
|
||||||
|
|
||||||
MAINOBJ=cfgload.obj endmem.obj fixsin.obj init.obj initc.obj patch.obj ui.obj vcache.obj water.obj smoke.obj burn.obj version.obj
|
MAINOBJ=cfgload.obj endmem.obj fixsin.obj init.obj initc.obj uic.obj patch.obj ui.obj vcache.obj water.obj smoke.obj burn.obj version.obj
|
||||||
|
|
||||||
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ} ${WINDOSOBJ}
|
OBJS=${CHIPSOBJ} ${CPUOBJ} ${WINOBJ} ${GUIOBJ} ${VIDEOBJ} ${ZIPOBJ} ${MAINOBJ} ${WINDOSOBJ}
|
||||||
LIBS=
|
LIBS=
|
||||||
@@ -131,6 +131,7 @@ ui.obj: ui.asm macros.mac
|
|||||||
cfgload.obj:cfgload.asm macros.mac
|
cfgload.obj:cfgload.asm macros.mac
|
||||||
init.obj:init.asm macros.mac
|
init.obj:init.asm macros.mac
|
||||||
initc.obj:initc.c
|
initc.obj:initc.c
|
||||||
|
uic.obj:uic.c
|
||||||
patch.obj:patch.c
|
patch.obj:patch.c
|
||||||
ALL:
|
ALL:
|
||||||
del version.obj
|
del version.obj
|
||||||
|
|||||||
@@ -643,9 +643,9 @@ SECTION .text
|
|||||||
jne near %3
|
jne near %3
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
NEWSYM allocspc7110
|
;NEWSYM allocspc7110
|
||||||
AllocmemFail 8192*1024+4096,spc7110romptr,outofmemoryb
|
; AllocmemFail 8192*1024+4096,spc7110romptr,outofmemoryb
|
||||||
ret
|
; ret
|
||||||
|
|
||||||
outofmemoryb
|
outofmemoryb
|
||||||
; cmp byte[OSPort],1
|
; cmp byte[OSPort],1
|
||||||
|
|||||||
32
zsnes/src/uic.c
Normal file
32
zsnes/src/uic.c
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
/*
|
||||||
|
Copyright (C) 2003 ZSNES Team ( zsknight@zsnes.com / _demo_@zsnes.com )
|
||||||
|
|
||||||
|
This program 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 2 of the License, or (at your option) any later
|
||||||
|
version.
|
||||||
|
|
||||||
|
This program 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.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU General Public License
|
||||||
|
along with this program; if not, write to the Free Software
|
||||||
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
//C++ style code in C
|
||||||
|
#define bool unsigned char
|
||||||
|
#define true 1
|
||||||
|
#define false 0
|
||||||
|
|
||||||
|
extern int *spc7110romptr;
|
||||||
|
|
||||||
|
void allocspc7110()
|
||||||
|
{
|
||||||
|
spc7110romptr = malloc(8192*1024+4096);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user