+++ /dev/null
-@ECHO OFF\r
-\r
-REM Bldmake-generated batch file - ABLD.BAT\r
-REM ** DO NOT EDIT **\r
-\r
-perl -S ABLD.PL \PICODRIVE\S60\ %1 %2 %3 %4 %5 %6 %7 %8 %9\r
-if errorlevel==1 goto CheckPerl\r
-goto End\r
-\r
-:CheckPerl\r
-perl -v >NUL\r
-if errorlevel==1 echo Is Perl, version 5.003_07 or later, installed?\r
-goto End\r
-\r
-:End\r
+++ /dev/null
-\r
-PATH=\s60v1\epoc32\tools\;\s60v1\epoc32\gcc\bin\;C:\winnt\system32;C:\winnt;C:\winnt\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel;C:\Program Files\Common Files\Adaptec Shared\System;C:\Perl\bin;\s60v1\epoc32\tools;c:\MSVC6\VC98\Bin;C:\s60v1\epoc32\tools\nokia_compiler\Symbian_Tools\Command_Line_Tools;C:\Program Files\CSL Arm Toolchain\arm-none-symbianelf\bin;C:\Program Files\CSL Arm Toolchain\bin\r
-\r
-# EPOC DEFINITIONS\r
-\r
-EPOCBLD = \s60v1\EPOC32\BUILD\PICODRIVE\S60\PICO\WINS\ #\r
-EPOCTRG = \s60v1\EPOC32\RELEASE\WINS\ #\r
-EPOCLIB = \s60v1\EPOC32\RELEASE\WINS\ #\r
-EPOCLINK = \s60v1\EPOC32\RELEASE\WINS\ #\r
-EPOCSTATLINK = \s60v1\EPOC32\RELEASE\WINS\ #\r
-\r
-\r
-RECREATEWORKSPACE :\r
- cd \PICODRIVE\S60\r
- perl -S makmake.pl -D \PICODRIVE\S60\PICO.MMP VC6\r
-\r
+++ /dev/null
-# Microsoft Developer Studio Project File - Name="PICODRIVE" - Package Owner=<4>\r
-# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
-# ** DO NOT EDIT **\r
-\r
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102\r
-\r
-CFG=PICODRIVE - Win32 Uni Debug\r
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
-!MESSAGE use the Export Makefile command and run\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "PICODRIVE.mak".\r
-!MESSAGE \r
-!MESSAGE You can specify a configuration when running NMAKE\r
-!MESSAGE by defining the macro CFG on the command line. For example:\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "PICODRIVE.mak" CFG="PICODRIVE - Win32 Uni Debug"\r
-!MESSAGE \r
-!MESSAGE Possible choices for configuration are:\r
-!MESSAGE \r
-!MESSAGE "PICODRIVE - Win32 Uni Release" (based on\\r
- "Win32 (x86) Dynamic-Link Library")\r
-!MESSAGE "PICODRIVE - Win32 Uni Debug" (based on\\r
- "Win32 (x86) Dynamic-Link Library")\r
-!MESSAGE \r
-\r
-# Begin Project\r
-# PROP Scc_ProjName ""\r
-# PROP Scc_LocalPath ""\r
-CPP=cl.exe\r
-MTL=midl.exe\r
-RSC=rc.exe\r
-\r
-!IF "$(CFG)" == "PICODRIVE - Win32 Uni Debug"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 1\r
-# PROP BASE Output_Dir ".\Win32_U0"\r
-# PROP BASE Intermediate_Dir ".\Win32_U0"\r
-# PROP Use_MFC 0\r
-# PROP Use_Debug_Libraries 1\r
-# PROP Output_Dir "\s60v1\EPOC32\RELEASE\WINS\UDEB"\r
-# PROP Intermediate_Dir "\s60v1\EPOC32\BUILD\PICODRIVE\S60\PICODRIVES60\WINS\UDEB"\r
-# ADD CPP /nologo /Zp4 /MDd /W4 /Zi /Od /X /I "\PICODRIVE\PICO" /I "\PICODRIVE\PICO\SOUND" /I "\PICODRIVE\S60" /I "\PICODRIVE" /I "\s60v1\EPOC32\INCLUDE" /I "\s60v1\EPOC32\INCLUDE\LIBC" /D "__SYMBIAN32__" /D "__VC32__" /D "__WINS__" /D "__AVKON_ELAF__" /D "__DLL__" /D "_DEBUG" /D "_UNICODE" /FR /Fd"\s60v1\EPOC32\RELEASE\WINS\UDEB\Z\SYSTEM\APPS\PICODRIVES60\PICODRIVE.PDB" /GF /c\r
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32\r
-# ADD BASE RSC /l 0x809\r
-# ADD RSC /l 0x809 /d "_DEBUG"\r
-BSC32=bscmake.exe\r
-# ADD BSC32 /nologo\r
-LINK32=link.exe\r
-# ADD BASE LINK32 /machine:IX86\r
-# ADD LINK32 "\s60v1\EPOC32\RELEASE\WINS\UDEB\EDLL.LIB" "\s60v1\EPOC32\RELEASE\WINS\UDEB\pico.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\a68k.obj" "\s60v1\EPOC32\RELEASE\WINS\UDEB\mz80_asm.obj" "\s60v1\EPOC32\RELEASE\WINS\UDEB\cone.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\eikcore.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\mediaclientaudiostream.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\euser.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\zlib.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\efsrv.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\estlib.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\fbscli.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\estor.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\eikcoctl.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\ws32.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\avkon.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\bafl.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\bitgdi.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\eikdlg.lib" "\s60v1\EPOC32\BUILD\PICODRIVE\S60\PICODRIVES60\WINS\UDEB\PICODRIVE.exp" /nologo /entry:"_E32Dll" /subsystem:windows /dll /pdb:"\s60v1\EPOC32\RELEASE\WINS\UDEB\Z\SYSTEM\APPS\PICODRIVES60\PICODRIVE.pdb" /debug /machine:IX86 /nodefaultlib /include:"?_E32Dll@@YGHPAXI0@Z" /out:"\s60v1\EPOC32\RELEASE\WINS\UDEB\Z\SYSTEM\APPS\PICODRIVES60\PICODRIVE.DLL" /WARN:3\r
-# SUBTRACT LINK32 /pdb:none\r
-# Begin Special Build Tool\r
-SOURCE=$(InputPath)\r
-PreLink_Cmds=echo Doing first-stage link by name\\r
- nmake -nologo -f "\PICODRIVE\S60\PICODRIVES60.SUP.MAKE" PRELINKUDEB\\r
- if errorlevel 1 nmake -nologo -f "\PICODRIVE\S60\PICODRIVES60.SUP.MAKE" STOPLINKUDEB \r
-PostBuild_Cmds=nmake -nologo -f "\PICODRIVE\S60\PICODRIVES60.SUP.MAKE" POSTBUILDUDEB\r
-# End Special Build Tool\r
-\r
-!ELSEIF "$(CFG)" == "PICODRIVE - Win32 Uni Release"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 0\r
-# PROP BASE Output_Dir ".\Win32_Un"\r
-# PROP BASE Intermediate_Dir ".\Win32_Un"\r
-# PROP Use_MFC 0\r
-# PROP Use_Debug_Libraries 0\r
-# PROP Output_Dir "\s60v1\EPOC32\RELEASE\WINS\UREL"\r
-# PROP Intermediate_Dir "\s60v1\EPOC32\BUILD\PICODRIVE\S60\PICODRIVES60\WINS\UREL"\r
-# ADD CPP /nologo /Zp4 /MD /W4 /O1 /Op /X /I "\PICODRIVE\PICO" /I "\PICODRIVE\PICO\SOUND" /I "\PICODRIVE\S60" /I "\PICODRIVE" /I "\s60v1\EPOC32\INCLUDE" /I "\s60v1\EPOC32\INCLUDE\LIBC" /D "__SYMBIAN32__" /D "__VC32__" /D "__WINS__" /D "__AVKON_ELAF__" /D "__DLL__" /D "NDEBUG" /D "_UNICODE" /GF /c\r
-# ADD MTL /nologo /mktyplib203 /D /win32\r
-# ADD BASE RSC /l 0x809\r
-# ADD RSC /l 0x809 /d "NDEBUG"\r
-BSC32=bscmake.exe\r
-# ADD BSC32 /nologo\r
-LINK32=link.exe\r
-# ADD BASE LINK32 /machine:IX86\r
-# ADD LINK32 "\s60v1\EPOC32\RELEASE\WINS\UREL\EDLL.LIB" "\s60v1\EPOC32\RELEASE\WINS\UREL\pico.lib" "\s60v1\EPOC32\RELEASE\WINS\UREL\a68k.obj" "\s60v1\EPOC32\RELEASE\WINS\UREL\mz80_asm.obj" "\s60v1\EPOC32\RELEASE\WINS\UDEB\cone.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\eikcore.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\mediaclientaudiostream.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\euser.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\zlib.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\efsrv.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\estlib.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\fbscli.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\estor.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\eikcoctl.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\ws32.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\avkon.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\bafl.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\bitgdi.lib" "\s60v1\EPOC32\RELEASE\WINS\UDEB\eikdlg.lib" "\s60v1\EPOC32\BUILD\PICODRIVE\S60\PICODRIVES60\WINS\UREL\PICODRIVE.exp" /nologo /entry:"_E32Dll" /subsystem:windows /dll /machine:IX86 /nodefaultlib /include:"?_E32Dll@@YGHPAXI0@Z" /out:"\s60v1\EPOC32\RELEASE\WINS\UREL\Z\SYSTEM\APPS\PICODRIVES60\PICODRIVE.DLL" /WARN:3\r
-# Begin Special Build Tool\r
-SOURCE=$(InputPath)\r
-PreLink_Cmds=echo Doing first-stage link by name\\r
- nmake -nologo -f "\PICODRIVE\S60\PICODRIVES60.SUP.MAKE" PRELINKUREL\\r
- if errorlevel 1 nmake -nologo -f "\PICODRIVE\S60\PICODRIVES60.SUP.MAKE" STOPLINKUREL \r
-PostBuild_Cmds=nmake -nologo -f "\PICODRIVE\S60\PICODRIVES60.SUP.MAKE" POSTBUILDUREL\r
-# End Special Build Tool\r
-\r
-!ENDIF \r
-\r
-# Begin Target\r
-\r
-# Name "PICODRIVE - Win32 Uni Debug"\r
-# Name "PICODRIVE - Win32 Uni Release"\r
-# Begin Group "Source Files"\r
-\r
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\Unzip.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\S60\Picodrive.uid.cpp\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\S60\Picodriveexe.cpp\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\S60\Picodrives60.mmp\r
-# PROP Exclude_From_Build 1\r
-# End Source File\r
-# End Group\r
-# Begin Group "Resource Files"\r
-\r
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
-# End Group\r
-# Begin Group "Header Files"\r
-\r
-# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Ggenie.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Pico.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\Unzip.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\S60\Normalvideo.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\S60\Interpolatevideo.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\S60\Picodriveexe.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Picoint.h\r
-# End Source File\r
-# End Group\r
-# End Target\r
-# End Project\r
+++ /dev/null
-\r
-PATH=\s60v1\epoc32\tools\;\s60v1\epoc32\gcc\bin\;C:\winnt\system32;C:\winnt;C:\winnt\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel;C:\Program Files\Common Files\Adaptec Shared\System;C:\Perl\bin;\s60v1\epoc32\tools;c:\MSVC6\VC98\Bin;C:\s60v1\epoc32\tools\nokia_compiler\Symbian_Tools\Command_Line_Tools;C:\Program Files\CSL Arm Toolchain\arm-none-symbianelf\bin;C:\Program Files\CSL Arm Toolchain\bin\r
-\r
-# EPOC DEFINITIONS\r
-\r
-EPOCBLD = \s60v1\EPOC32\BUILD\PICODRIVE\S60\PICODRIVES60\WINS\ #\r
-EPOCTRG = \s60v1\EPOC32\RELEASE\WINS\ #\r
-EPOCLIB = \s60v1\EPOC32\RELEASE\WINS\ #\r
-EPOCLINK = \s60v1\EPOC32\RELEASE\WINS\ #\r
-EPOCSTATLINK = \s60v1\EPOC32\RELEASE\WINS\ #\r
-\r
-EPOCBLDUDEB = $(EPOCBLD)UDEB\r
-EPOCTRGUDEB = $(EPOCTRG)UDEB\r
-EPOCLIBUDEB = $(EPOCLIB)UDEB\r
-EPOCLINKUDEB = $(EPOCLINK)UDEB\r
-EPOCSTATLINKUDEB = $(EPOCSTATLINK)UDEB\r
-\r
-EPOCBLDUREL = $(EPOCBLD)UREL\r
-EPOCTRGUREL = $(EPOCTRG)UREL\r
-EPOCLIBUREL = $(EPOCLIB)UDEB\r
-EPOCLINKUREL = $(EPOCLINK)UDEB\r
-EPOCSTATLINKUREL = $(EPOCSTATLINK)UREL\r
-\r
-\r
-TRGDIR = Z\SYSTEM\APPS\PICODRIVES60\r
-\r
-DATADIR = Z\SYSTEM\DATA\r
-\r
-LIBRARY :\r
- @echo WARNING: Not attempting to create "$(EPOCLIB)UDEB\PICODRIVE.LIB".\r
- @echo When exports are frozen in "\PICODRIVE\BWINS\PICODRIVEU.DEF", regenerate Makefile.\r
-\r
-\r
-# REAL TARGET - IMPORT LIBRARY\r
-\r
-"$(EPOCLIB)UDEB\PICODRIVE.LIB" : "\PICODRIVE\BWINS\PICODRIVEU.DEF" MAKEWORKLIBRARY\r
- lib.exe /nologo /machine:i386 /nodefaultlib /name:"PICODRIVE.DLL" /def:"\PICODRIVE\BWINS\PICODRIVEU.DEF" /out:"$(EPOCLIB)UDEB\PICODRIVE.LIB"\r
- del "$(EPOCLIB)UDEB\PICODRIVE.exp"\r
-\r
-\r
-MAKEWORKLIBRARY : "\s60v1\EPOC32\RELEASE\WINS\UDEB"\r
-\r
-"\s60v1\EPOC32\RELEASE\WINS\UDEB" :\r
- @perl -S emkdir.pl "\s60v1\EPOC32\RELEASE\WINS\UDEB"\r
-\r
-\r
-# BUILD - UDEB\r
-\r
-LIBS= \\r
- "$(EPOCSTATLINKUDEB)\PICO.LIB" \\r
- "$(EPOCSTATLINKUDEB)\A68K.OBJ" \\r
- "$(EPOCSTATLINKUDEB)\MZ80_ASM.OBJ" \\r
- "$(EPOCLINKUDEB)\CONE.LIB" \\r
- "$(EPOCLINKUDEB)\EIKCORE.LIB" \\r
- "$(EPOCLINKUDEB)\MEDIACLIENTAUDIOSTREAM.LIB" \\r
- "$(EPOCLINKUDEB)\EUSER.LIB" \\r
- "$(EPOCLINKUDEB)\ZLIB.LIB" \\r
- "$(EPOCLINKUDEB)\EFSRV.LIB" \\r
- "$(EPOCLINKUDEB)\ESTLIB.LIB" \\r
- "$(EPOCLINKUDEB)\FBSCLI.LIB" \\r
- "$(EPOCLINKUDEB)\ESTOR.LIB" \\r
- "$(EPOCLINKUDEB)\EIKCOCTL.LIB" \\r
- "$(EPOCLINKUDEB)\WS32.LIB" \\r
- "$(EPOCLINKUDEB)\AVKON.LIB" \\r
- "$(EPOCLINKUDEB)\BAFL.LIB" \\r
- "$(EPOCLINKUDEB)\BITGDI.LIB" \\r
- "$(EPOCLINKUDEB)\EIKDLG.LIB"\r
-\r
-LINK_OBJS= \\r
- "$(EPOCBLDUDEB)\PICODRIVE.UID.obj" \\r
- "$(EPOCBLDUDEB)\PICODRIVEEXE.obj" \\r
- "$(EPOCBLDUDEB)\UNZIP.obj"\r
-\r
-STAGE1_LINK_FLAGS="$(EPOCSTATLINKUDEB)\EDLL.LIB" \\r
- $(LIBS) /nologo /entry:"_E32Dll" /subsystem:windows /dll /debug \\r
- /incremental:no /machine:IX86 /nodefaultlib /include:"?_E32Dll@@YGHPAXI0@Z" /out:"$(EPOCBLDUDEB)\PICODRIVE.DLL" /WARN:3\r
-\r
-PRELINKUDEB : $(LINK_OBJS) "$(EPOCSTATLINKUDEB)\EDLL.LIB" $(LIBS)\r
- link.exe @<<\r
- $(STAGE1_LINK_FLAGS) $(LINK_OBJS)\r
-<<\r
- del "$(EPOCBLDUDEB)\PICODRIVE.DLL"\r
- del "$(EPOCBLDUDEB)\PICODRIVE.exp"\r
- dumpbin /exports /out:"$(EPOCBLDUDEB)\PICODRIVE.inf" "$(EPOCBLDUDEB)\PICODRIVE.lib"\r
- del "$(EPOCBLDUDEB)\PICODRIVE.lib"\r
- perl -S makedef.pl -Inffile "$(EPOCBLDUDEB)\PICODRIVE.inf" "$(EPOCBLD)PICODRIVE.def" \r
- del "$(EPOCBLDUDEB)\PICODRIVE.inf"\r
- lib.exe /nologo /machine:i386 /nodefaultlib /name:"PICODRIVE.DLL" /def:"$(EPOCBLD)PICODRIVE.def" /out:"$(EPOCBLDUDEB)\PICODRIVE.lib"\r
- del "$(EPOCBLDUDEB)\PICODRIVE.lib"\r
- @echo First-stage link successful\r
-\r
-\r
-STOPLINKUDEB : DELEXPOBJUDEB\r
- @echo Stopped the build by removing the export object,\r
- @echo if present, because the pre-link stage failed\r
-\r
-\r
-POSTBUILDUDEB : DELEXPOBJUDEB LIBRARY\r
-\r
-\r
-DELEXPOBJUDEB :\r
- if exist "$(EPOCBLDUDEB)\PICODRIVE.exp" del "$(EPOCBLDUDEB)\PICODRIVE.exp"\r
-\r
-\r
-\r
-# BUILD - UREL\r
-\r
-LIBS= \\r
- "$(EPOCSTATLINKUREL)\PICO.LIB" \\r
- "$(EPOCSTATLINKUREL)\A68K.OBJ" \\r
- "$(EPOCSTATLINKUREL)\MZ80_ASM.OBJ" \\r
- "$(EPOCLINKUREL)\CONE.LIB" \\r
- "$(EPOCLINKUREL)\EIKCORE.LIB" \\r
- "$(EPOCLINKUREL)\MEDIACLIENTAUDIOSTREAM.LIB" \\r
- "$(EPOCLINKUREL)\EUSER.LIB" \\r
- "$(EPOCLINKUREL)\ZLIB.LIB" \\r
- "$(EPOCLINKUREL)\EFSRV.LIB" \\r
- "$(EPOCLINKUREL)\ESTLIB.LIB" \\r
- "$(EPOCLINKUREL)\FBSCLI.LIB" \\r
- "$(EPOCLINKUREL)\ESTOR.LIB" \\r
- "$(EPOCLINKUREL)\EIKCOCTL.LIB" \\r
- "$(EPOCLINKUREL)\WS32.LIB" \\r
- "$(EPOCLINKUREL)\AVKON.LIB" \\r
- "$(EPOCLINKUREL)\BAFL.LIB" \\r
- "$(EPOCLINKUREL)\BITGDI.LIB" \\r
- "$(EPOCLINKUREL)\EIKDLG.LIB"\r
-\r
-LINK_OBJS= \\r
- "$(EPOCBLDUREL)\PICODRIVE.UID.obj" \\r
- "$(EPOCBLDUREL)\PICODRIVEEXE.obj" \\r
- "$(EPOCBLDUREL)\UNZIP.obj"\r
-\r
-STAGE1_LINK_FLAGS="$(EPOCSTATLINKUREL)\EDLL.LIB" \\r
- $(LIBS) /nologo /entry:"_E32Dll" /subsystem:windows /dll \\r
- /incremental:no /machine:IX86 /nodefaultlib /include:"?_E32Dll@@YGHPAXI0@Z" /out:"$(EPOCBLDUREL)\PICODRIVE.DLL" /WARN:3\r
-\r
-PRELINKUREL : $(LINK_OBJS) "$(EPOCSTATLINKUREL)\EDLL.LIB" $(LIBS)\r
- link.exe @<<\r
- $(STAGE1_LINK_FLAGS) $(LINK_OBJS)\r
-<<\r
- del "$(EPOCBLDUREL)\PICODRIVE.DLL"\r
- del "$(EPOCBLDUREL)\PICODRIVE.exp"\r
- dumpbin /exports /out:"$(EPOCBLDUREL)\PICODRIVE.inf" "$(EPOCBLDUREL)\PICODRIVE.lib"\r
- del "$(EPOCBLDUREL)\PICODRIVE.lib"\r
- perl -S makedef.pl -Inffile "$(EPOCBLDUREL)\PICODRIVE.inf" "$(EPOCBLD)PICODRIVE.def" \r
- del "$(EPOCBLDUREL)\PICODRIVE.inf"\r
- lib.exe /nologo /machine:i386 /nodefaultlib /name:"PICODRIVE.DLL" /def:"$(EPOCBLD)PICODRIVE.def" /out:"$(EPOCBLDUREL)\PICODRIVE.lib"\r
- del "$(EPOCBLDUREL)\PICODRIVE.lib"\r
- @echo First-stage link successful\r
-\r
-\r
-STOPLINKUREL : DELEXPOBJUREL\r
- @echo Stopped the build by removing the export object,\r
- @echo if present, because the pre-link stage failed\r
-\r
-\r
-POSTBUILDUREL : DELEXPOBJUREL LIBRARY\r
-\r
-\r
-DELEXPOBJUREL :\r
- if exist "$(EPOCBLDUREL)\PICODRIVE.exp" del "$(EPOCBLDUREL)\PICODRIVE.exp"\r
-\r
-\r
-\r
-\r
-RECREATEWORKSPACE :\r
- cd \PICODRIVE\S60\r
- perl -S makmake.pl -D \PICODRIVE\S60\PICODRIVES60.MMP VC6\r
-\r
+++ /dev/null
-// Makmake-generated uid source file\r
-#include <E32STD.H>\r
-#pragma data_seg(".E32_UID")\r
-__WINS_UID(0x1000007a,0x00000000,0x00000000)\r
-#pragma data_seg()\r
+++ /dev/null
-// PicoDriveS60.RSS\r
-//\r
-//\r
-\r
-NAME PICO\r
-#include <eikon.rh>\r
-#include <eikon.rsg>\r
-#include <avkon.rsg>\r
-#include <avkon.rh>\r
-RESOURCE RSS_SIGNATURE { }\r
-\r
-RESOURCE TBUF16 { buf=""; }\r
-\r
-RESOURCE EIK_APP_INFO\r
- { \r
- menubar = r_pico_menubar;\r
- }\r
-\r
-RESOURCE MENU_BAR r_pico_menubar // *** Menu bar\r
-{\r
- titles =\r
- {\r
- };\r
-}\r
-\r
-RESOURCE ARRAY r_picodrive_keys\r
-{\r
-items=\r
-{\r
- LBUF{txt="Up";},\r
- LBUF{txt="Down";},\r
- LBUF{txt="Left";},\r
- LBUF{txt="Right";},\r
- LBUF{txt="A";},\r
- LBUF{txt="B";},\r
- LBUF{txt="C";},\r
- LBUF{txt="X";},\r
- LBUF{txt="Y";},\r
- LBUF{txt="Z";},\r
- LBUF{txt="Mode";},\r
- LBUF{txt="Start";},\r
- LBUF{txt="Up&Left";},\r
- LBUF{txt="Up&Right";},\r
- LBUF{txt="Down&Right";},\r
- LBUF{txt="Down&Left";},\r
- LBUF{txt="Soft reset";},\r
- LBUF{txt="Pan left";},\r
- LBUF{txt="Pan right";}\r
- };\r
- }\r
-\r
-\r
-\r
-RESOURCE DIALOG r_pico_file_select_dialog\r
-{ \r
-flags = EGeneralQueryFlags; \r
-buttons = R_AVKON_SOFTKEYS_DONE_CANCEL; \r
-items = \r
-{ \r
-DLG_LINE \r
-{ \r
-type = EAknCtListQueryControl; \r
-id = EListQueryControl; \r
-\r
-control = AVKON_LIST_QUERY_CONTROL \r
-{ \r
-heading = "Files"; \r
-listtype = EAknCtSinglePopupMenuListBox; \r
-listbox = LISTBOX \r
-{ \r
-flags = EAknDialogSelectionList; \r
-height = 3; \r
-width = 1; \r
-}; \r
-}; \r
-} \r
-}; \r
-} \r
-\r
-RESOURCE DIALOG r_pico_add_cheat\r
-{\r
- title="Add cheatcode"; \r
- flags=EEikDialogFlagNoDrag | \r
- EEikDialogFlagCbaButtons | \r
- EEikDialogFlagModeless|EEikDialogFlagWait;\r
- buttons = R_AVKON_SOFTKEYS_OK_CANCEL;\r
- items=\r
- {\r
- DLG_LINE\r
- {\r
- type=EEikCtLabel;\r
- id=0x2002;\r
- itemflags = EEikDlgItemNonFocusing;\r
- control= LABEL\r
-\r
- {\r
- txt = "Enter cheatcode";\r
- \r
- };\r
- },\r
- DLG_LINE\r
- {\r
- itemflags = EEikDlgItemNonFocusing;\r
- id=0x2001;\r
- type=EEikCtLabel;\r
- control= LABEL { \r
- horiz_align=EEikLabelAlignHLeft;\r
- txt = "\nGG: XXXX-XXXX\nPatch: XXXXXX:YYYY"; \r
- };\r
- },\r
- DLG_LINE\r
- {\r
- type=EEikCtEdwin; \r
- id=0x2000;\r
- itemflags = EEikDlgItemOfferAllHotKeys|EEikDlgItemSeparatorAfter;\r
-\r
- control= EDWIN { \r
- maxlength=12; \r
- };\r
- \r
-\r
- }\r
- };\r
-}\r
-\r
-RESOURCE ARRAY r_picodrive_regions\r
-{\r
- items=\r
- {\r
- LBUF{txt="Region: Auto";},\r
- LBUF{txt="Region: Jap NTSC";},\r
- LBUF{txt="Region: Jap PAL";},\r
- LBUF{txt="Region: US NTSC";},\r
- LBUF{txt="Region: EUR PAL";}\r
- };\r
-}\r
+++ /dev/null
-//\r
-// MAKEFILE.MMP for component PicoDrive S60\r
-//\r
-\r
-target PicoDriveS60.app\r
-targetpath system\apps\PicoDriveS60\r
-targettype app\r
-\r
-UID 0x100039ce 0x101F9B49\r
-MACRO SERIES60\r
-SOURCEPATH ..\s60\r
-userinclude ..\s60\r
-systeminclude \epoc32\include \epoc32\include\libc ..\s60\r
-\r
-// app source\r
-source PicoDriveAppS60.cpp\r
-\r
-// libraries\r
-library cone.lib eikcore.lib\r
-library euser.lib apparc.lib \r
-library efsrv.lib apgrfx.lib\r
-library avkon.lib\r
-\r
-\r
-//resource file\r
-sourcepath ..\S60\r
-resource PicoDriveS60.rss\r
-\r
-\r
-// Color Bitmap - UK only\r
-AIF picodriveS60.aif ..\S60 picodriveS60aif.rss c12 PicoL.bmp PicoLm.bmp \r
+++ /dev/null
-#include <stdlib.h>\r
-#include <stdio.h>\r
-#include <eikenv.h>\r
-#include <e32keys.h>\r
-#include <eikapp.h>\r
-#include <zlib.h>\r
-#ifdef S60V3\r
-#include <picodrive.rsg>\r
-#else\r
-#include <picodriveS60.rsg>\r
-#endif\r
-#include <eikdoc.h>\r
-#include <aknlistquerydialog.h>\r
-#include <s32file.h>\r
-#include <string.h>\r
-#include <ctype.h>\r
-#include <eikenv.h>\r
-#include <sys\time.h>\r
-\r
-#include "PicoDriveexe.h"\r
-#include "pico.h"\r
-#include "unzip.h"\r
-#include "PicoInt.h"\r
-#include "GGenie.h"\r
-\r
-TInt KLineGap = 2;\r
-static const char* KAboutText = \r
-"This emulator uses code from\n"\r
-"these people/projects:\n"\r
-"\n"\r
-"Dave\n"\r
-"Cyclone 68000 core,\n"\r
-"Pico emulation library\n"\r
-"Homepage:http://www.finalburn.com\n"\r
-"E-mail: david(at)finalburn.com\n"\r
-"\n"\r
-"notaz\n"\r
-"UIQ port,Cyclone 68000 hacks,some\n"\r
-"additional coding (see changelog).\n"\r
-"Homepage:http://notaz.atspace.com/\n"\r
-"E-mail: notasas(at)gmail.com\n"\r
-"\n"\r
-"Reesy\n"\r
-"DrZ80, the Z80 emulator\n"\r
-"written in ARM assembly.\n"\r
-"Homepage: http://reesy.gp32x.de/\n"\r
-"E-mail:drsms_reesy(at)yahoo.co.uk\n"\r
-"\n"\r
-"Tatsuyuki Satoh, Jarek Burczynski,\n"\r
-"MultiArcadeMachineEmulator\n"\r
-"development\n"\r
-"software implementation of\n"\r
-"Yamaha FM sound generator\n"\r
-"\n"\r
-"MultiArcadeMachineEmulator(MAME)\n"\r
-"development\n"\r
-"Texas Instruments SN76489/SN76496\n"\r
-"programmable tone/noise generator\n"\r
-"Homepage: http://www.mame.net/\n"\r
-"\n"\r
-"Additional thanks\n"\r
-"-----------------\n"\r
-"* Peter van Sebille for ECompXL\n"\r
-" and his various open-source\n"\r
-" Symbian project to learn from.\n"\r
-"* Mark and Jean-loup for zlib\n"\r
-" library.\n"\r
-"* Reesy for also finding some\n"\r
-" Cyclone bugs.\n"\r
-"* Charles MacDonald\n"\r
-" (http://cgfm2.emuviews.com/)\n"\r
-" for old but still very useful\n"\r
-" info about genesis hardware.\n"\r
-"* Stúphane Dallongeville\n"\r
-" for creating Gens\n"\r
-" (http://www.gens.ws)\n"\r
-"*The development team behind the\n"\r
-" Symbian GCC Improvement Project\n"\r
-" http://www.inf.u-szeged.hu\n"\r
-" /symbian-gcc/) for their updated\n"\r
-" compiler tools.\n"\r
-"* Inder for the icons.\n";\r
-\r
-// Picodrive prefrence uid\r
-const TUid KPicoDrivePrefs={0x1234432E};\r
-\r
-// Bittable corresponding to the bitvalues for the different control actions\r
-TUint16 KBitValTable[EPicoNoKeys]={1,2,4,8 ,64,16,32,1024,512,256,2048,128,5,9,10,6,0,0,0};\r
-\r
-extern"C" unsigned short *framebuff = 0; // temporary buffer in sega native BGR format\r
-const int framebuffsize = ((8+320)*(224+16))*2; // actual framebuffer size (in bytes+to support new rendering mode)\r
-\r
-// Colour lookuptable from BGR to RGB\r
-unsigned short gColorMapTab[4096];\r
-\r
-// Scaling line table\r
-TUint8 gColumnStepTable[320];\r
-TUint8 gNarrowColumnStepTable[256];\r
-unsigned short gLineTable[240];\r
-TUint32 gLineOffsets[416];\r
-TUint32 gFullOffset;\r
-extern int PsndLen;\r
-\r
-#ifndef S60V3\r
-GLDEF_C TInt E32Dll(TDllReason)\r
-{\r
- return KErrNone;\r
-}\r
-#ifdef __WINS__\r
-_LIT(KLitResourceFileName, "z:\\system\\apps\\picodrives60\\PicoDriveS60.rsc");\r
-#else\r
-_LIT(KLitResourceFileName, "PicoDriveS60.rsc");\r
-#endif\r
-\r
-#endif\r
-\r
-#ifdef __WINS__\r
-RHeap* gChunk;\r
-#endif\r
-struct Target Targ;\r
-\r
-#ifdef S60V3\r
-#include "S60V3Video.inl"\r
-#else\r
-#include "NormalVideo.inl"\r
-#include "InterpolateVideo.inl"\r
-#endif\r
-\r
-TInt CPicoDriveUi::AsyncUpdateL(TAny* aAppUi)\r
-{\r
- static_cast<CPicoDriveUi*>(aAppUi)->UpdateScreen();\r
- return 0;\r
-}\r
-\r
-void CPicoDriveUi::StartAsynchUpdate() \r
-{\r
- TCallBack callback(AsyncUpdateL,iEikonEnv->EikAppUi());\r
- iAsyncUpdate.Cancel();\r
- iAsyncUpdate.Set(callback);\r
- iAsyncUpdate.CallBack();\r
-}\r
-\r
-\r
-CPicoDriveUi::CPicoDriveUi():iIdleCallBack(CActive::EPriorityIdle),iStartUp(CActive::EPriorityIdle),\r
-iAsyncUpdate(CActive::EPriorityStandard)\r
-{\r
- iCurrentScan=-1;\r
- FramesPerSecond=60;\r
- PicoOpt = 7;\r
- iLastAboutPos = -1;\r
- iFrameSkip = -1;\r
- PsndRate = 8000;\r
- iInterpolate = ETrue;\r
- iSoundVolume = 6;\r
- gFullOffset = 0;\r
-}\r
-\r
-CPicoDriveUi::~CPicoDriveUi()\r
-{\r
- delete iKeyNames;\r
- delete iRegNames;\r
- if(iView)\r
- {\r
- RemoveFromStack(iView);\r
- delete iView;\r
- }\r
- delete iBackBuffer;\r
- delete iSndStream;\r
-#ifndef S60V3\r
- iCoeEnv->DeleteResourceFile(iResourceFileId);\r
-#endif\r
-\r
-#ifdef __WINS__\r
- if(gChunk != NULL)\r
- {\r
- gChunk->Close();\r
- }\r
-#endif\r
- free(framebuff);\r
- framebuff = 0;\r
- CloseSTDLIB();\r
-}\r
-\r
-TKeyResponse CPicoDriveUi::HandleKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType)\r
-{\r
- if(iCheatEnter)\r
- {\r
- return iCheatDlg->OfferKeyEventL(aKeyEvent,aType);\r
- }\r
-\r
- if(aType==EEventKey && aKeyEvent.iScanCode==EStdKeyBackspace)\r
- {\r
- if(iPicoMenu ==ESelectSoundMenu)\r
- {\r
- if(iSndRateChanged)\r
- {\r
- if(!UpdatePSndRate()) // Not compatible.. reset to 8000\r
- {\r
- PsndRate = 8000;\r
- UpdatePSndRate(); \r
- }\r
- \r
- if(iRomLoaded)\r
- {\r
- sound_rerate();\r
- }\r
- }\r
-\r
- iView->Clear();\r
- iPicoMenu = EPicoMainMenu;\r
- PutMainMenu();\r
- return EKeyWasConsumed;\r
- }\r
- else if (iPicoMenu == ESelectControlsMenu)\r
- {\r
- iView->Clear();\r
- iPicoMenu = EPicoMainMenu;\r
- PutMainMenu();\r
- return EKeyWasConsumed;\r
- }\r
- else if(iPicoMenu == ESelectScrMenu)\r
- {\r
- iScrMode = iLastScrMode;\r
- iView->Clear();\r
- iPicoMenu = EPicoMainMenu;\r
- PutMainMenu();\r
- return EKeyWasConsumed;\r
- }\r
- else if(iPicoMenu == ESelectCheatMenu)\r
- {\r
- if(iCheatSelection<2)\r
- {\r
- iView->Clear();\r
- iPicoMenu = EPicoMainMenu;\r
- PutMainMenu();\r
- }\r
- else\r
- {\r
- TInt index = (iListOffset+iCheatSelection)-2;\r
- TInt noFound = 0;\r
- for(TInt i = 0; i < 256;i++)\r
- {\r
- if (Liste_GG[i].code[0] != 0)\r
- {\r
- noFound++;\r
- if(noFound-1 == index)\r
- {\r
- Liste_GG[i].code[0] = 0;\r
- Liste_GG[i].active = 0;\r
- iNoCheats--;\r
- iListOffset = 0;\r
- iCheatSelection = 0;\r
- break;\r
- }\r
- \r
- }\r
- }\r
-\r
- iView->Clear();\r
- PutCheatSelect();\r
- }\r
-\r
- return EKeyWasConsumed;\r
- }\r
-\r
- if(!iEmuRunning && (iPicoMenu!=EPicoMainMenu ||iCurrentScan!=-1) )\r
- return EKeyWasNotConsumed;\r
- \r
- if(iRomLoaded )\r
- {\r
- iEmuRunning=!iEmuRunning;\r
- \r
- if(iEmuRunning && iRomLoaded)\r
- {\r
- iView->Clear();\r
- TCallBack callback(StartEmulatorL,this);\r
- iStartUp.Set(callback);\r
- iStartUp.CallBack();\r
- }\r
- }\r
- return EKeyWasConsumed;\r
- }\r
-\r
- if(!iEmuRunning)\r
- {\r
- if(iCurrentScan==-1)\r
- {\r
- if(aType==EEventKey)\r
- {\r
- \r
- switch(aKeyEvent.iScanCode) // first determine bit value to change\r
- {\r
- case EStdKeyUpArrow:\r
- switch(iPicoMenu)\r
- {\r
- case ESelectControlsMenu:\r
- {\r
- iCtrlSelection=!iCtrlSelection;\r
- PutControllerSelect();\r
- }break;\r
- case EPicoMainMenu:\r
- if(iSelection>0)\r
- iSelection--;\r
- else iSelection=EExitPico;\r
- PutMainMenu();\r
- break;\r
- case ESelectScrMenu:\r
- if(iScrMode>0)\r
- iScrMode--;\r
- else iScrMode=10;\r
- PutScreenSelect();\r
- break;\r
- case ESelectCheatMenu:\r
- if(iCheatSelection>0)\r
- iCheatSelection--;\r
- else\r
- iCheatSelection = ELastCheatItem-1; \r
- PutCheatSelect();\r
- break;\r
- case EAboutPicoMenu:\r
- {\r
- iView->Clear();\r
- PutAbout();\r
- }break;\r
- case ESelectSoundMenu:\r
- {\r
- if(iSndSelection>0)\r
- iSndSelection--;\r
- else\r
- iSndSelection = ELastSoundItem-1; \r
- PutSoundSelect();\r
- }break;\r
- } \r
- break;\r
- case EStdKeyDownArrow:\r
- switch(iPicoMenu)\r
- {\r
- case ESelectControlsMenu:\r
- {\r
- iCtrlSelection=!iCtrlSelection;\r
- PutControllerSelect();\r
- }break;\r
- case EPicoMainMenu:\r
- iSelection++;\r
- if(iSelection==ELastMenuItem)\r
- iSelection=0;\r
- PutMainMenu();\r
- break;\r
- case ESelectScrMenu:\r
- iScrMode++;\r
- if(iScrMode==11)\r
- iScrMode=0;\r
- PutScreenSelect();\r
- break;\r
- case ESelectCheatMenu:\r
- if(iCheatSelection<(ELastCheatItem+iNoCheats-1) && iCheatSelection<6)\r
- iCheatSelection++;\r
- else if(iCheatSelection == ELastCheatItem+4 && iListOffset<iNoCheats-5)\r
- {\r
- iListOffset++;\r
- }\r
- else\r
- {\r
- iListOffset = 0;\r
- iCheatSelection = 0; \r
- }\r
- PutCheatSelect();\r
- break;\r
- case EAboutPicoMenu:\r
- {\r
- iView->Clear();\r
- PutAbout();\r
- }break;\r
- case ESelectSoundMenu:\r
- {\r
- iSndSelection++;\r
- if(iSndSelection==ELastSoundItem)\r
- iSndSelection=0;\r
- PutSoundSelect();\r
- }break;\r
- }\r
- break;\r
- case EStdKeyDevice0:\r
- case EStdKeyDevice3:\r
- {\r
- switch(iPicoMenu)\r
- {\r
- case ESelectControlsMenu:\r
- {\r
- if(iCtrlSelection == EConfigControls)\r
- {\r
- iPicoMenu = EPicoMainMenu;\r
- iView->Clear();\r
- iCurrentScan=0;\r
- PutConfigKeys();\r
- }\r
- else\r
- {\r
- iEnableSixButtons = !iEnableSixButtons;\r
- PicoOpt=PicoOpt^ 32; \r
- \r
- PutControllerSelect();\r
- }\r
- }break;\r
- case ESelectCheatMenu:\r
- {\r
- switch(iCheatSelection)\r
- {\r
- case EAddCheat:\r
- {\r
- TBuf8<16> cheatCode;\r
- iCheatEnter = ETrue;\r
- iCheatDlg = new (ELeave) CPicoAddCheatDlg(cheatCode);\r
- iCheatDlg->SetMopParent(iEikonEnv->EikAppUi()); \r
- TInt result = iCheatDlg->ExecuteLD(R_PICO_ADD_CHEAT);\r
-\r
- if(result == EEikBidOk)\r
- {\r
- for(TInt i = 0; i < 256;i++)\r
- {\r
- if (Liste_GG[i].code[0] == 0)\r
- { \r
- if(check_code((const char*) cheatCode.PtrZ(),i))\r
- {\r
- decode( Liste_GG[i].code, (patch *) (&(Liste_GG[i].addr)));\r
- \r
- if ((Liste_GG[i].restore == 0xFFFFFFFF) && (Liste_GG[i].addr < Pico.romsize) && (iRomLoaded))\r
- {\r
- Liste_GG[i].restore = (unsigned int) (Pico.rom[Liste_GG[i].addr] & 0xFF);\r
- Liste_GG[i].restore += (unsigned int) ((Pico.rom[Liste_GG[i].addr + 1] & 0xFF) << 8);\r
- }\r
- iNoCheats++;\r
- Liste_GG[i].active = 1;\r
- }\r
- break; // Found position free\r
- }\r
- }\r
- }\r
- iCheatDlg = NULL;\r
- iCheatEnter = EFalse;\r
- }break;\r
- case EClearCheats:\r
- {\r
- iNoCheats = 0;\r
- for(TInt i = 0; i < 256;i++)\r
- {\r
- Liste_GG[i].code[0] = 0;\r
- Liste_GG[i].active = 0;\r
- }\r
- }\r
- break;\r
- default:\r
- {\r
- TInt index = (iListOffset+iCheatSelection)-2;\r
- TInt noFound = 0;\r
- for(TInt i = 0; i < 256;i++)\r
- {\r
- if (Liste_GG[i].code[0] != 0)\r
- {\r
- noFound++;\r
- if(noFound-1 == index)\r
- {\r
- Liste_GG[i].active=!Liste_GG[i].active;\r
- break;\r
- }\r
-\r
- }\r
- }\r
- }\r
- break;\r
- \r
- }\r
-\r
- PutCheatSelect();\r
- }\r
- break;\r
- case EAboutPicoMenu:\r
- {\r
- iView->Clear();\r
- PutAbout();\r
- }break;\r
- case ESelectScrMenu:\r
- {\r
-\r
- switch(iScrMode)\r
- {\r
- case 5:\r
- iInterpolate = !iInterpolate;\r
- iView->Clear();\r
- PutScreenSelect();\r
- break;\r
- case 6:\r
- iFrameSkip++;\r
- if(iFrameSkip == 11)\r
- {\r
- iFrameSkip = -1;\r
- }\r
- iView->Clear();\r
- PutScreenSelect();\r
- break;\r
- case 7:\r
- PicoOpt = PicoOpt^0x40;\r
- iView->Clear();\r
- PutScreenSelect();\r
- break;\r
- case 8:\r
- PicoOpt = PicoOpt^0x80;\r
- iView->Clear();\r
- PutScreenSelect();\r
- break;\r
- case 9:\r
- PicoOpt = PicoOpt^0x10;\r
- iView->Clear();\r
- PutScreenSelect();\r
- break;\r
- case 10:\r
- switch(PicoRegionOverride)\r
- {\r
- case 0:\r
- default:\r
- PicoRegionOverride = 1;\r
- break;\r
- case 1:\r
- PicoRegionOverride = 2;\r
- break;\r
- case 2:\r
- PicoRegionOverride = 4;\r
- break;\r
- case 4:\r
- PicoRegionOverride = 8;\r
- break;\r
- case 8:\r
- PicoRegionOverride = 0;\r
- break;\r
- }\r
-\r
- iView->Clear();\r
- PutScreenSelect();\r
- break;\r
- default:\r
- {\r
- TBitmapUtil util(iBackBuffer);\r
- util.Begin(TPoint(0,0));\r
- TSize sz=iBackBuffer->SizeInPixels();\r
- TInt dataSize=sz.iWidth*sz.iHeight*2;\r
- TPtr8 ptr(reinterpret_cast<unsigned char*>(iBackBuffer->DataAddress()),dataSize,dataSize);\r
- ptr.Fill(0);\r
- util.End();\r
- iPicoMenu=EPicoMainMenu;\r
- iView->Clear();\r
- PutMainMenu();\r
- TargetInit(); \r
- SaveSettingsL();\r
- }break;\r
- } \r
- }break;\r
- case ESelectSoundMenu:\r
- {\r
- switch(iSndSelection)\r
- {\r
- case EEnableZ80:\r
- PicoOpt=PicoOpt^4;\r
- break;\r
- case EEnableYM2612:\r
- PicoOpt=PicoOpt^1;\r
- break;\r
- case EEnableSN76496:\r
- PicoOpt=PicoOpt^2;\r
- break;\r
- case ESoundVolume:\r
- { \r
- iSoundVolume++;\r
- if(iSoundVolume==11)\r
- {\r
- iSoundVolume=0;\r
- iEnableSound=EFalse;\r
- }\r
- else\r
- {\r
- iEnableSound=ETrue;\r
- iSndStream->SetVolume((iSndStream->MaxVolume()*iSoundVolume)/10);\r
- }\r
-\r
- if(!iEnableSound)\r
- {\r
- iSndStream->Stop();\r
- }\r
- }break;\r
- case ESoundRate:\r
- {\r
- iSndRateChanged = ETrue;\r
-\r
- switch(PsndRate)\r
- {\r
- case 8000:\r
- PsndRate = 11025;\r
- break;\r
- case 11025:\r
- PsndRate = 16000;\r
- break;\r
- case 16000:\r
- PsndRate = 22050;\r
- break;\r
- case 22050:\r
- PsndRate = 8000;\r
- break;\r
- } \r
- }break;\r
- } \r
- PutSoundSelect();\r
- }break;\r
- case EPicoMainMenu:\r
- {\r
- switch(iSelection)\r
- {\r
- case EResetHw:\r
- {\r
- if(!PicoReset(0))\r
- {\r
- iEmuRunning=ETrue;\r
- TCallBack callback(StartEmulatorL,this);\r
- iStartUp.Set(callback);\r
- iStartUp.CallBack();\r
- }\r
- }\r
- break;\r
- case ELoadState:\r
- {\r
- if(iRomLoaded)\r
- { \r
- saveLoadGame(1,0); \r
- iEmuRunning=ETrue;\r
- iView->Clear();\r
- TCallBack callback(StartEmulatorL,this);\r
- iStartUp.Set(callback);\r
- iStartUp.CallBack(); \r
- }\r
- }\r
- break;\r
- case ESaveState:\r
- { \r
- if(iRomLoaded)\r
- { \r
- saveLoadGame(0,0);\r
- iEmuRunning=ETrue;\r
- iView->Clear();\r
- TCallBack callback(StartEmulatorL,this);\r
- iStartUp.Set(callback);\r
- iStartUp.CallBack();\r
- \r
- }\r
- }\r
- break;\r
- case ELoadRom:\r
- {\r
- TParsePtr parse(iRomName);\r
- iRomName=parse.DriveAndPath();\r
- if(SelectFile(iRomName))\r
- {\r
- SaveSettingsL();\r
- EmulateExit();\r
- TPtr8 ptr((unsigned char*)RomName,256);\r
- ptr.Fill(0,256);\r
- ptr.Copy(iRomName);\r
- User::CompressAllHeaps();\r
- if(EmulateInit()==0)\r
- {\r
- if(Pico.m.pal)\r
- {\r
- FramesPerSecond=50;\r
- }\r
- else \r
- {\r
- FramesPerSecond=60;\r
- }\r
- \r
- SetKeyBlockMode(ENoKeyBlock);\r
- iEmuRunning=ETrue;\r
- iRomLoaded=ETrue;\r
- iView->Clear();\r
- TCallBack callback(StartEmulatorL,this);\r
- iStartUp.Set(callback);\r
- iStartUp.CallBack();\r
- }\r
- else\r
- {\r
- iRomName=KNullDesC();\r
- iView->Clear();\r
- PutMainMenu();\r
- iRomLoaded=EFalse;\r
- }\r
- }\r
- else\r
- {\r
- iView->Clear();\r
- PutMainMenu();\r
- }\r
- }\r
- break;//load rom\r
- case ESetControls:\r
- iPicoMenu = ESelectControlsMenu;\r
- PutControllerSelect(); \r
- break;\r
- case ESetScreen:\r
- iView->Clear();\r
- iLastScrMode = iScrMode; // In case of cancel\r
- PutScreenSelect();\r
- iPicoMenu=ESelectScrMenu;\r
- break;\r
- case ESelectSound:\r
- { \r
- iSndRateChanged = EFalse;\r
- iPicoMenu=ESelectSoundMenu;\r
- PutSoundSelect();\r
- }break;\r
- case ESelectCheat:\r
- {\r
- iPicoMenu=ESelectCheatMenu;\r
- iListOffset = 0;\r
- iNoCheats = 0;\r
- for(TInt i = 0; i < 256;i++)\r
- {\r
- if (Liste_GG[i].code[0] != 0)\r
- {\r
- iNoCheats++;\r
- if ((Liste_GG[i].restore != 0xFFFFFFFF) && (Liste_GG[i].addr < Pico.romsize) && (iRomLoaded))\r
- {\r
- Pico.rom[Liste_GG[i].addr] = (unsigned char)(Liste_GG[i].restore & 0xFF);\r
- Pico.rom[Liste_GG[i].addr + 1] = (unsigned char)((Liste_GG[i].restore & 0xFF00) >> 8);\r
- }\r
- \r
- }\r
- }\r
-\r
- PutCheatSelect();\r
- }\r
- break;\r
- case EAboutPico:\r
- {\r
- iView->Clear();\r
- PutAbout();\r
- iPicoMenu=EAboutPicoMenu;\r
- }break;\r
- case EExitPico:\r
- {\r
- SaveSettingsL();\r
- EmulateExit();\r
- Exit();\r
- }\r
- break;\r
- }\r
- }\r
- }break;\r
- }\r
- break;\r
- }\r
- }\r
- }\r
- else\r
- {\r
- if(aType == EEventKeyDown)\r
- {\r
- if(aKeyEvent.iScanCode != EStdKeyBackspace)\r
- {\r
- iScanCodes[iCurrentScan]=aKeyEvent.iScanCode;\r
- }\r
- else\r
- {\r
- iScanCodes[iCurrentScan] = KErrNotFound;\r
- }\r
-\r
- iCurrentScan++;\r
- if(iCurrentScan==iKeyNames->Count())\r
- {\r
- SaveSettingsL();\r
- iCurrentScan=-1;\r
- iView->DrawText(_L("Done!"),TPoint(0,iFontHeight*11));\r
- \r
- User::After(1000000);\r
- iView->Clear();\r
- PutMainMenu();\r
- }\r
- else\r
- {\r
- iView->Clear();\r
- PutConfigKeys();\r
- }\r
- }\r
- }\r
- }\r
- else\r
- {\r
- if((aType == EEventKeyUp || aType == EEventKeyDown))\r
- { \r
- TUint16 bitVal=0;\r
- for(TInt loop=0;loop<16;loop++)\r
- {\r
- if(aKeyEvent.iScanCode==iScanCodes[loop])\r
- {\r
- bitVal=KBitValTable[loop];\r
- break;\r
- }\r
- }\r
- \r
- if(aType == EEventKeyUp)\r
- {\r
- iPad1=iPad1&(65535-bitVal); // remove bit\r
- }\r
- else \r
- {\r
- iPad1=(iPad1|bitVal); // set bit\r
- } \r
- }\r
-\r
- if(aType == EEventKey)\r
- {\r
- if(aKeyEvent.iScanCode == iScanCodes[EPicoResetKey])\r
- {\r
- PicoReset(0);\r
- }\r
-\r
- if(aKeyEvent.iScanCode == iScanCodes[EPicoPanLKey] && gFullOffset>0)\r
- {\r
- gFullOffset-=24;\r
- }\r
- else if(aKeyEvent.iScanCode == iScanCodes[EPicoPanRKey]&& gFullOffset<144)\r
- {\r
- gFullOffset+=24;\r
- }\r
- }\r
- }\r
- \r
- return EKeyWasConsumed;\r
-}\r
-\r
-TInt CPicoDriveUi::SelectFile(TFileName& aFileName)\r
-{\r
- TFileName filename=aFileName;\r
- TInt selectedIndex=-1;\r
- RArray<TEntry> romList;\r
- TDriveList driveList;\r
- TBool refresh=EFalse;\r
- TInt lastLength=-1;\r
- do\r
- {\r
- CAknListQueryDialog* dlg = new (ELeave) CAknListQueryDialog(&selectedIndex);\r
- CDesCArrayFlat* list=new (ELeave) CDesCArrayFlat(5);\r
- refresh=EFalse;\r
- if(filename.Length()==0)\r
- {\r
- \r
- iEikonEnv->FsSession().DriveList(driveList);\r
- for(TInt drive=0;drive<driveList.Length();drive++)\r
- {\r
- if(driveList[drive]!=0)\r
- {\r
- TBuf<16> form;\r
- form.Format(_L("%c:\\"),drive+65);\r
- list->AppendL(form);\r
- }\r
- } \r
- }\r
- else\r
- {\r
- CDir* romDir = NULL;;\r
- romList.Reset();\r
- iEikonEnv->FsSession().GetDir(filename,KEntryAttMatchMask,0,romDir);\r
- \r
- if(romDir!=NULL)\r
- list->AppendL(_L(".. <DIR>"));\r
- \r
- if(romDir!=NULL && romDir->Count()>0)\r
- {\r
- for(TInt loop=0;loop<romDir->Count();loop++)\r
- {\r
- const TEntry& entry=(*romDir)[loop];\r
- TFileName name=entry.iName;\r
- if(entry.IsDir())\r
- {\r
- name.Append(_L(" <DIR>"));\r
- list->AppendL(name);\r
- romList.Append(entry);\r
- }\r
- else\r
- {\r
- TParsePtr parse(name);\r
- \r
- if(parse.Ext().CompareF(_L(".bin"))==KErrNone ||\r
- parse.Ext().CompareF(_L(".smd"))==KErrNone ||\r
- parse.Ext().CompareF(_L(".zip"))==KErrNone)\r
- {\r
- romList.Append(entry);\r
- list->AppendL(name);\r
- }\r
- }\r
- \r
- }\r
- delete romDir;\r
- romDir=NULL;\r
- }\r
- else // no files found.. or path not found.. return to\r
- {\r
- if(filename.Length()>3) // more than a c:\ specified\r
- {\r
- \r
- refresh=ETrue;\r
- filename=KNullDesC();\r
- }\r
- else return EFalse;\r
- }\r
- \r
- }\r
- if(list->Count()>0)\r
- {\r
- dlg->PrepareLC(R_PICO_FILE_SELECT_DIALOG);\r
- dlg->SetItemTextArray(list);\r
- if(dlg->RunLD())\r
- {\r
- if(filename.Length()==0)\r
- {\r
- TFileName driveLetter;\r
- TUint8 driveL;\r
- TInt countedDrives=0;\r
- for(TInt drive=0;drive<driveList.Length();drive++)\r
- {\r
- if(driveList[drive]!=0 && countedDrives==selectedIndex)\r
- {\r
- driveLetter.Format(_L("%c:\\"),drive+65);\r
- driveL=drive+65;\r
- break;\r
- }\r
- else if(driveList[drive]!=0) countedDrives++;\r
- \r
- }\r
- filename=driveLetter;\r
- refresh=ETrue; \r
- }\r
- else\r
- {\r
- if(selectedIndex>0)\r
- {\r
- selectedIndex--;\r
- const TEntry& entry=romList[selectedIndex];\r
- TFileName name =entry.iName;\r
- if(entry.IsDir())\r
- {\r
- lastLength=aFileName.Length();\r
- filename.Append(name);\r
- filename.Append(_L("\\"));\r
- \r
- refresh=ETrue;\r
- \r
- }\r
- else\r
- {\r
- filename.Append(name);\r
- aFileName=filename;\r
- romList.Close();\r
- return ETrue;\r
- }\r
- }\r
- else\r
- {\r
- refresh=ETrue;\r
- TInt pos=filename.Left(filename.Length()-1).LocateReverse('\\');\r
- if(pos!=KErrNotFound)\r
- filename=filename.Left(pos+1);// keep \r
- else filename=KNullDesC();\r
- // and changefilename..\r
- \r
- //return 2;// go up one.\r
- }\r
- }\r
- }\r
- else\r
- {\r
- romList.Close();\r
- return EFalse;\r
- }\r
- }\r
- }while(refresh);\r
- romList.Close();\r
- return EFalse;\r
-}\r
-\r
-void CPicoDriveUi::SaveSettingsL()\r
-{\r
-#ifdef S60V3\r
- CDictionaryStore* prefs = Application()->OpenIniFileLC(iEikonEnv->FsSession());\r
-#else\r
- CDictionaryFileStore* prefs=CDictionaryFileStore::OpenLC(iEikonEnv->FsSession(),iAppPath,TUid::Uid(0));\r
-#endif\r
- ExternalizeL(*prefs);\r
- prefs->CommitL();\r
- CleanupStack::PopAndDestroy();//close prefs\r
-}\r
-\r
-\r
-void CPicoDriveUi::ExternalizeL(CDictionaryStore& aStore) \r
-{ \r
- RDictionaryWriteStream writeStream;\r
- writeStream.AssignLC(aStore, KPicoDrivePrefs);\r
- \r
- TInt loop=0;\r
- for(loop=0;loop<EPicoNoKeys;loop++)\r
- {\r
- writeStream.WriteInt32L(iScanCodes[loop]);\r
- }\r
- \r
- writeStream.WriteInt32L(iScrMode);\r
- writeStream.WriteInt32L(PicoOpt);\r
- writeStream.WriteInt32L(iSoundVolume);\r
- writeStream.WriteInt32L(iFrameSkip);\r
- writeStream.WriteInt32L(PsndRate);\r
- writeStream.WriteInt32L(iInterpolate);\r
- writeStream.WriteInt32L(iEnableSixButtons);\r
- writeStream.WriteInt32L(PicoRegionOverride);\r
- TParsePtr parser(iRomName);\r
- writeStream.WriteInt32L(parser.DriveAndPath().Length());\r
- writeStream.WriteL(parser.DriveAndPath(),parser.DriveAndPath().Length());\r
- writeStream.CommitL();\r
- \r
- CleanupStack::PopAndDestroy();//writeStream\r
-}\r
-\r
-void CPicoDriveUi::InternalizeL(const CDictionaryStore& aStore)\r
-{\r
- if (!aStore.IsPresentL(KPicoDrivePrefs))\r
- {\r
- iFirstStart = ETrue;\r
- return;\r
- }\r
- RDictionaryReadStream readStream;\r
- readStream.OpenLC(aStore, KPicoDrivePrefs);\r
- TInt loop=0;\r
- for(loop=0;loop<EPicoNoKeys;loop++)\r
- {\r
- iScanCodes[loop] = readStream.ReadInt32L();\r
- }\r
- \r
- iScrMode=readStream.ReadInt32L();\r
- PicoOpt=readStream.ReadInt32L();\r
- iEnableSound = PicoOpt&3;\r
- iSoundVolume=readStream.ReadInt32L();\r
- iFrameSkip = readStream.ReadInt32L();\r
- PsndRate = readStream.ReadInt32L();\r
- iInterpolate = readStream.ReadInt32L();\r
- iEnableSixButtons = readStream.ReadInt32L();\r
- PicoRegionOverride = readStream.ReadInt32L();\r
-\r
- TInt len=0;\r
- TRAPD(err,len=readStream.ReadInt32L())\r
- if(err==KErrNone)\r
- {\r
- readStream.ReadL(iRomName,len);\r
- }\r
- \r
- CleanupStack::PopAndDestroy();//readStream\r
-}\r
-\r
-void CPicoDriveUi::ConstructL()\r
-{\r
-#ifdef S60V3\r
- CAknAppUi::BaseConstructL(CAknAppUi::EAknEnableSkin);\r
-#else\r
- BaseConstructL(ENoAppResourceFile); \r
-#endif\r
- framebuff = (unsigned short *) malloc(framebuffsize);\r
- memset(framebuff,0,framebuffsize);\r
-\r
- iFontHeight = iEikonEnv->NormalFont()->HeightInPixels()+KLineGap;\r
- iScanCodes[0]= EStdKeyUpArrow; \r
- iScanCodes[1]= EStdKeyDownArrow;\r
- iScanCodes[2]=EStdKeyLeftArrow;\r
- iScanCodes[3]= EStdKeyRightArrow;\r
- iScanCodes[6]=EStdKeyDevice0;\r
- iScanCodes[4]= EStdKeyDevice1;\r
- iScanCodes[5]=EStdKeyDevice3;\r
- iScanCodes[7]=0;//x\r
- iScanCodes[8]=0; // y\r
- iScanCodes[9]=0;//z\r
- iScanCodes[10]=0;// mode\r
- iScanCodes[11]= '0'; // start\r
-#ifdef __WINS__\r
- gChunk = UserHeap::ChunkHeap(&_L("ROMHEAP"),512000,16384000);\r
-#endif\r
-\r
-#ifndef S60V3\r
- TFileName name;\r
- iEikonEnv->RootWin().SetName(_L("PicoDrive"));\r
-#ifndef __WINS__\r
- RProcess process;\r
- process.Rename(_L("PicoDrive"));\r
- TFileName fname =process.FileName();\r
- TParsePtr parser(fname);\r
- name.Append(parser.DriveAndPath());\r
-#endif\r
- name.Append(KLitResourceFileName());\r
- iAppPath=_L("C:");\r
- iAppPath.Append(TParsePtr(name).Path());\r
- iAppPath.Append(_L("PicoDriveS60.ini"));\r
- iResourceFileId = iCoeEnv->AddResourceFileL(name); // eb205: needs to hunt around drives\r
-#endif // S60V3\r
- iKeyNames =iEikonEnv->ReadDesCArrayResourceL(R_PICODRIVE_KEYS);\r
- iRegNames = iEikonEnv->ReadDesCArrayResourceL(R_PICODRIVE_REGIONS);\r
-\r
- iEikonEnv->FsSession().MkDirAll(TParsePtr(iAppPath).DriveAndPath());\r
-#ifdef S60V3\r
- CDictionaryStore* prefs = Application()->OpenIniFileLC(iEikonEnv->FsSession());\r
- InternalizeL(*prefs);\r
- CleanupStack::PopAndDestroy();//close prefs\r
-#else\r
- TRAPD(err,{CDictionaryFileStore* prefs=CDictionaryFileStore::OpenLC(iEikonEnv->FsSession(),iAppPath,TUid::Uid(0));\r
- InternalizeL(*prefs);\r
- CleanupStack::PopAndDestroy();//close prefs\r
- });\r
-#endif\r
- \r
- if(iFirstStart)\r
- {\r
- iPicoMenu = EAboutPicoMenu;\r
- }\r
- \r
- iView=new (ELeave)CQPicoDriveView;\r
- iView->ConstructL();\r
- AddToStackL(iView);\r
- iDisplayMode =iEikonEnv->ScreenDevice()->DisplayMode();\r
- if(iDisplayMode != EColor64K && iDisplayMode != EColor4K)\r
- {\r
- iDisplayMode=EColor64K;; // Also tried to switch to by the view.\r
- }\r
- CalculatePaletteTable();\r
- iBackBuffer= new (ELeave)CFbsBitmap;\r
- iBackBuffer->Create(iEikonEnv->ScreenDevice()->SizeInPixels(),iDisplayMode);\r
- TBitmapUtil util(iBackBuffer);\r
- util.Begin(TPoint(0,0));\r
- TSize sz=iBackBuffer->SizeInPixels();\r
- Targ.view = TRect(TPoint(0,0),sz);\r
- TInt dataSize=sz.iWidth*sz.iHeight*2;\r
- Targ.scanline_length = sz.iWidth*2;\r
- Targ.screen_offset = Targ.scanline_length*(sz.iHeight-1);\r
- TPtr8 ptr(reinterpret_cast<unsigned char*>(iBackBuffer->DataAddress()),dataSize,dataSize);\r
- ptr.Fill(0);\r
- util.End();\r
- SetKeyBlockMode(ENoKeyBlock);\r
- iSelection=0;\r
- \r
- iSndStream = CMdaAudioOutputStream::NewL(*this);\r
- iAudioSettings.Query();\r
- iAudioSettings.iSampleRate = TMdaAudioDataSettings::ESampleRate8000Hz;\r
- iAudioSettings.iChannels = TMdaAudioDataSettings::EChannelsMono;\r
- iAudioSettings.iFlags = 0;\r
- iAudioSettings.iVolume = iAudioSettings.iMaxVolume/2;\r
- iSndStream->Open(&iAudioSettings);\r
- CActiveScheduler::Start(); // wait for open\r
-}\r
-\r
-void CPicoDriveUi::PutAbout(TBool iOnlyRedraw)\r
-{\r
- TPtrC8 charPtr((unsigned char*)KAboutText,strlen(KAboutText));\r
- HBufC* credits = HBufC::NewLC(charPtr.Length());\r
- credits->Des().Copy(charPtr);\r
- \r
- if(iLastAboutPos>=credits->Length())\r
- {\r
- iLastAboutPos = -1;\r
- iView->Clear();\r
- iPicoMenu = EPicoMainMenu;\r
- PutMainMenu();\r
- }\r
- else\r
- {\r
- if(iLastAboutPos == -1)\r
- iLastAboutPos = 0;\r
- iView->DrawText(_L("PicoDrive S60 Credits"),TPoint(0,0));\r
- if(iOnlyRedraw && iLastAboutPos == 0)\r
- iView->DrawTextInRect(*credits,TRect(0,iFontHeight*2,Targ.view.iBr.iX,Targ.view.iBr.iY),iLastAboutPos);\r
- else\r
- iLastAboutPos = iView->DrawTextInRect(*credits,TRect(0,iFontHeight*2,Targ.view.iBr.iX,Targ.view.iBr.iY),iLastAboutPos);\r
- }\r
- CleanupStack::PopAndDestroy(credits);\r
- \r
-}\r
-void CPicoDriveUi::PutMainMenu()\r
-{\r
- iView->DrawText(_L("PicoDrive S60"),TPoint(0,0));\r
- iView->DrawText(_L("by Dave et Co"),TPoint(0,iFontHeight*1));\r
- \r
- iView->DrawText(_L("Load ROM"),TPoint(0,iFontHeight*3),iSelection==0);\r
- iView->DrawText(_L("Load state"),TPoint(0,iFontHeight*4),iSelection==1);\r
- iView->DrawText(_L("Save state"),TPoint(0,iFontHeight*5),iSelection==2);\r
- iView->DrawText(_L("Configure controls"),TPoint(0,iFontHeight*6),iSelection==3);\r
- iView->DrawText(_L("Configure screen"),TPoint(0,iFontHeight*7),iSelection==4);\r
- iView->DrawText(_L("Configure sound"),TPoint(0,iFontHeight*8),iSelection==5);\r
- iView->DrawText(_L("Game Genie/Cheats"),TPoint(0,iFontHeight*9),iSelection==6);\r
-\r
- iView->DrawText(_L("Reset"),TPoint(0,iFontHeight*10),iSelection==7);\r
- \r
- iView->DrawText(_L("Credits"),TPoint(0,iFontHeight*11),iSelection==8);\r
- iView->DrawText(_L("Exit"),TPoint(0,iFontHeight*12),iSelection==9);\r
- if(iRomName.Length()>0)\r
- {\r
- iView->DrawText(TParsePtr(iRomName).Name(),TPoint(0,iFontHeight*13));\r
- }\r
- else\r
- {\r
- iView->DrawText(_L("No rom loaded"),TPoint(0,iFontHeight*13));\r
- }\r
- \r
-}\r
-\r
-void CPicoDriveUi::PutScreenSelect()\r
-{\r
- TInt regionIndex = 0;\r
-\r
- switch(PicoRegionOverride)\r
- {\r
- default:\r
- regionIndex = 0;\r
- break;\r
- case 1:\r
- regionIndex = 1;\r
- break;\r
- case 2:\r
- regionIndex = 2;\r
- break;\r
- case 4:\r
- regionIndex = 3;\r
- break;\r
- case 8:\r
- regionIndex = 4;\r
- break;\r
- }\r
-\r
- iView->DrawText(_L("PicoDrive S60"),TPoint(0,0));\r
- iView->DrawText(_L("Screen options"),TPoint(0,iFontHeight));\r
- iView->DrawText(_L("Portrait"),TPoint(0,iFontHeight*3),iScrMode==0);\r
- iView->DrawText(_L("Landscape Left"),TPoint(0,iFontHeight*4),iScrMode==1);\r
- iView->DrawText(_L("Landscape Right"),TPoint(0,iFontHeight*5),iScrMode==2);\r
- iView->DrawText(_L("Portrait stretched"),TPoint(0,iFontHeight*6),iScrMode==3);\r
- iView->DrawText(_L("Portrait full"),TPoint(0,iFontHeight*7),iScrMode==4);\r
- if(iInterpolate)\r
- {\r
- iView->DrawText(_L("Interpolate on"),TPoint(0,iFontHeight*8),iScrMode==5);\r
- }\r
- else\r
- {\r
- iView->DrawText(_L("Interpolate off"),TPoint(0,iFontHeight*8),iScrMode==5);\r
- }\r
-\r
- if(iFrameSkip == -1)\r
- {\r
- iView->DrawText(_L("Frameskip auto"),TPoint(0,iFontHeight*9),iScrMode==6);\r
- }\r
- else\r
- { \r
- TBuf<64> skip;\r
- skip.Format(_L("Frameskip %d"),iFrameSkip);\r
- iView->DrawText(skip,TPoint(0,iFontHeight*9),iScrMode==6);\r
- }\r
-\r
- if(PicoOpt & 0x40)\r
- {\r
- iView->DrawText(_L("Accurate timing on"),TPoint(0,iFontHeight*10),iScrMode==7);\r
- }\r
- else\r
- {\r
- iView->DrawText(_L("Accurate timing off"),TPoint(0,iFontHeight*10),iScrMode==7);\r
- }\r
-\r
- if(PicoOpt & 0x80)\r
- {\r
- iView->DrawText(_L("Accurate sprites on"),TPoint(0,iFontHeight*11),iScrMode==8);\r
- }\r
- else\r
- {\r
- iView->DrawText(_L("Accurate sprites off"),TPoint(0,iFontHeight*11),iScrMode==8);\r
- }\r
-\r
- if(PicoOpt & 0x10)\r
- {\r
- iView->DrawText(_L("Alt. renderer on"),TPoint(0,iFontHeight*12),iScrMode==9);\r
- }\r
- else\r
- {\r
- iView->DrawText(_L("Alt. renderer off"),TPoint(0,iFontHeight*12),iScrMode==9);\r
- }\r
-\r
- iView->DrawText(iRegNames->MdcaPoint(regionIndex),TPoint(0,iFontHeight*13),iScrMode==10);\r
- \r
-}\r
-\r
-void CPicoDriveUi::PutSoundSelect()\r
-{\r
- iView->Clear();\r
- iView->DrawText(_L("PicoDrive S60"),TPoint(0,0));\r
- iView->DrawText(_L("Sound options"),TPoint(0,iFontHeight));\r
- if (PicoOpt&4)\r
- iView->DrawText(_L("Z80 enabled"),TPoint(0,iFontHeight*3),iSndSelection==EEnableZ80);\r
- else\r
- iView->DrawText(_L("Z80 disabled"),TPoint(0,iFontHeight*3),iSndSelection==EEnableZ80);\r
- if (PicoOpt&1)\r
- iView->DrawText(_L("YM2612 enabled"),TPoint(0,iFontHeight*4),iSndSelection==EEnableYM2612);\r
- else\r
- iView->DrawText(_L("YM2612 disabled"),TPoint(0,iFontHeight*4),iSndSelection==EEnableYM2612);\r
- \r
- if (PicoOpt&2)\r
- iView->DrawText(_L("SN76496 enabled"),TPoint(0,iFontHeight*5),iSndSelection==EEnableSN76496);\r
- else\r
- iView->DrawText(_L("SN76496 disabled"),TPoint(0,iFontHeight*5),iSndSelection==EEnableSN76496);\r
- \r
- \r
- TBuf<32> vol;\r
- vol.Format(_L("Volume %d"),iSoundVolume*10);\r
- iView->DrawText(vol,TPoint(0,iFontHeight*6),iSndSelection==ESoundVolume);\r
-\r
- vol.Format(_L("Sample rate %dKhz"),PsndRate/1000);\r
- iView->DrawText(vol,TPoint(0,iFontHeight*7),iSndSelection==ESoundRate);\r
-}\r
-\r
-\r
-void CPicoDriveUi::PutCheatSelect()\r
-{\r
- iView->Clear();\r
- iView->DrawText(_L("PicoDrive S60"),TPoint(0,0));\r
- iView->DrawText(_L("Cheat options"),TPoint(0,iFontHeight));\r
-\r
- iView->DrawText(_L("Add cheat"),TPoint(0,iFontHeight*3),iCheatSelection==EAddCheat);\r
- iView->DrawText(_L("Clear cheats"),TPoint(0,iFontHeight*4),iCheatSelection==EClearCheats);\r
- TInt noCheats = 0;\r
- TBuf<17>cheatCode;\r
-\r
- for(TInt i = iListOffset; (i < 256)&&(noCheats<5); i++)\r
- {\r
- if (Liste_GG[i].code[0] != 0)\r
- {\r
-\r
- TRgb textColour = Liste_GG[i].active?KRgbGreen:KRgbDarkGreen;\r
- if(iCheatSelection == 2+(i-iListOffset))\r
- {\r
- textColour = Liste_GG[i].active?KRgbRed:KRgbDarkRed;\r
- }\r
-\r
- TPtrC8 ptr((const unsigned char*)Liste_GG[i].code,strlen(Liste_GG[i].code));\r
- cheatCode.Copy(ptr); \r
-\r
- iView->DrawText(cheatCode,TPoint(0,iFontHeight*(5+noCheats)),EFalse,textColour);\r
- \r
- noCheats++;\r
- }\r
- }\r
-\r
- iView->DrawText(_L("Supports GG & Patch"),TPoint(0,iFontHeight*11));\r
- iView->DrawText(_L("GG: XXXX-XXXX"),TPoint(0,iFontHeight*12));\r
- iView->DrawText(_L("Patch: XXXXXX:YYYY"),TPoint(0,iFontHeight*13));\r
-}\r
-\r
-void CPicoDriveUi::PutControllerSelect()\r
-{\r
- iView->Clear();\r
- iView->DrawText(_L("PicoDrive S60"),TPoint(0,0));\r
- iView->DrawText(_L("Controller options"),TPoint(0,iFontHeight));\r
- if (iEnableSixButtons)\r
- iView->DrawText(_L("6 button pad"),TPoint(0,iFontHeight*3),iCtrlSelection==EControllerType);\r
- else\r
- iView->DrawText(_L("3 button pad"),TPoint(0,iFontHeight*3),iCtrlSelection==EControllerType);\r
- iView->DrawText(_L("Configure keys"),TPoint(0,iFontHeight*4),iCtrlSelection==EConfigControls);\r
-\r
-\r
-\r
-}\r
-\r
-\r
-void CPicoDriveUi::PutConfigKeys()\r
-{\r
- iView->DrawText(_L("PicoDrive S60"),TPoint(0,0));\r
- iView->DrawText(_L("Configure keys"),TPoint(0,iFontHeight));\r
- iView->DrawText(_L("Please press:"),TPoint(0,iFontHeight*3));\r
- iView->DrawText(iKeyNames->MdcaPoint(iCurrentScan),TPoint(0,iFontHeight*4));\r
-\r
- iView->DrawText(_L("Press 'C' to skip this!"),TPoint(0,iFontHeight*6));\r
-\r
-}\r
-\r
-TInt CPicoDriveUi::IdleCallBackStop(TAny* /*aAppUi*/)\r
-{\r
- CActiveScheduler::Stop();\r
- return 0;\r
-}\r
-\r
-TInt CPicoDriveUi::StartEmulatorL(TAny* aAppUi)\r
-{\r
- static_cast<CPicoDriveUi*>(aAppUi)->StartEmulatorL();\r
- return 0;\r
-}\r
-\r
-void CPicoDriveUi::HandleForegroundEventL(TBool aForeground)\r
-{\r
- if(iView != NULL)\r
- {\r
- iView->iForeground=aForeground;\r
- }\r
-\r
- if(!aForeground)\r
- {\r
- if(iView != NULL)\r
- {\r
- iView->AbortNow(RDirectScreenAccess::ETerminateCancel);\r
- }\r
- }\r
- else\r
- {\r
- if(iView != NULL)\r
- {\r
- iView->Restart(RDirectScreenAccess::ETerminateCancel);\r
- UpdateScreen();\r
- }\r
-\r
- SetKeyBlockMode(ENoKeyBlock);\r
- }\r
- \r
-}\r
-\r
-void CPicoDriveUi::UpdateScreen()\r
-{\r
- if(!iEmuRunning)\r
- {\r
- iView->Clear();\r
- if(iCurrentScan>=0)\r
- {\r
- PutConfigKeys();\r
- }\r
- else if(iPicoMenu==ESelectScrMenu)\r
- {\r
- PutScreenSelect();\r
- }\r
- else if (iPicoMenu==EAboutPicoMenu)\r
- {\r
- PutAbout(ETrue);\r
- }\r
- else if (iPicoMenu==ESelectSoundMenu)\r
- {\r
- PutSoundSelect();\r
- }\r
- else if (iPicoMenu==ESelectControlsMenu)\r
- {\r
- PutControllerSelect();\r
- }\r
- else if (iPicoMenu==ESelectCheatMenu)\r
- {\r
- PutCheatSelect();\r
- }\r
- else \r
- PutMainMenu();\r
- \r
- }\r
-}\r
-\r
-void CPicoDriveUi::StartEmulatorL()\r
-{ \r
- iView->Clear();\r
- TTime time;\r
- time.HomeTime();\r
-#ifdef S60V3\r
- LastSecond=(TInt)(time.Int64()/1000);//GetTickCount(); \r
-#else\r
- LastSecond=(TInt)(time.Int64()/1000).GetTInt();//GetTickCount(); \r
-#endif\r
- FramesDone=0;\r
- \r
- iSndStream->SetVolume((iSndStream->MaxVolume()*iSoundVolume)/10);\r
- UpdatePSndRate();\r
-\r
- while(iEmuRunning)\r
- { \r
- EmulateFrame();\r
- }\r
- iSndStream->Stop();\r
- iView->Clear();\r
- PutMainMenu();\r
- \r
-}\r
-\r
-/**\r
- * Calculates the palette table 0-4096\r
- */\r
-void CPicoDriveUi::CalculatePaletteTable()\r
-{\r
- for(TInt cram =0;cram<4096;cram++)\r
- {\r
- if(iDisplayMode == EColor4K)\r
- {\r
- unsigned short high=0x111;\r
- high|=(cram&0x00e)<<8; // Red\r
- high|=(cram&0x0e0); // Green\r
- high|=(cram&0xe00)>> 8; // Blue\r
- gColorMapTab[cram] = high;\r
- }\r
- else // 64K color mode\r
- {\r
- unsigned short high=0x0841;\r
- // Convert 0000bbbb ggggrrrr\r
- // to rrrr1ggg g10bbbb1\r
- high|=(cram&0x00f)<<12; // Red\r
- high|=(cram&0x0f0)<< 3; // Green\r
- high|=(cram&0xf00)>> 7; // Blue\r
- gColorMapTab[cram] = high;\r
- }\r
- }\r
-}\r
-\r
-int CPicoDriveUi::TargetInit()\r
-{\r
- PicoCram=NULL;\r
- TUint16 currentLine = 0;\r
- TReal xFactor = 1;\r
- TReal xNarrowFactor = 1;\r
- TReal yFactor = 1;\r
- TInt loop;\r
-\r
- memset(framebuff,0,framebuffsize);\r
-\r
- if(iScrMode==0)\r
- {\r
-#ifdef S60V3\r
- xFactor = ((TReal)Targ.view.iBr.iX/(TReal)320);\r
- xNarrowFactor = ((TReal)Targ.view.iBr.iX/(TReal)256);\r
- \r
- if(xFactor>1)\r
- xFactor = 1;\r
- \r
- if(xNarrowFactor>1)\r
- xNarrowFactor = 1;\r
-\r
- yFactor = ((TReal)Targ.view.iBr.iY/(TReal)240);\r
-\r
- if(yFactor>1)\r
- yFactor = 1; \r
- \r
- for(loop = 0;loop<256;loop++)\r
- {\r
- TInt line = (loop*xNarrowFactor);\r
- TInt nextLine = ((loop+1)*xNarrowFactor);\r
- if(line != nextLine)\r
- {\r
- gNarrowColumnStepTable[loop] = 1;\r
- }\r
- else\r
- {\r
- gNarrowColumnStepTable[loop] = 0;\r
- } \r
- }\r
- \r
- for(loop = 0;loop<320;loop++)\r
- {\r
- TInt line = (loop*xFactor);\r
- TInt nextLine = ((loop+1)*xFactor);\r
- if( line != nextLine) \r
- {\r
- gColumnStepTable[loop] = 1;\r
- }\r
- else\r
- {\r
- gColumnStepTable[loop] = 0;\r
- } \r
- }\r
-\r
- for(TInt loop = 0;loop<240;loop++)\r
- {\r
- gLineTable[loop] = currentLine;\r
- if((loop*yFactor) != ((loop+1)*yFactor))\r
- currentLine++;\r
- }\r
- myPicoScan=EmulateScan16;\r
- \r
-#else\r
- if(iInterpolate)\r
- myPicoScan=EmulateScan16_176Interpolate;\r
- else\r
- myPicoScan=EmulateScan16_176;\r
- for(TInt loop = 0;loop<240;loop++)\r
- {\r
- gLineTable[loop] = currentLine;\r
- if(((loop*3)/4) != (((loop+1)*3)/4))\r
- currentLine++;\r
- }\r
-#endif\r
- KBitValTable[0] = 1;\r
- KBitValTable[1] = 2;\r
- KBitValTable[2] = 4;\r
- KBitValTable[3] = 8;\r
- }\r
-#ifdef S60V3\r
- else if (iScrMode == 1 || iScrMode == 2)\r
- {\r
- xFactor = ((TReal)Targ.view.iBr.iY/(TReal)320);\r
- xNarrowFactor = ((TReal)Targ.view.iBr.iY/(TReal)256); \r
-\r
- if(xFactor>2)\r
- xFactor = 2;\r
- \r
- if(xNarrowFactor>2)\r
- xNarrowFactor = 2;\r
-\r
- yFactor = ((TReal)Targ.view.iBr.iX/(TReal)240);\r
- if(yFactor>2)\r
- yFactor = 2;\r
- \r
- for(loop = 0;loop<256;loop++)\r
- {\r
- TInt col = (loop*xNarrowFactor);\r
- TInt nextCol= ((loop+1)*xNarrowFactor);\r
- \r
- gNarrowColumnStepTable[loop] = nextCol-col;; \r
- }\r
- \r
- for(loop = 0;loop<320;loop++)\r
- {\r
- TInt col = (loop*xFactor);\r
- TInt nextCol= ((loop+1)*xFactor);\r
- \r
- gColumnStepTable[loop] = nextCol-col;;\r
- }\r
-\r
- for(TInt loop = 0;loop<240;loop++)\r
- {\r
- gLineTable[loop] = currentLine;\r
- TInt line = (loop*yFactor);\r
- TInt nextLine = ((loop+1)*yFactor);\r
- currentLine+=(nextLine-line);\r
- }\r
- if(iScrMode == 2)\r
- {\r
- KBitValTable[0] = 4;\r
- KBitValTable[1] = 8;\r
- KBitValTable[2] = 2;\r
- KBitValTable[3] = 1;\r
- myPicoScan=EmulateScanFullRight16;\r
- }\r
- else\r
- {\r
- KBitValTable[0] = 8;\r
- KBitValTable[1] = 4;\r
- KBitValTable[2] = 1;\r
- KBitValTable[3] = 2;\r
- myPicoScan=EmulateScanFull16;\r
- }\r
-#else\r
-else if (iScrMode == 1)\r
-{\r
- if(iInterpolate)\r
- myPicoScan=EmulateScanFull16_176Interpolate;\r
- else\r
- myPicoScan=EmulateScanFull16_176;\r
-\r
- for(TInt loop = 0;loop<240;loop++)\r
- {\r
- gLineTable[loop] = currentLine;\r
- if(((loop*3)/4) != (((loop+1)*3)/4))\r
- currentLine++;\r
- }\r
- KBitValTable[0] = 8;\r
- KBitValTable[1] = 4;\r
- KBitValTable[2] = 1;\r
- KBitValTable[3] = 2;\r
-#endif \r
- }\r
-#ifndef S60V3\r
- else if(iScrMode==2)\r
- {\r
- if(iInterpolate)\r
- myPicoScan=EmulateScanFullRight16_176Interpolate;\r
- else\r
- myPicoScan=EmulateScanFullRight16_176;\r
- for(TInt loop = 0;loop<240;loop++)\r
- {\r
- gLineTable[loop] = currentLine;\r
- if(((loop*3)/4) != (((loop+1)*3)/4))\r
- currentLine++;\r
- }\r
- KBitValTable[0] = 4;\r
- KBitValTable[1] = 8;\r
- KBitValTable[2] = 2;\r
- KBitValTable[3] = 1;\r
- }\r
-#endif\r
- else \r
- {\r
-#ifdef S60V3\r
- xFactor = ((TReal)Targ.view.iBr.iX/(TReal)320);\r
- xNarrowFactor = ((TReal)Targ.view.iBr.iX/(TReal)256);\r
- \r
- if(xFactor>2)\r
- xFactor = 2;\r
- \r
- if(xNarrowFactor>2)\r
- xNarrowFactor = 2;\r
-\r
- yFactor = ((TReal)Targ.view.iBr.iY/(TReal)240);\r
-\r
- if(yFactor>2)\r
- yFactor = 2; \r
- \r
- for(loop = 0;loop<256;loop++)\r
- {\r
- TInt col = (loop*xNarrowFactor);\r
- TInt nextCol= ((loop+1)*xNarrowFactor);\r
- \r
- gNarrowColumnStepTable[loop] = nextCol-col;; \r
- }\r
- \r
- for(loop = 0;loop<320;loop++)\r
- {\r
- TInt col = (loop*xFactor);\r
- TInt nextCol= ((loop+1)*xFactor);\r
- \r
- gColumnStepTable[loop] = nextCol-col;;\r
- }\r
-\r
- for(TInt loop = 0;loop<240;loop++)\r
- {\r
- gLineTable[loop] = currentLine;\r
- TInt line = (loop*yFactor);\r
- TInt nextLine = ((loop+1)*yFactor);\r
- currentLine+=(nextLine-line);\r
- }\r
- myPicoScan=EmulateStretchScan16;\r
-#else\r
- if(iScrMode == 4)\r
- {\r
- myPicoScan=EmulateStretchScan16_320;\r
- iInterpolate = EFalse; // not needed\r
- }\r
- else\r
- {\r
- if(iInterpolate)\r
- myPicoScan=EmulateStretchScan16_176Interpolate;\r
- else\r
- myPicoScan=EmulateStretchScan16_176;\r
- }\r
-\r
- for(TInt loop = 0;loop<240;loop++)\r
- {\r
- gLineTable[loop] = currentLine;\r
- if(((loop*15)/16) != (((loop+1)*15)/16))\r
- currentLine++;\r
- }\r
-#endif\r
- KBitValTable[0] = 1;\r
- KBitValTable[1] = 2;\r
- KBitValTable[2] = 4;\r
- KBitValTable[3] = 8;\r
- }\r
- \r
- if(iView)\r
- iView->SetRect(TRect(TPoint(0,0),iEikonEnv->ScreenDevice()->SizeInPixels()));\r
-#ifdef S60V3\r
- switch(iScrMode)\r
- {\r
- case 0:\r
- case 3:\r
- case 4:\r
- iPutRect=TRect(TPoint(0,0),TSize(xFactor*320,yFactor*240));\r
- iPutPoint=TPoint(Targ.view.Size().iWidth/2-iPutRect.Size().iWidth/2,Targ.view.Size().iHeight/2-iPutRect.Size().iHeight/2);\r
- \r
- break;\r
- case 1:\r
- case 2:\r
- iPutRect=TRect(TPoint(0,0),TSize(yFactor*240,xFactor*320));\r
- iPutPoint=TPoint(Targ.view.Size().iWidth/2-iPutRect.Size().iWidth/2,Targ.view.Size().iHeight/2-iPutRect.Size().iHeight/2);\r
- break;\r
-\r
- }\r
-#else\r
- switch(iScrMode)\r
- {\r
- case 0:\r
- iPutPoint=TPoint(0,20);\r
- iPutRect=TRect(TPoint(0,0),TSize(176,168)); \r
- break;\r
- case 1:\r
- case 2:\r
- iPutPoint=TPoint(4,1);\r
- iPutRect=TRect(TPoint(4,1),TSize(168,205));\r
-\r
- break;\r
- case 3:\r
- case 4:\r
- iPutPoint=TPoint(0,0);\r
- iPutRect=TRect(TPoint(0,0),TSize(176,208));\r
- break;\r
- }\r
-#endif\r
- CalulateLineStarts();\r
- return 0;\r
-}\r
-#ifdef S60V3\r
-#define KCenterOffset 8\r
-#else\r
-#define KCenterOffset 0\r
-#endif\r
-void CPicoDriveUi::CalulateLineStarts()\r
-{\r
- switch(iScrMode)\r
- {\r
- case 0:\r
- case 3:\r
- case 4:\r
- {\r
- for(TInt loop = 0;loop<Targ.view.Size().iHeight;loop++)\r
- {\r
- gLineOffsets[loop] = loop*Targ.scanline_length;\r
- }\r
- }break;\r
- case 1:\r
- { \r
- for(TInt loop = 0;loop<Targ.view.Size().iHeight;loop++)\r
- {\r
- gLineOffsets[loop] = loop*2+Targ.screen_offset+KCenterOffset;\r
- }\r
- }break;\r
- case 2:\r
- {\r
- for(TInt loop = 0;loop<Targ.view.Size().iHeight;loop++)\r
- {\r
- gLineOffsets[loop] = Targ.scanline_length-loop*2-KCenterOffset;\r
- }\r
- }break; \r
- }\r
-}\r
-\r
-bool IsZip(char *filename)\r
-{\r
- unsigned char buf[2];\r
- FILE *fp;\r
- \r
- if((fp=fopen(filename,"rb"))!=NULL)\r
- {\r
- fread(buf, 2, 1, fp);\r
- fclose(fp);\r
- return(memcmp(buf,"PK",2)==0);\r
- }\r
- if(fp)fclose(fp);\r
- return false;\r
-}\r
-\r
-int CPicoDriveUi::EmulateInit()\r
-{\r
- FILE *f=NULL;\r
- EmulateExit(); // Make sure exited\r
- TargetInit(); // Find out where to put the screen\r
- PicoInit();\r
- // Load cartridge\r
- if(IsZip(RomName))\r
- {\r
- if(CartLoadZip(RomName,&RomData,&RomSize))\r
- { \r
- return 1;\r
- }\r
- }\r
- else\r
- {\r
- // Load cartridge\r
- RFile file;\r
- TInt error = file.Open(iEikonEnv->FsSession(),iRomName,0);\r
- file.Close();\r
- f=fopen(RomName,"rb"); \r
- if (f==NULL) \r
- return 1;\r
- TInt result =PicoCartLoad(f,&RomData,&RomSize);\r
- fclose(f);\r
- if(result)\r
- return 1; // failed to load cart\r
- }\r
- \r
- TParsePtr parser(iRomName);\r
- TPtr8 ptr(Pico.rom_name,511);\r
- ptr.Copy(parser.DriveAndPath());\r
- ptr.Append(parser.Name());\r
- ptr.ZeroTerminate();\r
-\r
- PicoCartInsert(RomData,RomSize);\r
- Load_Patch_File();\r
- saveLoadGame(1, 1); // load sram if any saved\r
-\r
- if(!iEnableSixButtons)\r
- PicoOpt=PicoOpt& 223;\r
- else\r
- PicoOpt=PicoOpt|32; \r
- return 0;\r
-}\r
-\r
-void CPicoDriveUi::EmulateExit()\r
-{\r
- // Save sram if any\r
- if(RomData != NULL)\r
- {\r
- if(SRam.changed)\r
- {\r
- saveLoadGame(0,1);\r
- SRam.changed = 0;\r
- }\r
-\r
- Save_Patch_File();\r
- // Remove cartridge\r
- PicoCartInsert(NULL,0);\r
- PicoUnloadCart(RomData);\r
- RomData=NULL; RomSize=0;\r
- }\r
- PicoExit();\r
-}\r
-\r
-int CPicoDriveUi::InputFrame()\r
-{\r
- if(PicoOpt & 3)\r
- {\r
- PsndOut=(short*)(iMonoSound.Ptr()+2*iCurrentSeg*PsndLen);\r
- }\r
- else\r
- {\r
- PsndOut=NULL;\r
- }\r
-\r
- Patch_Codes();\r
-\r
- PicoFrame();\r
-\r
- if(PicoOpt & 3)\r
- {\r
- iCurrentSeg++;\r
- if(iCurrentSeg==6)\r
- {\r
- iMonoSound.SetLength(PsndLen*2*6);\r
- iSndStream->WriteL(iMonoSound);\r
- iCurrentSeg=0;\r
- }\r
- }\r
- \r
- TCallBack callback(IdleCallBackStop,this);\r
- iIdleCallBack.Cancel();\r
- iIdleCallBack.Set(callback);\r
- iIdleCallBack.CallBack();\r
- CActiveScheduler::Start();\r
- \r
- \r
- PicoPad[0]=iPad1;\r
- return 0;\r
-}\r
-\r
-\r
-\r
-int CPicoDriveUi::EmulateFrame()\r
-{\r
- int i=0,need=2;\r
- if (!iRomLoaded) \r
- return 1;\r
- // Speed throttle:\r
- if(iFrameSkip ==-1) // auto skipping\r
- {\r
- int time=0,frame=0;\r
- TTime newtime;\r
- newtime.HomeTime();\r
-#ifdef S60V3\r
- TInt64 tic=(newtime.Int64()/1000);\r
- time=(tic-LastSecond); // This will be about 0-1000 ms\r
-#else\r
- TInt64 tic=(newtime.Int64()/1000).GetTInt();\r
- time=(tic-LastSecond).GetTInt(); // This will be about 0-1000 ms\r
-#endif\r
- frame=time*FramesPerSecond/1000;\r
- need=frame-FramesDone;\r
- FramesDone=frame;\r
- \r
- if (FramesPerSecond>0)\r
- {\r
- // Carry over any >60 frame count to one second\r
- while (FramesDone>=FramesPerSecond) { FramesDone-=FramesPerSecond; LastSecond+=1000; }\r
- }\r
- \r
- if (need<=0) { \r
- TTime nextTime;\r
- do\r
- {\r
- nextTime.HomeTime();\r
- }while((nextTime.Int64()-newtime.Int64())<15000);\r
- }\r
- if (need>10) need=10; // Limit frame skipping\r
- }\r
- else\r
- {\r
- need = iFrameSkip+1;\r
- }\r
- PicoSkipFrame=1;\r
- for (i=0;i<need-1;i++) InputFrame(); // Frame skip if needed\r
- PicoSkipFrame=0;\r
-\r
- // Now final frame is drawn:\r
- TBitmapUtil util(iBackBuffer);\r
- util.Begin(TPoint(0,0));\r
- Targ.screen=(unsigned char*)iBackBuffer->DataAddress();\r
- \r
- if (Targ.screen == NULL) \r
- {\r
- util.End();\r
- return 1;\r
- }\r
- \r
- PicoScan=myPicoScan; // Setup scanline callback\r
- InputFrame();\r
-\r
-\r
- if(PicoOpt & 0x10) // need to render separatly\r
- {\r
- unsigned short* framebuffptr = framebuff+2632;\r
-\r
- if(!(Pico.video.reg[12]&1))\r
- {\r
- framebuffptr=framebuffptr-32;\r
- }\r
-\r
- TInt skipNext =0;\r
- for(TInt loop = 0;loop<224;loop++)\r
- {\r
- if(skipNext == 0)\r
- {\r
- skipNext = PicoScan(loop,framebuffptr);\r
- }\r
- else\r
- skipNext--;\r
- framebuffptr+=328;\r
- }\r
- }\r
- PicoScan=NULL;\r
- util.End();\r
-\r
- Targ.screen = NULL;\r
- \r
- iView->PutBitmap(iBackBuffer,iPutPoint,iPutRect);;\r
- \r
- return 0;\r
-}\r
-\r
-\r
-void CPicoDriveUi::MaoscOpenComplete(TInt aError)\r
-{\r
- if(aError == KErrNone)\r
- {\r
- iSndStream->SetPriority(EPriorityMuchMore, EMdaPriorityPreferenceNone);\r
- iSndStream->SetVolume((iSndStream->MaxVolume()*iSoundVolume)/10);\r
- if(!UpdatePSndRate())\r
- {\r
- PsndRate = 8000;\r
- UpdatePSndRate();\r
- }\r
- }\r
- CActiveScheduler::Stop();\r
-}\r
-\r
-void CPicoDriveUi::MaoscBufferCopied(TInt /*aError*/, const TDesC8& /*aBuffer*/)\r
-{\r
-}\r
-\r
-void CPicoDriveUi::MaoscPlayComplete(TInt aError)\r
-{\r
- if(aError != KErrNone)\r
- {\r
- iSndStream->SetVolume((iSndStream->MaxVolume()*iSoundVolume)/10);\r
- UpdatePSndRate();\r
- }\r
-}\r
-\r
-TBool CPicoDriveUi::UpdatePSndRate()\r
-{\r
- TInt sampleRate = TMdaAudioDataSettings::ESampleRate8000Hz;\r
- if(PsndRate == 11025)\r
- sampleRate = TMdaAudioDataSettings::ESampleRate11025Hz;\r
- else if (PsndRate == 16000)\r
- sampleRate = TMdaAudioDataSettings::ESampleRate16000Hz;\r
- else if (PsndRate == 22050)\r
- sampleRate = TMdaAudioDataSettings::ESampleRate22050Hz;\r
-\r
- TRAPD(err,iSndStream->SetAudioPropertiesL(sampleRate,TMdaAudioDataSettings::EChannelsMono));\r
- return (err == KErrNone);\r
-}\r
-\r
-size_t gzRead2(void *p, size_t _size, size_t _n, void *file)\r
-{\r
- return gzread(file, p, _n);\r
-}\r
-\r
-\r
-size_t gzWrite2(void *p, size_t _size, size_t _n, void *file)\r
-{\r
- return gzwrite(file, p, _n);\r
-}\r
-\r
-\r
-\r
-// this function is shared between both threads\r
-int CPicoDriveUi::saveLoadGame(int load, int sram)\r
-{\r
- int res = 0;\r
- \r
- if(!(iRomName.Length()>0)) return -1;\r
- \r
- // make save filename\r
- strcpy(saveFname,RomName);\r
- saveFname[KMaxFileName-5] = 0;\r
- if(saveFname[strlen(saveFname)-4] == '.') saveFname[strlen(saveFname)-4] = 0;\r
- strcat(saveFname, sram ? ".srm" : ".mds");\r
- \r
- if(sram) {\r
- int sram_size = SRam.end-SRam.start+1;\r
- if(SRam.reg_back & 4) sram_size=0x2000;\r
- if(!SRam.data) return 0; // SRam forcefully disabled for this game\r
- if(load) {\r
- PmovFile = fopen(saveFname, "rb");\r
- if(!PmovFile) return -1;\r
- fread(SRam.data, 1, sram_size, (FILE *) PmovFile);\r
- fclose((FILE *) PmovFile);\r
- } else {\r
- // sram save needs some special processing\r
- // see if we have anything to save\r
- for(; sram_size > 0; sram_size--)\r
- if(SRam.data[sram_size-1]) break;\r
- \r
- if(sram_size) {\r
- PmovFile = fopen(saveFname, "wb");\r
- res = fwrite(SRam.data, 1, sram_size, (FILE *) PmovFile);\r
- res = (res != sram_size) ? -1 : 0;\r
- fclose((FILE *) PmovFile);\r
- }\r
- }\r
- PmovFile = 0;\r
- return res;\r
- } else {\r
- // try gzip first\r
- //if(currentConfig.iFlags & 0x80) {\r
- strcat(saveFname, ".gz");\r
- if( (PmovFile = gzopen(saveFname, load ? "rb" : "wb")) ) {\r
- areaRead = gzRead2;\r
- areaWrite = gzWrite2;\r
- if(!load) gzsetparams(PmovFile, 9, Z_DEFAULT_STRATEGY);\r
- } else\r
- saveFname[strlen(saveFname)-3] = 0;\r
- // }\r
- \r
- if(!PmovFile) { // gzip failed or was disabled\r
- if( (PmovFile = fopen(saveFname, load ? "rb" : "wb")) ) {\r
- areaRead = (arearw *) fread;\r
- areaWrite = (arearw *) fwrite;\r
- }\r
- }\r
- if(PmovFile) {\r
- PmovAction = load ? 6 : 5; // load/save\r
- PmovState();\r
- if(areaRead == gzRead2)\r
- gzclose(PmovFile);\r
- else fclose ((FILE *) PmovFile);\r
- PmovFile = 0;\r
- } else {\r
- res = -1;\r
- }\r
- \r
- return res;\r
- }\r
- \r
-}\r
-\r
-CQPicoDriveView::~CQPicoDriveView()\r
-{\r
- iDsa->Cancel();\r
- delete iDsa;\r
-}\r
-\r
-void CQPicoDriveView::Restart(RDirectScreenAccess::TTerminationReasons /*aReason*/)\r
-{\r
- if(iForeground)\r
- {\r
- iDsa->Cancel();\r
- iDsa->StartL();\r
- iDsa->Gc()->SetClippingRegion(iDsa->DrawingRegion());\r
- iDrawingOn=ETrue;\r
- }\r
-}\r
-\r
-void CQPicoDriveView::AbortNow(RDirectScreenAccess::TTerminationReasons /*aReason*/)\r
-{\r
- iDsa->Cancel();\r
- iDrawingOn=EFalse;\r
-}\r
-\r
-\r
-\r
-void CQPicoDriveView::Draw(const TRect& aRect) const\r
-{\r
- CWindowGc& gc=SystemGc();\r
- \r
- gc.SetBrushColor(KRgbBlack);\r
- gc.SetBrushStyle(CGraphicsContext::ESolidBrush);\r
- gc.SetPenStyle(CGraphicsContext::ENullPen);\r
- gc.DrawRect(aRect);\r
- static_cast<CPicoDriveUi*>(iEikonEnv->EikAppUi())->StartAsynchUpdate();\r
-}\r
-\r
-void CQPicoDriveView::ConstructL()\r
-{\r
- CreateWindowL();\r
- ActivateL();\r
- SetFocus(ETrue);\r
- SetRect(TRect(TPoint(0,0),iEikonEnv->ScreenDevice()->SizeInPixels())/*iEikonEnv->EikAppUi()->ClientRect()*/);\r
- iDsa=CDirectScreenAccess::NewL(iEikonEnv->WsSession(),*iEikonEnv->ScreenDevice(),Window(),*this);\r
- iDsa->StartL();\r
- iDsa->Gc()->SetClippingRegion(iDsa->DrawingRegion());\r
- iDrawingOn=ETrue;\r
- if(Window().DisplayMode() != EColor4K && Window().DisplayMode() != EColor64K)\r
- {\r
- Window().SetRequiredDisplayMode(EColor64K); // Try to set 64K color mode\r
- }\r
-}\r
-void CQPicoDriveView::Clear()\r
-{\r
- CBitmapContext* gc;\r
- if(iDrawingOn)\r
- {\r
- gc=iDsa->Gc();\r
- }\r
- else\r
- {\r
- ActivateGc();\r
- gc=&SystemGc();\r
- }\r
- \r
- gc->SetBrushColor(KRgbBlack);\r
- gc->SetBrushStyle(CGraphicsContext::ESolidBrush);\r
- gc->SetPenStyle(CGraphicsContext::ENullPen);\r
- gc->DrawRect(Rect()); \r
- if(iDrawingOn)\r
- {\r
- iDsa->ScreenDevice()->Update();\r
- iEikonEnv->WsSession().Flush();\r
- }\r
- else\r
- {\r
- DeactivateGc();\r
- }\r
-}\r
-\r
-void CQPicoDriveView::DrawText(const TDesC& aText,TPoint aPoint,TBool aHighLight,TRgb aTextColour)\r
-{\r
- CBitmapContext* gc;\r
- if(iDrawingOn)\r
- {\r
- gc=iDsa->Gc();\r
- }\r
- else\r
- {\r
- ActivateGc();\r
- gc=&SystemGc();\r
- }\r
- \r
- gc->SetBrushColor(KRgbBlack);\r
- gc->SetBrushStyle(CGraphicsContext::ESolidBrush);\r
- if(!aHighLight)\r
- {\r
- gc->SetPenColor(aTextColour);\r
- }\r
- else\r
- {\r
- gc->SetPenColor(KRgbRed);\r
- }\r
- gc->SetPenStyle(CGraphicsContext::ESolidPen);\r
- aPoint.iY+=iEikonEnv->NormalFont()->HeightInPixels()-2;\r
- aPoint.iX=Size().iWidth/2-iEikonEnv->NormalFont()->TextWidthInPixels(aText)/2;\r
- gc->UseFont(iEikonEnv->NormalFont());\r
- gc->DrawText(aText,aPoint);\r
- gc->DiscardFont();\r
- \r
- if(iDrawingOn)\r
- {\r
- iDsa->ScreenDevice()->Update(); \r
- }\r
- else\r
- {\r
- DeactivateGc();\r
- }\r
-}\r
-\r
-TInt CQPicoDriveView::DrawTextInRect(const TDesC& aText,TRect aRect,TInt aStartPos)\r
-{\r
- CBitmapContext* gc;\r
- TInt pos = aStartPos;\r
- TInt len = aText.Length();\r
- if(iDrawingOn)\r
- {\r
- gc=iDsa->Gc();\r
- }\r
- else\r
- {\r
- ActivateGc();\r
- gc=&SystemGc();\r
- }\r
- \r
- gc->SetBrushColor(KRgbBlack);\r
- gc->SetBrushStyle(CGraphicsContext::ESolidBrush);\r
- \r
- gc->SetPenColor(KRgbWhite);\r
- \r
- gc->SetPenStyle(CGraphicsContext::ESolidPen);\r
- gc->UseFont(iEikonEnv->DenseFont());\r
- while(pos<len && aRect.iTl.iY<aRect.iBr.iY-(iEikonEnv->DenseFont()->HeightInPixels()+3))\r
- {\r
- TInt newline = aText.Right(len-pos).Locate('\n');\r
- if(newline == KErrNotFound)\r
- newline=(len-1)-pos;\r
- gc->DrawText(aText.Mid(pos,newline),aRect,iEikonEnv->DenseFont()->HeightInPixels());\r
- pos=pos+newline+1; // skip new line\r
- aRect.iTl+=TSize(0,iEikonEnv->DenseFont()->HeightInPixels()+3);\r
- }\r
- gc->DiscardFont();\r
- \r
- if(iDrawingOn)\r
- {\r
- iDsa->ScreenDevice()->Update();\r
- }\r
- else\r
- {\r
- DeactivateGc();\r
- }\r
- return pos;\r
-}\r
-\r
-\r
-void CQPicoDriveView::PutBitmap(CFbsBitmap* aBitmap,TPoint aPoint,TRect aRect)\r
-{\r
- if(iDrawingOn)\r
- {\r
- //#ifdef __WINS__\r
- iDsa->Gc()->BitBlt(aPoint,aBitmap,aRect);\r
- iDsa->ScreenDevice()->Update();\r
- //#endif\r
- //iEikonEnv->WsSession().Flush();\r
- }\r
- else\r
- {\r
- ActivateGc();\r
- CWindowGc& gc=SystemGc();\r
- gc.BitBlt(aPoint,aBitmap,aRect);\r
- DeactivateGc();\r
- }\r
-}\r
-\r
-\r
-\r
-void Execute()\r
-{\r
- __UHEAP_MARK;\r
- CTrapCleanup* cleanup = CTrapCleanup::New();\r
- \r
- // Create a eikenv\r
- CEikonEnv* eikenv = new CEikonEnv;\r
- if (!eikenv) \r
- {\r
- return /*KErrNoMemory*/;\r
- }\r
- TRAPD(eikErr, eikenv->ConstructL());\r
- if (eikErr != KErrNone) \r
- {\r
- delete eikenv;\r
- return /*eikErr*/;\r
- }\r
- CPicoDriveUi* appUi = new (ELeave) CPicoDriveUi;\r
- if (!appUi) \r
- {\r
- delete eikenv;\r
- return /*KErrNoMemory*/;\r
- }\r
- \r
- TRAPD(constructErr,appUi->ConstructL());\r
- \r
- eikenv->SetAppUi(appUi); // passing ownership of appUi to coe\r
- \r
- TInt leaveValue = KErrNone; \r
- if (leaveValue != KErrNone)\r
- {\r
- delete eikenv;\r
- }\r
- else\r
- {\r
- // now accept request from clients (start the scheduler)\r
- eikenv->ExecuteD();\r
- //delete eikenv; // ExecuteD kills eikenv\r
- \r
- }\r
- \r
- delete cleanup;\r
- \r
- __UHEAP_MARKEND;\r
-}\r
-\r
-//ARM build\r
-#ifdef S60V3\r
-CPicoDriveApp::CPicoDriveApp()\r
-{\r
-}\r
-\r
-CPicoDriveApp::~CPicoDriveApp()\r
-{\r
-}\r
-\r
-CApaDocument* CPicoDriveApp::CreateDocumentL()\r
-{\r
- return new (ELeave) CPicoDriveDoc(*this);\r
-}\r
-\r
-\r
-TUid CPicoDriveApp::AppDllUid()const\r
-{\r
- return TUid::Uid(0xA00007BE);\r
-}\r
-\r
-/**\r
- * From @c CApaApplication. Opens the .ini file associated with the\r
- * application. By default, ini files are not supported by SERIES60 \r
- * applications. If you want to use an ini file, either override this\r
- * function to base call @c CEikApplication::OpenIniFileLC, or call it\r
- * directly.\r
- * @param aFs File server session to use. Not used.\r
- * @return Pointer to the dictionary store object representing the\r
- * application's .ini file.\r
- */\r
-CDictionaryStore* CPicoDriveApp::OpenIniFileLC(RFs& aFs) const\r
-{\r
- return CEikApplication::OpenIniFileLC(aFs);\r
-}\r
-\r
-CPicoDriveDoc::CPicoDriveDoc(CEikApplication& aApp):CAknDocument(aApp)\r
-{\r
-}\r
-\r
-CPicoDriveDoc::~CPicoDriveDoc()\r
-{\r
-}\r
-\r
-CEikAppUi* CPicoDriveDoc::CreateAppUiL()\r
-{\r
- return new (ELeave) CPicoDriveUi;\r
-}\r
-\r
-#ifdef S60V3\r
-LOCAL_C\r
-#endif\r
-CApaApplication* NewApplication() {\r
- // Return pointer to newly created Application\r
- return new CPicoDriveApp;\r
-}\r
-#include <eikstart.h>\r
-#endif\r
-GLDEF_C TInt E32Main()\r
-{\r
-#ifdef S60V3 \r
- return EikStart::RunApplication(NewApplication);\r
-#else\r
- Execute();\r
-#endif\r
- return KErrNone;\r
-}\r
-#if defined(__WINS__)\r
-\r
-#ifndef S60V3\r
-EXPORT_C TInt WinsMain()\r
-{\r
- E32Main();\r
- return KErrNone;\r
-}\r
-#endif\r
-\r
-extern "C" void my_free(void* anAddress)\r
-{\r
- if(gChunk != NULL)\r
- {\r
- gChunk->Free(anAddress);\r
- }\r
-}\r
-\r
-extern "C" void* my_malloc(int aSize)\r
-{\r
- if(gChunk != NULL)\r
- {\r
- return gChunk->Alloc(aSize);\r
- }\r
- return NULL;\r
-}\r
-#endif\r
-\r
+++ /dev/null
-#ifndef PicoDriveH\r
-#define PicoDriveH\r
-#include <e32base.h>\r
-#include <eikappui.h>\r
-#include <coecntrl.h>\r
-#include <aknapp.h>\r
-#include <akndoc.h>\r
-#include <MdaAudioOutputStream.h>\r
-#include <Mda\Common\Audio.h>\r
-\r
-#include <aknappUI.h>\r
-struct Target\r
-{\r
- unsigned char *screen;\r
- TPoint point; // Screen to client point\r
- TRect view,update;\r
- TInt scanline_length;\r
- TInt screen_offset;\r
- TBool stretch_line;\r
-\r
-};\r
-\r
-enum TPicoMainMenu\r
-{\r
- ELoadRom,\r
- ELoadState,\r
- ESaveState,\r
- ESetControls,\r
- ESetScreen,\r
- ESelectSound,\r
- ESelectCheat,\r
- EResetHw,\r
- EAboutPico,\r
- EExitPico,\r
- ELastMenuItem\r
-};\r
-\r
-enum TPicoSoundMenu\r
-{\r
- EEnableZ80,\r
- EEnableYM2612,\r
- EEnableSN76496,\r
- ESoundVolume,\r
- ESoundRate,\r
- ELastSoundItem\r
-};\r
-\r
-enum TPicoCheatMenu\r
-{\r
- EAddCheat,\r
- EClearCheats,\r
- ELastCheatItem\r
-};\r
-\r
-enum TPicoControllerMenu\r
-{\r
- EControllerType,\r
- EConfigControls\r
-};\r
-enum TPicoMenus\r
-{\r
- EPicoMainMenu,\r
- ESelectScrMenu,\r
- EAboutPicoMenu,\r
- ESelectSoundMenu,\r
- ESelectControlsMenu,\r
- ESelectCheatMenu\r
-};\r
-\r
-enum TPicoKeys\r
-{\r
- EPicoUpKey,\r
- EPicoDownKey,\r
- EPicoLeftKey,\r
- EPicoRightKey,\r
- EPicoAKey,\r
- EPicoBKey,\r
- EPicoCKey,\r
- EPicoXKey,\r
- EPicoYKey,\r
- EPicoZKey,\r
- EPicoModeKey,\r
- EPicoStartKey,\r
- EPicoULKey,\r
- EPicoURKey,\r
- EPicoDRKey,\r
- EPicoDLKey,\r
- EPicoResetKey,\r
- EPicoPanLKey,\r
- EPicoPanRKey,\r
- EPicoNoKeys\r
-};\r
-\r
-class CPicoAddCheatDlg:public CEikDialog\r
-{\r
-public:\r
- CPicoAddCheatDlg(TDes8& aCheatCode):iCheatCode(aCheatCode){};\r
- ~CPicoAddCheatDlg(){ iEikonEnv->EikAppUi()->RemoveFromStack(this);}\r
- TBool OkToExitL(TInt /*aButtonId*/)\r
- {\r
- static_cast<CEikEdwin*>(ControlOrNull(0x2000))->GetText(iUniCheatCode);\r
- iCheatCode.Copy(iUniCheatCode);\r
- return ETrue;\r
- }\r
-\r
- void PreLayoutDynInitL()\r
- {\r
- iEikonEnv->EikAppUi()->AddToStackL(this);\r
- }\r
-private:\r
- TDes8& iCheatCode;\r
- TBuf<16> iUniCheatCode;\r
-};\r
-\r
-#ifdef S60V3\r
-class CPicoDriveDoc:public CAknDocument\r
-{\r
-public:\r
- CPicoDriveDoc(CEikApplication& aApp);\r
- ~CPicoDriveDoc();\r
- CEikAppUi* CreateAppUiL();\r
-};\r
-\r
-class CPicoDriveApp:public CAknApplication\r
-{\r
-public:\r
- CPicoDriveApp();\r
- ~CPicoDriveApp();\r
- TUid AppDllUid()const;\r
- CApaDocument* CreateDocumentL();\r
-\r
- /**\r
- * From @c CApaApplication. Opens the .ini file associated with the\r
- * application. By default, ini files are not supported by SERIES60 \r
- * applications. If you want to use an ini file, either override this\r
- * function to base call @c CEikApplication::OpenIniFileLC, or call it\r
- * directly.\r
- * @param aFs File server session to use. Not used.\r
- * @return Pointer to the dictionary store object representing the\r
- * application's .ini file.\r
- */\r
- CDictionaryStore* OpenIniFileLC(RFs& aFs) const;\r
-};\r
-#endif\r
-\r
-class CQPicoDriveView:public CCoeControl,public MDirectScreenAccess\r
- {\r
-public:\r
- CQPicoDriveView() {};\r
- ~CQPicoDriveView();\r
- void Draw(const TRect& aRect) const;\r
- void ConstructL();\r
- void PutBitmap(CFbsBitmap* aBitmap,TPoint aPoint,TRect aRect);\r
- void Restart(RDirectScreenAccess::TTerminationReasons aReason);\r
- void AbortNow(RDirectScreenAccess::TTerminationReasons aReason);\r
- void DrawText(const TDesC& aText,TPoint aPoint,TBool aHighLight=EFalse,TRgb aTextColour = KRgbWhite);\r
- TInt DrawTextInRect(const TDesC& aText,TRect aRect,TInt aStartPos);\r
- void Clear();\r
- CDirectScreenAccess* iDsa;\r
- TBool iDrawingOn;\r
- TBool iForeground;\r
- };\r
-\r
-\r
-class CPicoDriveUi:public CAknAppUi,public MMdaAudioOutputStreamCallback\r
-{\r
-public:\r
- CPicoDriveUi();\r
- ~CPicoDriveUi();\r
- void ConstructL();\r
- void StartAsynchUpdate();\r
-protected:\r
- static TInt AsyncUpdateL(TAny* aAppUi);\r
- void StartEmulatorL();\r
- virtual TKeyResponse HandleKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);\r
- void HandleForegroundEventL(TBool aForeground);\r
- // Menu drawers\r
- void PutMainMenu();\r
- void PutScreenSelect();\r
- void PutControllerSelect();\r
- void PutConfigKeys();\r
- void PutSoundSelect();\r
- void PutCheatSelect();\r
- void PutAbout(TBool iOnlyRedraw = EFalse);\r
-\r
- // Asynch screen update callback\r
- void UpdateScreen();\r
-\r
- TInt SelectFile(TFileName& aFileName);\r
- // Emulation functions\r
- int EmulateInit();\r
- void EmulateExit();\r
- int EmulateFrame();\r
- int InputFrame();\r
- int TargetInit();\r
- void CalulateLineStarts();\r
-\r
- static TInt IdleCallBackStop(TAny* aAppUi);\r
- static TInt StartEmulatorL(TAny* aAppUi);\r
- // Settings storage\r
- void SaveSettingsL();\r
- void InternalizeL(const CDictionaryStore& aStore);\r
- void ExternalizeL( CDictionaryStore& aStore);\r
-\r
- // Save state handling\r
- int saveLoadGame(int load, int sram);\r
-\r
- /**\r
- * Calculates the palette table 0-4096\r
- */\r
- void CalculatePaletteTable();\r
- CAsyncCallBack iIdleCallBack;\r
-\r
- // Variables\r
- TUint16 iPad1;\r
- TUint16 iPad2; \r
- TFileName iRomName;\r
- char RomName[260];\r
- TInt iScanCodes[EPicoNoKeys];\r
- TInt iCurrentScan;\r
- CDesCArrayFlat* iKeyNames;\r
- CDesCArrayFlat* iRegNames;\r
- TBool iEmuRunning;\r
- CQPicoDriveView* iView;\r
- TInt iResourceFileId;\r
- CAsyncCallBack iStartUp;\r
- CFbsBitmap* iBackBuffer;\r
- TFileName iAppPath;\r
- TPoint iPutPoint;\r
- TRect iPutRect; \r
- TInt iSelection;\r
- TInt iSndSelection;\r
- TInt iCtrlSelection;\r
- TInt iCheatSelection;\r
- TInt iNoCheats;\r
- TBool iCheatEnter;\r
- CEikDialog* iCheatDlg;\r
- TInt iListOffset;\r
- TInt iScrMode;\r
- TInt iLastScrMode;\r
- TBool iRomLoaded;\r
- TBool iInterpolate;\r
- TBool iStretch;\r
- TBool iEnableSixButtons;\r
- TPicoMenus iPicoMenu;\r
- CAsyncCallBack iAsyncUpdate;\r
-\r
- // sound support\r
- CMdaAudioOutputStream* iSndStream;\r
- TMdaAudioDataSettings iAudioSettings;\r
- TBuf8<442*2*6> iMonoSound;\r
- TInt iCurrentSeg;\r
- TBool iEnableSound;\r
- TBool iSndRateChanged;\r
- TInt iSoundVolume; // 0-10 in 10% percent\r
- void MaoscOpenComplete(TInt aError);\r
- void MaoscBufferCopied(TInt aError, const TDesC8& aBuffer);\r
- void MaoscPlayComplete(TInt aError);\r
- // Update the sound output rate\r
- TBool UpdatePSndRate();\r
-\r
- // Rom pointers\r
- unsigned char *RomData;\r
- unsigned int RomSize;\r
- \r
- TInt64 LastSecond;\r
- int FramesDone;\r
- int FramesPerSecond;\r
- TDisplayMode iDisplayMode;\r
- TInt iLastAboutPos;\r
- TBool iFirstStart;\r
- TInt iFrameSkip;\r
- TInt iFontHeight; \r
- int (*myPicoScan)(unsigned int scan,unsigned short *pal);\r
- TBuf<1024> iTempString;\r
- // make save filename\r
- char saveFname[KMaxFileName];\r
-\r
-};\r
-\r
-#endif\r
+++ /dev/null
-target PicoDrive.exe\r
-TARGETTYPE exedll\r
-TARGETPATH system\apps\PicoDriveS60\r
-SOURCEPATH ..\S60\r
-source picodriveexe.cpp \r
-sourcepath ..\r
-source unzip.c\r
-#ifndef WINS\r
-sourcepath ..\gcc\r
-source libgcc2.c\r
-#endif\r
-\r
-SYSTEMINCLUDE \epoc32\include \epoc32\include\libc\r
-USERINCLUDE ..\pico ..\pico\sound ..\s60 ..\r
-// libraries\r
-library cone.lib EIKCORE.lib MEDIACLIENTAUDIOSTREAM.LIB\r
-library euser.lib zlib.lib\r
-library efsrv.lib estlib.lib fbscli.lib estor.lib eikcoctl.lib \r
-library ws32.lib AVKON.LIB bafl.lib bitgdi.lib eikdlg.lib\r
-\r
-staticlibrary pico.lib \r
-\r
-#if defined(WINS)\r
-staticlibrary a68k.obj\r
-staticlibrary mz80_asm.obj\r
-#else\r
-staticlibrary cyclone.o \r
-staticlibrary DRZ80.o\r
-staticlibrary draw.o\r
-//staticlibrary blit.o\r
-staticlibrary ym2612_helper.o\r
-staticlibrary memory.o\r
-staticlibrary draw2.o\r
-#endif\r
-\r
-EPOCHEAPSIZE 1024000 8192000\r
-//EPOCSTACKSIZE 65535\r
+++ /dev/null
-// PicoDriveS60.RSS\r
-//\r
-//\r
-\r
-NAME Pico\r
-#include <eikon.rh>\r
-#include <eikon.rsg>\r
-#include <avkon.rsg>\r
-#include <avkon.rh>\r
-RESOURCE RSS_SIGNATURE { }\r
-\r
-RESOURCE TBUF16 { buf=""; }\r
-\r
-RESOURCE EIK_APP_INFO\r
- { \r
- menubar = r_miniapp_menubar;\r
- cba=R_AVKON_SOFTKEYS_OPTIONS_BACK;\r
- }\r
-\r
-\r
-\r
-RESOURCE MENU_BAR r_miniapp_menubar // *** Menu bar\r
-{\r
- titles =\r
- {\r
- MENU_TITLE { menu_pane = r_miniapp_menu; txt = "PicoDrive"; }\r
- \r
- };\r
-}\r
-\r
-RESOURCE MENU_PANE r_miniapp_menu // *** Submenu 1\r
-{\r
- items =\r
- {\r
- MENU_ITEM { command = EEikCmdExit; txt = "Close";} \r
- };\r
-}\r
-\r
-RESOURCE ARRAY r_picodrive_keys\r
-{\r
-items=\r
-{\r
- LBUF{txt="Up";},\r
- LBUF{txt="Down";},\r
- LBUF{txt="Left";},\r
- LBUF{txt="Right";},\r
- LBUF{txt="A";},\r
- LBUF{txt="B";},\r
- LBUF{txt="C";},\r
- LBUF{txt="X";},\r
- LBUF{txt="Y";},\r
- LBUF{txt="Z";},\r
- LBUF{txt="Mode";},\r
- LBUF{txt="Start";},\r
- LBUF{txt="Up&Left";},\r
- LBUF{txt="Up&Right";},\r
- LBUF{txt="Down&Right";},\r
- LBUF{txt="Down&Left";},\r
- LBUF{txt="Soft reset";},\r
- LBUF{txt="Pan left";},\r
- LBUF{txt="Pan right";}\r
- };\r
- }\r
-\r
-\r
-\r
-\r
-RESOURCE DIALOG r_pico_file_select_dialog\r
-{ \r
-flags = EGeneralQueryFlags; \r
-buttons = R_AVKON_SOFTKEYS_DONE_CANCEL; \r
-items = \r
-{ \r
-DLG_LINE \r
-{ \r
-type = EAknCtListQueryControl; \r
-id = EListQueryControl; \r
-\r
-control = AVKON_LIST_QUERY_CONTROL \r
-{ \r
-heading = "Files"; \r
-listtype = EAknCtSinglePopupMenuListBox; \r
-listbox = LISTBOX \r
-{ \r
-flags = EAknDialogSelectionList; \r
-height = 3; \r
-width = 1; \r
-}; \r
-}; \r
-} \r
-}; \r
-} \r
-\r
-RESOURCE DIALOG r_pico_add_cheat\r
-{\r
- title="Add cheatcode"; \r
- flags=EEikDialogFlagNoDrag | \r
- EEikDialogFlagCbaButtons | \r
- EEikDialogFlagModeless|EEikDialogFlagWait;\r
- buttons = R_AVKON_SOFTKEYS_OK_CANCEL;\r
- items=\r
- {\r
- DLG_LINE\r
- {\r
- type=EEikCtLabel;\r
- id=0x2002;\r
- itemflags = EEikDlgItemNonFocusing;\r
- control= LABEL\r
-\r
- {\r
- txt = "Enter cheatcode";\r
- \r
- };\r
- },\r
- DLG_LINE\r
- {\r
- itemflags = EEikDlgItemNonFocusing;\r
- id=0x2001;\r
- type=EEikCtLabel;\r
- control= LABEL { \r
- horiz_align=EEikLabelAlignHLeft;\r
- txt = "\nGG: XXXX-XXXX\nPatch: XXXXXX:YYYY"; \r
- };\r
- },\r
- DLG_LINE\r
- {\r
- type=EEikCtEdwin; \r
- id=0x2000;\r
- itemflags = EEikDlgItemOfferAllHotKeys|EEikDlgItemSeparatorAfter;\r
-\r
- control= EDWIN { \r
- maxlength=12; \r
- };\r
- \r
-\r
- }\r
- };\r
-}\r
-\r
-RESOURCE ARRAY r_picodrive_regions\r
-{\r
- items=\r
- {\r
- LBUF{txt="Region: Auto";},\r
- LBUF{txt="Region: Jap NTSC";},\r
- LBUF{txt="Region: Jap PAL";},\r
- LBUF{txt="Region: US NTSC";},\r
- LBUF{txt="Region: EUR PAL";}\r
- };\r
-}\r
+++ /dev/null
-#include <aiftool.rh>\r
-\r
-\r
-RESOURCE AIF_DATA\r
- {\r
- app_uid= 0x101F9B49;\r
- //\r
- hidden=KAppNotHidden;\r
- embeddability=KAppNotEmbeddable;\r
- caption_list=\r
- { \r
- CAPTION { code=ELangEnglish; caption="PicoDrive"; },\r
- CAPTION { code=ELangAmerican; caption="PicoDrive"; }\r
- };\r
- //\r
- num_icons=1;\r
- }\r
-\r
-\r
-\r
+++ /dev/null
-target PicoDrive.exe\r
-TARGETTYPE exe\r
-TARGETPATH sys\bin\r
-SOURCEPATH ..\S60\r
-UID 0x100039ce 0xA00007BE\r
-source picodriveexe.cpp \r
-sourcepath ..\r
-source unzip.c\r
-\r
-SYSTEMINCLUDE \epoc32\include \epoc32\include\libc\r
-systeminclude \epoc32\include\mmf\plugin\r
-\r
-USERINCLUDE ..\pico ..\pico\sound ..\s60 ..\r
-// libraries\r
-library cone.lib EIKCORE.lib MEDIACLIENTAUDIOSTREAM.LIB\r
-library euser.lib apparc.lib\r
-library efsrv.lib estlib.lib fbscli.lib estor.lib eikcoctl.lib\r
-library ws32.lib AVKON.LIB bafl.lib bitgdi.lib gdi.lib eikdlg.lib\r
-\r
-staticlibrary pico.lib \r
-\r
-#if defined(WINS)\r
-staticlibrary a68k.obj\r
-staticlibrary mz80_asm.obj\r
-staticlibrary zlib.lib\r
-#else\r
-staticlibrary cyclone.o \r
-staticlibrary DRZ80.o\r
-staticlibrary draw.o\r
-//staticlibrary blit.o\r
-staticlibrary ym2612_helper.o\r
-staticlibrary zlib.lib\r
-staticlibrary memory.o\r
-staticlibrary draw2.o\r
-#endif\r
-\r
-\r
-sourcepath ..\S60\r
-\r
-DOCUMENT interpolatevideo.inl\r
-DOCUMENT normalvideo.inl\r
-DOCUMENT S60V3Video.inl\r
-START RESOURCE PicoDrive_reg.rss\r
-TARGETPATH \private\10003a3f\apps\r
-END\r
-\r
-START RESOURCE PicoDrive_loc.rss\r
-TARGETPATH \Resource\Apps\r
-LANG SC\r
-END\r
-\r
-SOURCEPATH ..\s60\r
-START RESOURCE PicoDrive.rss\r
-HEADER\r
-TARGETPATH \Resource\Apps\r
-LANG SC\r
-END \r
-\r
-START BITMAP PicoDrive.mbm\r
-TARGETPATH \Resource\Apps\r
-SOURCEPATH ..\s60\r
-// Source Color-depth Source-bitmap-list\r
-// c denotes whether the bitmap is a colour bitmap and the digits represent the\r
-// colour-depth of the bitmap and the bitmap mask respectively\r
-SOURCE c24 PicoS.bmp\r
-SOURCE 8 PicoSMI.bmp\r
-SOURCE c24 PicoL.bmp\r
-SOURCE 8 PicoLMI.bmp\r
-END\r
-\r
-\r
-MACRO S60V3\r
-\r
-EPOCHEAPSIZE 1024000 8192000\r
-\r
-\r
-CAPABILITY NONE\r
+++ /dev/null
-#include <AppInfo.rh>\r
-\r
-// This file localise the applications icons and caption\r
-RESOURCE LOCALISABLE_APP_INFO\r
- {\r
- caption_and_icon =\r
- {\r
- CAPTION_AND_ICON_INFO\r
- {\r
- // The caption text is defined in the rls file\r
- caption = "PicoDrive";\r
- // Icons are used to represent applications in the \r
- // application launcher and application title bar.\r
- // The number_of_icons value identifies how many icons \r
- // that exist in the icon_file.\r
- number_of_icons = 2;\r
- // Using the application icons.\r
- icon_file = "\\Resource\\Apps\\PicoDrive.mbm";\r
- }\r
- };\r
- }\r
-\r
+++ /dev/null
-// All registration files need to #include appinfo.rh. \r
-#include <AppInfo.rh>\r
-\r
-// All registration files must define UID2, which is always \r
-// KUidAppRegistrationResourceFile, and UID3, which is the application's UID.\r
-UID2 KUidAppRegistrationResourceFile\r
-UID3 0xA00007BE // application UID\r
-\r
-// Registration file need to containo an APP_REGISTRATION_INFO resource that\r
-// minimally needs to provide the name of the application binary (using the \r
-// app_file statement). \r
-RESOURCE APP_REGISTRATION_INFO\r
- {\r
- app_file = "PicoDrive"; // filename of application binary (minus extension)\r
- // Specify the location of the localisable icon/caption definition file\r
- localisable_resource_file = "\\Resource\\Apps\\PicoDrive_loc";\r
- }\r
-\r
+++ /dev/null
-#include "PicoDriveAppS60.h"\r
-#include <picodrives60.rsg>\r
-#include <apgcli.h>\r
-#include <eikdll.h>\r
-EXPORT_C CApaApplication* NewApplication()\r
-{\r
- return (new CPicoDrive);\r
-}\r
-\r
-CPicoDrive::CPicoDrive()\r
-{\r
-}\r
-\r
-\r
-CPicoDrive::~CPicoDrive()\r
-{\r
-}\r
-\r
-\r
-CApaDocument* CPicoDrive::CreateDocumentL()\r
- {\r
- return new (ELeave) CPicoDriveDoc(*this);\r
- }\r
-TUid CPicoDrive::AppDllUid() const\r
- {\r
- return TUid::Uid(0x101F9B49);\r
- }\r
-\r
-\r
-CPicoDriveDoc::CPicoDriveDoc(CEikApplication& aApp):CAknDocument(aApp)\r
-{\r
-}\r
-\r
-CPicoDriveDoc::~CPicoDriveDoc()\r
- {\r
- }\r
-\r
-CEikAppUi* CPicoDriveDoc::CreateAppUiL()\r
- {\r
- return new (ELeave) CPicoDriveUi;\r
- }\r
-\r
-\r
-void CPicoDriveUi::HandleForegroundEventL(TBool aForeground)\r
-{\r
- if(aForeground)\r
- {\r
- BringUpEmulatorL(); \r
- }\r
-}\r
-\r
-CPicoDriveUi::CPicoDriveUi()\r
-{\r
-}\r
-\r
-CPicoDriveUi::~CPicoDriveUi()\r
- {\r
- \r
- RemoveFromViewStack(*iView,iView);\r
- DeregisterViewAndRemoveStack(*iView);\r
- delete iView;\r
- if(iWatcher)\r
- {\r
- iThreadWatch.LogonCancel(iWatcher->iStatus);\r
- iWatcher->Cancel();\r
- }\r
- delete iWatcher;\r
-\r
- iThreadWatch.Close();\r
- }\r
-\r
-\r
-void CPicoDriveUi::ConstructL()\r
- {\r
- BaseConstructL();\r
- iView = new(ELeave)CPicoView;\r
- iView->SetMopParent(this);\r
- iView->ConstructL();\r
- RegisterViewAndAddStackL(*iView);\r
- AddToViewStackL(*iView,iView);\r
- SetDefaultViewL(*iView);\r
- TBuf<128> startFile;\r
- startFile = iEikonEnv->EikAppUi()->Application()->AppFullName();\r
- TParse parser;\r
- parser.Set(startFile,NULL,NULL);\r
- \r
- startFile = parser.DriveAndPath(); \r
-#ifndef __WINS__\r
- startFile.Append( _L("PicoDrive.EXE"));\r
-#else\r
- startFile.Append( _L("PicoDrive.DLL"));\r
-#endif\r
- CApaCommandLine* cmdLine=CApaCommandLine::NewLC(startFile);\r
- RApaLsSession lsSession;\r
- lsSession.Connect();\r
- CleanupClosePushL(lsSession);\r
- lsSession.StartApp(*cmdLine,iThreadId);\r
- CleanupStack::PopAndDestroy();//close lsSession\r
- CleanupStack::PopAndDestroy(cmdLine);\r
- User::After(500000);// Let the application start\r
- TApaTaskList taskList(iEikonEnv->WsSession());\r
- TApaTask myTask=taskList.FindApp(TUid::Uid(0x101F9B49));\r
- myTask.SendToBackground();\r
- TApaTask exeTask=taskList.FindByPos(0);\r
- iExeWgId=exeTask.WgId();\r
- if(iThreadWatch.Open(iThreadId)==KErrNone)\r
- {\r
- iWatcher = new (ELeave)CPicoWatcher;\r
- iWatcher->iAppUi=this;\r
- iThreadWatch.Logon(iWatcher->iStatus); \r
- }\r
-}\r
-\r
-\r
-CPicoWatcher::CPicoWatcher():CActive(EPriorityStandard)\r
-{\r
- CActiveScheduler::Add(this);\r
- iStatus=KRequestPending;\r
- SetActive();\r
-}\r
-\r
-CPicoWatcher::~CPicoWatcher()\r
-{\r
-}\r
-void CPicoWatcher::DoCancel()\r
-{\r
-}\r
-\r
-void CPicoWatcher::RunL()\r
-{\r
- iAppUi->HandleCommandL(EEikCmdExit);\r
-}\r
-\r
-void CPicoDriveUi::BringUpEmulatorL()\r
-{\r
- RThread thread;\r
- if(thread.Open(iThreadId)==KErrNone)\r
- {\r
- thread.Close();\r
- TApaTask apaTask(iEikonEnv->WsSession());\r
- apaTask.SetWgId(iExeWgId);\r
- apaTask.BringToForeground();\r
- }\r
- else\r
- {\r
- iExeWgId=-1;\r
- }\r
-}\r
-\r
-\r
-\r
-void CPicoDriveUi::HandleCommandL(TInt aCommand)\r
-{\r
- \r
- switch(aCommand)\r
- {\r
- case EEikCmdExit:\r
- {\r
- RThread thread;\r
- if(thread.Open(iThreadId)==KErrNone)\r
- {\r
- thread.Terminate(0);\r
- thread.Close();\r
- }\r
- Exit();\r
- } \r
- break;\r
- \r
- }\r
-}\r
-\r
-GLDEF_C TInt E32Dll(TDllReason)\r
-{\r
- return KErrNone;\r
-}\r
-\r
-\r
-\r
+++ /dev/null
-#ifndef picodriveapps60h\r
-#define picodriveapps60h\r
-\r
-#include <aknapp.h>\r
-#include <eikapp.h>\r
-#include <e32base.h>\r
-#include <coecntrl.h>\r
-#include <eikenv.h>\r
-#include <coeview.h>\r
-#include <eikappui.h>\r
-class CPicoView:public MCoeView,public CCoeControl\r
-{\r
-public:\r
- CPicoView() {};\r
- ~CPicoView(){};\r
- void ConstructL(){CreateWindowL();SetRect(iEikonEnv->EikAppUi()->ClientRect());ActivateL();SetBlank();};\r
- void ViewDeactivated(){MakeVisible(EFalse);};\r
- void ViewActivatedL(const TVwsViewId& /*aPrevViewId*/,TUid /*aCustomMessageId*/,const TDesC8& /*aCustomMessage*/)\r
- {\r
- MakeVisible(ETrue);\r
- }\r
- TVwsViewId ViewId() const\r
- {\r
- TVwsViewId viewId(TUid::Uid(0x101F9B49),TUid::Uid(0x101010));\r
- return viewId;\r
- }\r
-};\r
-\r
-class CPicoDrive:public CEikApplication\r
-{\r
-public:\r
- CPicoDrive();\r
- ~CPicoDrive();\r
- CApaDocument* CreateDocumentL();\r
- TUid AppDllUid() const;\r
-};\r
-\r
-\r
-#include <AKNdoc.h>\r
-\r
-class CPicoDriveDoc:public CAknDocument\r
-{\r
-public:\r
- ~CPicoDriveDoc();\r
- CEikAppUi* CreateAppUiL();\r
- void ConstructL();\r
- CPicoDriveDoc(CEikApplication& aApplicaiton);\r
-};\r
-\r
-#include <aknappui.h>\r
-class CPicoDriveUi;\r
-class CPicoWatcher:public CActive\r
-{\r
-public:\r
- CPicoWatcher();\r
- ~CPicoWatcher();\r
- void DoCancel();\r
- void RunL();\r
- CPicoDriveUi* iAppUi;\r
-};\r
-\r
-class CPicoDriveUi:public CAknAppUi\r
-{\r
-public:\r
- CPicoDriveUi();\r
- ~CPicoDriveUi();\r
- void ConstructL();\r
- void HandleCommandL(TInt aCommand);\r
- void HandleForegroundEventL(TBool aForeground);\r
- void BringUpEmulatorL();\r
-private:\r
- CPicoView* iView;\r
- TThreadId iThreadId;\r
- TInt iExeWgId;\r
- RThread iThreadWatch;\r
- CPicoWatcher* iWatcher;\r
-};\r
-#endif
\ No newline at end of file
+++ /dev/null
-@ECHO OFF\r
-\r
-REM Bldmake-generated batch file - ABLD.BAT\r
-REM ** DO NOT EDIT **\r
-\r
-perl -S ABLD.PL "\picodrive\s60\s60v3\\" %1 %2 %3 %4 %5 %6 %7 %8 %9\r
-if errorlevel==1 goto CheckPerl\r
-goto End\r
-\r
-:CheckPerl\r
-perl -v >NUL\r
-if errorlevel==1 echo Is Perl, version 5.003_07 or later, installed?\r
-goto End\r
-\r
-:End\r
+++ /dev/null
-PRJ_PLATFORMS\r
-\r
-GCCE winscw\r
-\r
-\r
-PRJ_MMPFILES\r
-..\pico.mmp BUILD_AS_ARM\r
-..\picodriveS60V3.mmp BUILD_AS_ARM\r
-\r
-\r
-\r
-\r
+++ /dev/null
-static int EmulateScanFull16(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned short *pd=NULL;\r
- unsigned short *pdSrc1 = NULL;\r
- unsigned short *pdSrc2 = NULL;\r
- int screenScan;\r
-\r
- int index = 0;\r
- int xpitch=0;\r
- TInt retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- screenScan = gLineTable[scan];\r
- \r
- if ((int)screenScan< 0) return 0; // Out of range\r
- if ((int)screenScan>=Targ.view.iBr.iY) return 0; // Out of range\r
- \r
- pd=(unsigned short*)(Targ.screen+screenScan*2+Targ.screen_offset);\r
- pdSrc1 = pd;\r
- \r
- xpitch=-(Targ.scanline_length>>1);\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320;\r
- do\r
- {\r
- if(gColumnStepTable[index]>1)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- pd+=xpitch;\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1); \r
- index++;\r
- ps++;\r
- }\r
- else if(gColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- index++;\r
- ps++; \r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd+=xpitch;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- \r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- if(gNarrowColumnStepTable[index]>1)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- pd+=xpitch;\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1); \r
- index++;\r
- }\r
- else if(gNarrowColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- ps++;\r
- index++;\r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd+=xpitch; \r
- }\r
- while (ps<end); \r
- }\r
-\r
- if(scan>0 && screenScan != gLineTable[scan-1]+1)\r
- { \r
- pdSrc2 = pdSrc1-2;\r
- pd = pdSrc1-1;\r
-\r
- for(TInt loop=0;loop<Targ.view.iBr.iY;loop++)\r
- {\r
- *pd=((*pdSrc1+*pdSrc2)>>1);\r
- pd+=xpitch;\r
- pdSrc1+=xpitch;\r
- pdSrc2+=xpitch;\r
- }\r
- \r
- }\r
-\r
- return retValue;\r
-}\r
-\r
-static int EmulateScanFullRight16(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned short *pd=NULL;\r
- unsigned short *pdSrc1 = NULL;\r
- unsigned short *pdSrc2 = NULL;\r
- int screenScan;\r
- int xpitch=0;\r
- int retValue = 0;\r
- int index = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- screenScan = gLineTable[scan];\r
-\r
- if ((int)screenScan< 0) return 0; // Out of range\r
- if ((int)screenScan>=Targ.view.iBr.iY) return 0; // Out of range\r
- \r
- pd=(unsigned short*)(Targ.screen+Targ.scanline_length-screenScan*2);\r
- pdSrc1 = pd;\r
- \r
- xpitch=+(Targ.scanline_length>>1);\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320;\r
- do\r
- {\r
- if(gColumnStepTable[index]>1)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- pd+=xpitch;\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1); \r
- index++;\r
- ps++;\r
- }\r
- else if(gColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- index++;\r
- ps++; \r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd+=xpitch;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- \r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- if(gNarrowColumnStepTable[index]>1)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- pd+=xpitch;\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1); \r
- index++;\r
- }\r
- else if(gNarrowColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- ps++;\r
- index++;\r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd+=xpitch; \r
- }\r
- while (ps<end); \r
- }\r
-\r
- if(scan>0 && screenScan != gLineTable[scan-1]+1)\r
- { \r
- pdSrc2 = pdSrc1+2;\r
- pd = pdSrc1+1;\r
-\r
- for(TInt loop=0;loop<Targ.view.iBr.iY;loop++)\r
- {\r
- *pd=((*pdSrc1+*pdSrc2)>>1);\r
- pd+=xpitch;\r
- pdSrc1+=xpitch;\r
- pdSrc2+=xpitch;\r
- }\r
- \r
- }\r
- \r
- return retValue;\r
-}\r
-\r
-\r
-\r
-static int EmulateScan16(unsigned int scan,unsigned short *data)\r
-{\r
- // int len=0;\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned short *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- int index = 0;\r
-\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
- \r
- if ((int)scan< 0) return 0; // Out of range\r
- if ((int)scan>=Targ.view.iBr.iY) return 0; // Out of range\r
- \r
- pd=(unsigned short*)(Targ.screen+scan*Targ.scanline_length);\r
- \r
- xpitch=2;\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320;\r
- do\r
- {\r
- if(gColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- ps++;\r
- \r
- index++;\r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd++;\r
- \r
- }\r
- while (ps<end);\r
- } \r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- if(gNarrowColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- ps++;\r
- index++;\r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd++; \r
- }\r
- while (ps<end);\r
- \r
- }\r
- \r
- return retValue;\r
-}\r
-\r
-static int EmulateStretchScan16(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned short *pd=NULL;\r
- unsigned short *pdSrc1 = NULL;\r
- unsigned short *pdSrc2 = NULL;\r
-\r
- int retValue = 0;\r
- int index = 0;\r
- int screenScan;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- screenScan = gLineTable[scan];\r
-\r
- if ((int)screenScan<0) \r
- return 0; // Out of range\r
- if ((int)screenScan>=Targ.view.iBr.iY) \r
- return 0; // Out of range\r
- \r
- pd=(unsigned short*)(Targ.screen+screenScan*Targ.scanline_length);\r
- pdSrc1 = pd;\r
-\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320; \r
- do\r
- {\r
- if(gColumnStepTable[index]>1)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- pd++;\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1); \r
- index++;\r
- ps++;\r
- }\r
- else if(gColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- index++;\r
- ps++; \r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd++;\r
- }\r
- while (ps<end);\r
-\r
- \r
- \r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- if(gNarrowColumnStepTable[index]>1)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- pd++;\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1); \r
- index++;\r
- }\r
- else if(gNarrowColumnStepTable[index]>0)\r
- {\r
- *pd = gColorMapTab[*ps];\r
- ps++;\r
- index++;\r
- }\r
- else\r
- {\r
- *pd = ((gColorMapTab[*ps]+gColorMapTab[*(ps+1)])>>1);\r
- ps+=2;\r
- index+=2;\r
- }\r
- pd++; \r
- }\r
- while (ps<end); \r
- }\r
-\r
- if(scan>0 && screenScan != gLineTable[scan-1]+1)\r
- { \r
- pdSrc2 = pdSrc1-Targ.scanline_length;\r
- pd = pdSrc1-(Targ.scanline_length>>1);\r
-\r
- for(TInt loop=0;loop<Targ.view.iBr.iX;loop++)\r
- {\r
- *pd=((*pdSrc1+*pdSrc2)>>1);\r
- pd++;\r
- pdSrc1++;\r
- pdSrc2++;\r
- }\r
- \r
- }\r
- \r
- return retValue;\r
-}\r
+++ /dev/null
-PRJ_PLATFORMS\r
-\r
-WINS ARMI arm4 thumb winscw\r
-\r
-\r
-PRJ_MMPFILES\r
-.\pico.mmp\r
-.\picodriveS60.mmp\r
-.\PicoDriveAppS60.mmp\r
-\r
-\r
-\r
+++ /dev/null
-createsis sign -key key-gen1.key -cert cert-gen1.cer -pass pico picodrives603rd.sis PicoS603rd.sis
\ No newline at end of file
+++ /dev/null
------BEGIN CERTIFICATE-----
-MIIDRzCCAwWgAwIBAgIBADALBgcqhkjOOAQDBQAwgYgxEjAQBgNVBAoTCVBpY29E
-cml2ZTFyMHAGA1UEAxNpUGljb0RyaXZlUzYwIDNyZCBFZGl0aW9uIGI2YjM0MGEw
-NDUwZWZiOGVhMWU5Nzg0ZjhlMTc3NDkzYWUxZTk3M2I2YzFlZTQ4YzdjZTc5NTRm
-YTE1NzMzMjNkNzZjNWJjOThmM2QxYWIzMB4XDTA2MDczMDE0MjQzNFoXDTA3MDcz
-MDE0MjQzNFowgYgxEjAQBgNVBAoTCVBpY29Ecml2ZTFyMHAGA1UEAxNpUGljb0Ry
-aXZlUzYwIDNyZCBFZGl0aW9uIGI2YjM0MGEwNDUwZWZiOGVhMWU5Nzg0ZjhlMTc3
-NDkzYWUxZTk3M2I2YzFlZTQ4YzdjZTc5NTRmYTE1NzMzMjNkNzZjNWJjOThmM2Qx
-YWIzMIIBtjCCASsGByqGSM44BAEwggEeAoGBAKFNfGnxxT6j7q2lPQt1MnJckjyY
-hYC6obfgf6gE/3XV0zNFU5TZlQkZph78m4Zp4GtK5oW/spVyCLfnwgs4UnH0E3tf
-MOG1wXDhaHLjgAENiD4iQbumqTN5ri0wXcqnJC5rigk//TR3mvZ7JvjDeaMXK+Xu
-gE/1uF8JoxAQHC/zAhUAl8PPPiuqVpZ6bWAwDeyBmHsKOOUCgYA6cPQiswwNVZWZ
-mF5DALTAm6/zrPUkmBbe8Vk2jW37lVpIoLCJofNskNpshe4ZTTHtGOgzhjaCOsgL
-juf2O0QqhZG8Wwhzo2fNosbZWxonSmmg1JIKn/32oK6FjaK3VAWno+lgGK0GhTC6
-Or+HqvvLdtaBeXHqrZWBXfvbYU8XAAOBhAACgYBVTFzZLgkclbXWAsszLExHwCYm
-p3Jw10VfNBJxiYq5JxP+jifLLwt9nyt65h4N/y3AyYxL/f11mU7XUGsTU7x4U3NF
-9WStFmpBOlJ1MrH09v2L1yi/D8gA7wfRgerErIadurc3ZcfqHyiafaoABzGczttq
-vE1o/BRWm+GmciQjVjALBgcqhkjOOAQDBQADLwAwLAIUMc/hS91kPFwtmUO7j4Dp
-3deMtZQCFGigHND6/mfaWOyfip4mQe2s4l4T
------END CERTIFICATE-----
+++ /dev/null
------BEGIN CERTIFICATE-----
-MIIDSTCCAwagAwIBAgIBADALBgcqhkjOOAQDBQAwgYgxEjAQBgNVBAoTCVBpY29E
-cml2ZTFyMHAGA1UEAxNpUGljb0RyaXZlUzYwIDNyZCBFZGl0aW9uIDY3MzZkOWY0
-NjZjMDNmY2Y3MmE2ZDhkYTgxYWFlZjEyYWFlOTc3NDExZmEyZDM0ZDY2MDE5Zjk1
-NmRiMzA2NmUyNTkyZjE0NTNlMjBhNDc2MB4XDTA2MDgwMjIyMjI0MFoXDTA3MDgw
-MjIyMjI0MFowgYgxEjAQBgNVBAoTCVBpY29Ecml2ZTFyMHAGA1UEAxNpUGljb0Ry
-aXZlUzYwIDNyZCBFZGl0aW9uIDY3MzZkOWY0NjZjMDNmY2Y3MmE2ZDhkYTgxYWFl
-ZjEyYWFlOTc3NDExZmEyZDM0ZDY2MDE5Zjk1NmRiMzA2NmUyNTkyZjE0NTNlMjBh
-NDc2MIIBtzCCASwGByqGSM44BAEwggEfAoGBALRUuJYcdrh5PdDdpsN2t4mBhNy2
-Vy+GEF2LR8KzHXB27KdAYvqhQmpCJ6gMyC3zvg6Gw1s0lyO/f+HI563qqUYFgxbx
-ka4F2lWxeQOnw/bB2NhG/WGqVPHsARyg8+RI1cfVwHo67Fj91aftE0gTUzw/ZiCT
-QYrLxvuaatiyrKP9AhUAlk4NyEkcgRkZeyiae/QaIq9VScECgYEArw/5SQAoluMg
-8y0VqTZp23e8zsBN46VwYOq4kBY4b1Evl6UoX20hcWtanqvozlkLKEVP/BbCHut7
-YUgy/zPtAc4hv/biUd1uEIsCf/4NvVBP5NBHal0xzcJQQDMiA0nha3igOQ4v2ItT
-Oqsts0HDzxK3OxC3XuirRiOlLTSywKADgYQAAoGACbtcf0HKOT2ZD5n+KUJDOZS2
-ipJsSQUjVdJqgcZo+M6+Hg9KpSIMTexr3CW3JtvwNZx4hh5EbtyuYiYnjmTX611L
-258Ytr1pw93F7LztO/H0GOCU977Y7s/UZtoF/XJiGKKuYGLEiBIzBWUEchvDgpIB
-J0D1lZa5JLfrt6i68pkwCwYHKoZIzjgEAwUAAzAAMC0CFBseBBEe6eFXOP0Oo1T1
-sdN2bzfyAhUAilFr5j3mPd3p0Gs+hZe+33NzSdg=
------END CERTIFICATE-----
+++ /dev/null
-createsis sign -key key-gen1.key -cert cert-gen1.cer -pass pico picodrives603rd.sis PicoS603rd.sis
\ No newline at end of file
+++ /dev/null
-Welcome to the S60 version\r
-of Picodrive!\r
-\r
-Credits\r
--------\r
-This work is mainly based on\r
-Picodrive by Dave,\r
-(www.finalburn.com)\r
-with added sound support and other improvements by Notaz \r
-(http://notaz.atspace.com).\r
-\r
-ARM asm Z80 core is provided by DrZ80 by Reezy\r
-(http://reesy.gp32x.de/)\r
-and YM2612 and SN76489 support are provided by the M.A.M.E project\r
-(http://www.mame.net/).\r
-\r
-See credits within Picodrive for more information.\r
-\r
-Instructions\r
-------------\r
-Picodrive S60 is a Megadrive/ Genesis emulator which enables you to play old games on your S60 phone.\r
-\r
-When its started you are presented with a main menu.\r
-\r
-Use arrows to navigate up and down in the menu and use left softkey or the middle button to select an option\r
-\r
-* Load ROM\r
-Displays a simple built in filebrowser. Displays the last folder you browsed,and default this is top level, with a drive listine (E: is your memory card)\r
-\r
-Use the left soft key (right softkey will cancel) and then navigate until you are in the folder with your rom files.\r
-Use the left softkey to select a file, and emulation will comence as soon as the rom has been loaded.\r
-\r
-Supported data types are either SMD,BIN or a ZIP with a single SMD or BIN file inside.\r
-\r
-* Load state\r
-Only working when a rom has been loaded, used to load a saved game state for the currently loaded rom. Emulation will resume automatically when the state has been loaded.\r
-\r
-* Save state\r
-Only working when a rom has been loaded. Saves the current state of a rom.\r
-\r
-* Configure controls\r
-Lets you configure the controls to use for game play.\r
-Only one control at port 1 is supported. It might be either a 3 button or 6 button joypad.\r
-Select using the confirm/left softkey and return to the main menu using the 'C' key.\r
-Default is \r
-3 button pad.\r
-Up - Joystick up\r
-Down - Joystick down\r
-Left - Joystick left\r
-Right - Joystick right\r
- A - Left soft key\r
- B - Middle/confirm key\r
- C - Right soft key\r
- X - Not configured\r
- Y - Not configured\r
- Z - Not configured\r
-Start - '0' key\r
-Up&Left - Not configured\r
-Up&Right - Not configured\r
-Down&Right - Not configured\r
-Down&Left - Not configured\r
-\r
-'C' key is used to get back to the main menu when running the emulation and should not be used for anything else.\r
-\r
-3 button pad/6 button pad - Selects to toggle between the two pad types\r
-\r
-Configure keys - Select this to redefine the key bindings\r
-Press the key you want to assign to the requested action. \r
-You can assign the same key to the same action, and is good if you dont need the 8 way controls.\r
-\r
-* Configure screen\r
-Lets you configure the screen mode and frameskip.\r
-Use left softkey or confirm key to select mode. After adjust interpolate or frameskip, select a screen mode to exit the menu\r
-\r
-Portrait is a scaled mode, to 176x168 (default)\r
-Landscape modes are a portrait mode which scales down to 208x168\r
-Portrait stretched is a scaled modenot in aspect, and scales to 176x208\r
-\r
-Interpolate on means that a scanline is interpolated to a smoother look, but this also requires more cpu.\r
-(default on)\r
-\r
-Frameskip lets you decide if you want to set your own constant frameskip or let the action decide\r
-(default is auto)\r
-\r
-\r
-* Configure sound\r
-Lets you configure sound settings. \r
-Use confirm or left soft key to change a value and use the 'c' key to exit to the main menu\r
-\r
-Z80 - Used in many games to drive the sound Will cost a penalty in shown FPS, but can increase compability if enabled even if sound is turned off.\r
-(default is on)\r
-YM2612 - FM OPL sound Enable for FM sound\r
-(default is on)\r
-SN76496 - TI Sound chip - Enable for sound\r
-(default is on)\r
-Volume - Select to change volume \r
-(Default is 60%)\r
-Sample rate - Select to toggle between 8Khz,11Khz,16Khz and 22Khz. If you select a rate which is not compatible with your phone it will be reset back to 8Khz.\r
-(default is 8KHZ)\r
-\r
-* Reset\r
-Will reset the current rom if loaded, and resume execution from the start\r
-\r
-* Credits\r
-Displays a full credits list for the Picodrive project\r
-\r
-* Exit\r
-Exit Picodrive\r
-\r
-Last line will display the name of the rom currently loaded\r
-\r
-Please enjoy and have fun.
\ No newline at end of file
+++ /dev/null
-static int EmulateScanFull16_176Interpolate(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- TInt retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
- \r
- if ((int)scan< 0) return 0; // Out of range\r
- if ((int)scan>=176) return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+scan*2+Targ.screen_offset+8;\r
- \r
- xpitch=-Targ.scanline_length;\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 14 pixels into 9\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[1]]+gColorMapTab[ps[2]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[4]]+gColorMapTab[ps[5]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[7]]+gColorMapTab[ps[8]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[9]]+gColorMapTab[ps[10]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[11]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[12]]+gColorMapTab[ps[13]])>>1);pd+=xpitch;\r
- ps+=14;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- \r
- // Reduce 5 pixels into 4\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[2]]+gColorMapTab[ps[3]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- ps+=5;\r
- }\r
- while (ps<end);\r
- }\r
- return retValue;\r
-}\r
-\r
-static int EmulateScanFullRight16_176Interpolate(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
-\r
- if ((int)scan< 0) return 0; // Out of range\r
- if ((int)scan>=176) return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+Targ.scanline_length-scan*2-8;\r
- \r
- xpitch=+Targ.scanline_length;\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 14 pixels into 9\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[1]]+gColorMapTab[ps[2]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[4]]+gColorMapTab[ps[5]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[7]]+gColorMapTab[ps[8]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[9]]+gColorMapTab[ps[10]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[11]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[12]]+gColorMapTab[ps[13]])>>1);pd+=xpitch;\r
- ps+=14;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 5 pixels into 4\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[2]]+gColorMapTab[ps[3]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- ps+=5;\r
- }\r
- while (ps<end);\r
- }\r
- \r
- return retValue;\r
-}\r
-\r
-\r
-\r
-static int EmulateScan16_176Interpolate(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
- \r
- if ((int)scan< 0) return 0; // Out of range\r
- if ((int)scan>=176) return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+scan*Targ.scanline_length;\r
- \r
- xpitch=2;\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 9 pixels into 5\r
- do\r
- {\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[0]]+gColorMapTab[ps[1]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[2]]+gColorMapTab[ps[3]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[4]]+gColorMapTab[ps[5]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[6]]+gColorMapTab[ps[7]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[8]];pd+=xpitch;\r
- ps+=9;\r
- }\r
- while (ps<end);\r
- } \r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[1]]+gColorMapTab[ps[2]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[4]]+gColorMapTab[ps[5]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[7]]+gColorMapTab[ps[8]])>>1);pd+=xpitch; \r
- *(unsigned short *)pd=gColorMapTab[ps[9]];pd+=xpitch;\r
- ps+=10;\r
- }\r
- while (ps<end); \r
- }\r
- \r
- return retValue;\r
-}\r
-\r
-static int EmulateStretchScan16_176Interpolate(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
-\r
- if ((int)scan<0) \r
- return 0; // Out of range\r
- if ((int)scan>=208) \r
- return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+scan*Targ.scanline_length;\r
- \r
- xpitch=2;\r
- if((Pico.video.reg[12]&1))\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 9 pixels into 5\r
- do\r
- {\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[0]]+gColorMapTab[ps[1]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[2]]+gColorMapTab[ps[3]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[4]]+gColorMapTab[ps[5]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[6]]+gColorMapTab[ps[7]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[8]];pd+=xpitch;\r
- ps+=9;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[1]]+gColorMapTab[ps[2]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[4]]+gColorMapTab[ps[5]])>>1);pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=(unsigned short)((gColorMapTab[ps[7]]+gColorMapTab[ps[8]])>>1);pd+=xpitch; \r
- *(unsigned short *)pd=gColorMapTab[ps[9]];pd+=xpitch;\r
- ps+=10;\r
- }\r
- while (ps<end); \r
- }\r
- \r
- return retValue;\r
-}\r
+++ /dev/null
------BEGIN DSA PRIVATE KEY-----
-Proc-Type: 4,ENCRYPTED
-DEK-Info: DES-EDE3-CBC,DC864EF6667B49B5
-
-oJZfn5zYx3zcNkaWTGEtmTbRB/wBifvWi65aZiexLtWCTmHM/ivllpU2mwtLAoNF
-u4yGun8VJlY0rUwGJeRgi3CiOAztv7ZdsBpAPW3diIqFmjKjC7z/zyGlPis1o9mN
-EilGXwSp5Vri78k2wUf5z9MKIIw73ghdbTYstyfveDqhz1pwdDIz5KGmGXzwzilR
-zt2yKqGvih8jhoulm4QeBzvMC+8H5esgr5AY00pH1nb0hCapJ//9ZEF96pDmsxrj
-GczA1A4x4XcoapxSbr8I9fK6krTQb1Hk5VlGJ9edpqvXEb3v70t9Dmn4nOEYUcIR
-bQR05wQ4VM5UUgR+j4H19rqNvA3PyBVzGxgdqyf0I6mX/b0beUXx66lHWXhxX6Ou
-mxrfoJ2VLwpxLjK50tSb0LKjwlBvCfuYgWVyqbQotQGD25+XhlvRsK/pn6VOZhdp
-VrLK/VfTMV/OH1jtUvTrQkAbXOOVv7ykXqhpf/BvAxzvuThaN6aPzdnmJkVnCGKt
-cilqlUnHus10OshHmSSG72dZAen6Blk4d4pRj70tWc1MrjQSLQmr7e9eXsb66Wlx
-5PACJbz6cuf+/HOOE/II1g==
------END DSA PRIVATE KEY-----
+++ /dev/null
------BEGIN DSA PRIVATE KEY-----
-Proc-Type: 4,ENCRYPTED
-DEK-Info: DES-EDE3-CBC,1A2FBCDEC9FFBC99
-
-6sognJox0C7uNUeZRhjUZIK2tErcdKBVUI24Q+wOCtOisbUxywjWDqra7xqMjgWe
-swt2oAf28+MvEqivI13Ftpe05iqoM8TbVvEz+0s4fe4GWHs9j4OaVjsxIYcIz4IK
-VjcmheoOxkvFyFavwGa/dUPvrGUj++dXz5igOE6+WQhKlio18bbnpjv/iEJyPjFl
-+LJnU757jrRRxUXO3bQAhP5ddE4PFrethDyNQpchJgvlf/8glUTIrafTLGXbohuD
-838pUktXc67mcPQd59CMVe/Uia3q9R0HfIzdzcGlcd9FM3n8iklFqTmqfB2gBuZY
-V39ESxRSJCRozO7QR6yjlxjYTDMe2YAaIcSzdrx35kU1Jxjbm7BpbKZLmCnfsesn
-+Nj0A5HWruoMR5qulScbXtZ+CMZz7fLsdoG7Y6Y7xtyK4pXx33WlPtkkDf2nA8gS
-cYo3/yfx9uECudVLgvGctNmnuR8X+lFUuo/5lEo3u3P62zTaEfFHHzHdyo5y97qV
-JGr6Lt1VIz8lh/iVb5TPXkkJaR0jpaqqZsJiLBho1ULvdAp2duVk5skAnH7EhD/Z
-KAwoHH70fFXV4n5TegiJ4g==
------END DSA PRIVATE KEY-----
+++ /dev/null
-static int EmulateScanFull16_176(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- TInt retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
- \r
- if ((int)scan< 0) return 0; // Out of range\r
- if ((int)scan>=176) return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+scan*2+Targ.screen_offset+8;\r
- \r
- xpitch=-Targ.scanline_length;\r
- if(Pico.video.reg[12]&1)\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 14 pixels into 9\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[7]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[9]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[11]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[12]];pd+=xpitch;\r
- ps+=14;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- \r
- // Reduce 5 pixels into 4\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[2]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- ps+=5;\r
- }\r
- while (ps<end);\r
- }\r
- return retValue;\r
-}\r
-\r
-static int EmulateScanFullRight16_176(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
-\r
- if ((int)scan< 0) return 0; // Out of range\r
- if ((int)scan>=176) return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+Targ.scanline_length-scan*2-8;\r
- \r
- xpitch=+Targ.scanline_length;\r
- if(Pico.video.reg[12]&1)\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 14 pixels into 9\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[7]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[9]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[11]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[12]];pd+=xpitch;\r
- ps+=14;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 5 pixels into 4\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[2]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- ps+=5;\r
- }\r
- while (ps<end);\r
- }\r
- \r
- return retValue;\r
-}\r
-\r
-\r
-\r
-static int EmulateScan16_176(unsigned int scan,unsigned short *data)\r
-{\r
- // int len=0;\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
- \r
- if ((int)scan< 0) return 0; // Out of range\r
- if ((int)scan>=176) return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+scan*Targ.scanline_length;\r
- \r
- xpitch=2;\r
- if(Pico.video.reg[12]&1)\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 9 pixels into 5\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[2]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[8]];pd+=xpitch;\r
- ps+=9;\r
- }\r
- while (ps<end);\r
- } \r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[7]];pd+=xpitch; \r
- *(unsigned short *)pd=gColorMapTab[ps[9]];pd+=xpitch;\r
- ps+=10;\r
- }\r
- while (ps<end); \r
- }\r
- \r
- return retValue;\r
-}\r
-\r
-static int EmulateStretchScan16_176(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
-\r
- if ((int)scan<0) \r
- return 0; // Out of range\r
- if ((int)scan>=208) \r
- return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+scan*Targ.scanline_length;\r
- \r
- xpitch=2;\r
- if(Pico.video.reg[12]&1)\r
- {\r
- ps=data; end=ps+320;\r
- // Reduce 9 pixels into 5\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[2]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[8]];pd+=xpitch;\r
- ps+=9;\r
- }\r
- while (ps<end);\r
- }\r
- else\r
- {\r
- ps=data+32; end=ps+256;\r
- // Reduce 10 pixels into 7\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[7]];pd+=xpitch; \r
- *(unsigned short *)pd=gColorMapTab[ps[9]];pd+=xpitch;\r
- ps+=10;\r
- }\r
- while (ps<end); \r
- }\r
- \r
- return retValue;\r
-}\r
-\r
-\r
-\r
-static int EmulateStretchScan16_320(unsigned int scan,unsigned short *data)\r
-{\r
- unsigned short *ps=NULL,*end=NULL;\r
- unsigned char *pd=NULL;\r
- int xpitch=0;\r
- int retValue = 0;\r
- if(scan<224)\r
- retValue = 1-(gLineTable[scan+1]-gLineTable[scan]);\r
- scan = gLineTable[scan];\r
-\r
- if ((int)scan<0) \r
- return 0; // Out of range\r
- if ((int)scan>=208) \r
- return 0; // Out of range\r
- \r
- pd=Targ.screen+gLineOffsets[scan];//Targ.screen+scan*Targ.scanline_length;\r
- \r
- xpitch=2;\r
- ps=data+gFullOffset; end=ps+176;\r
-/* if(!(Pico.video.reg[12]&1))\r
- {\r
- ps=data+gFullOffset; end=ps+176;\r
- }\r
- else\r
- {\r
- ps=data+32+gFullOffset; end=ps+176;\r
- }*/\r
-\r
- // Draw 8 pixels in a row\r
- do\r
- {\r
- *(unsigned short *)pd=gColorMapTab[ps[0]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[1]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[2]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[3]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[4]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[5]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[6]];pd+=xpitch;\r
- *(unsigned short *)pd=gColorMapTab[ps[7]];pd+=xpitch;\r
- ps+=8;\r
- }\r
- while (ps<end);\r
-\r
- return retValue;\r
-}\r
-\r
-\r
-\r
+++ /dev/null
-# Microsoft Developer Studio Project File - Name="PICO" - Package Owner=<4>\r
-# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
-# ** DO NOT EDIT **\r
-\r
-# TARGTYPE "Win32 (x86) Static Library" 0x0104\r
-\r
-CFG=PICO - Win32 Uni Debug\r
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
-!MESSAGE use the Export Makefile command and run\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "PICO.mak".\r
-!MESSAGE \r
-!MESSAGE You can specify a configuration when running NMAKE\r
-!MESSAGE by defining the macro CFG on the command line. For example:\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "PICO.mak" CFG="PICO - Win32 Uni Debug"\r
-!MESSAGE \r
-!MESSAGE Possible choices for configuration are:\r
-!MESSAGE \r
-!MESSAGE "PICO - Win32 Uni Debug" (based on "Win32 (x86) Static Library")\r
-!MESSAGE "PICO - Win32 Uni Release" (based on "Win32 (x86) Static Library")\r
-!MESSAGE \r
-\r
-# Begin Project\r
-# PROP Scc_ProjName ""\r
-# PROP Scc_LocalPath ""\r
-CPP=cl.exe\r
-MTL=midl.exe\r
-RSC=rc.exe\r
-\r
-!IF "$(CFG)" == "PICO - Win32 Uni Debug"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 1\r
-# PROP BASE Output_Dir ".\Win32_U0"\r
-# PROP BASE Intermediate_Dir ".\Win32_U0"\r
-# PROP Use_MFC 0\r
-# PROP Use_Debug_Libraries 1\r
-# PROP Output_Dir "\s60v1\EPOC32\RELEASE\WINS\UDEB"\r
-# PROP Intermediate_Dir "\s60v1\EPOC32\BUILD\PICODRIVE\S60\PICO\WINS\UDEB"\r
-# ADD CPP /nologo /Zp4 /MDd /W4 /Zi /Od /X /I "\PICODRIVE\PICO" /I "\PICODRIVE\CYCLONE" /I "\s60v1\EPOC32\INCLUDE" /I "\s60v1\EPOC32\INCLUDE\LIBC" /D "__SYMBIAN32__" /D "__VC32__" /D "__WINS__" /D "__AVKON_ELAF__" /D "_USE_MZ80" /D "EMU_A68K" /D "_DEBUG" /D "_UNICODE" /FR /Fd"\s60v1\EPOC32\RELEASE\WINS\UDEB\PICO.PDB" /GF /c\r
-# ADD BASE RSC /l 0x809\r
-# ADD RSC /l 0x809 /d "_DEBUG"\r
-BSC32=bscmake.exe\r
-# ADD BSC32 /nologo\r
-LIB32=link.exe -lib\r
-# ADD BASE LIB32 /machine:IX86\r
-# ADD LIB32 /nologo /subsystem:windows /machine:IX86 /nodefaultlib /out:"\s60v1\EPOC32\RELEASE\WINS\UDEB\PICO.LIB"\r
-\r
-!ELSEIF "$(CFG)" == "PICO - Win32 Uni Release"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 0\r
-# PROP BASE Output_Dir ".\Win32_Un"\r
-# PROP BASE Intermediate_Dir ".\Win32_Un"\r
-# PROP Use_MFC 0\r
-# PROP Use_Debug_Libraries 0\r
-# PROP Output_Dir "\s60v1\EPOC32\RELEASE\WINS\UREL"\r
-# PROP Intermediate_Dir "\s60v1\EPOC32\BUILD\PICODRIVE\S60\PICO\WINS\UREL"\r
-# ADD CPP /nologo /Zp4 /MD /W4 /O1 /Op /X /I "\PICODRIVE\PICO" /I "\PICODRIVE\CYCLONE" /I "\s60v1\EPOC32\INCLUDE" /I "\s60v1\EPOC32\INCLUDE\LIBC" /D "__SYMBIAN32__" /D "__VC32__" /D "__WINS__" /D "__AVKON_ELAF__" /D "_USE_MZ80" /D "EMU_A68K" /D "NDEBUG" /D "_UNICODE" /GF /c\r
-# ADD BASE RSC /l 0x809\r
-# ADD RSC /l 0x809 /d "NDEBUG"\r
-BSC32=bscmake.exe\r
-# ADD BSC32 /nologo\r
-LIB32=link.exe -lib\r
-# ADD BASE LIB32 /machine:IX86\r
-# ADD LIB32 /nologo /subsystem:windows /machine:IX86 /nodefaultlib /out:"\s60v1\EPOC32\RELEASE\WINS\UREL\PICO.LIB"\r
-\r
-!ENDIF \r
-\r
-# Begin Target\r
-\r
-# Name "PICO - Win32 Uni Debug"\r
-# Name "PICO - Win32 Uni Release"\r
-# Begin Group "Source Files"\r
-\r
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Area.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Cart.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Draw.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Draw2.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Ggenie.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Memory.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Misc.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Pico.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Sek.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Utils.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Videoport.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Sn76496.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Sound.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Ym2612.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\S60\Pico.mmp\r
-# PROP Exclude_From_Build 1\r
-# End Source File\r
-# End Group\r
-# Begin Group "Resource Files"\r
-\r
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
-# End Group\r
-# Begin Group "Header Files"\r
-\r
-# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Ggenie.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Sn76496.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Ym2612.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Pico.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Mz80.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Driver.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\SOUND\Sound.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\PICODRIVE\PICO\Picoint.h\r
-# End Source File\r
-# End Group\r
-# End Target\r
-# End Project\r
+++ /dev/null
-// *** Definitions\r
-\r
-TARGET pico.lib\r
-TARGETTYPE lib\r
-SOURCEPATH ..\pico\r
-\r
-source Area.c Cart.c Draw.c Memory.c Misc.c Pico.c Sek.c Utils.c VideoPort.c Draw2.c ggenie.c\r
-// source Draw2.c\r
-SYSTEMINCLUDE \epoc32\include \epoc32\include\libc\r
-USERINCLUDE ..\pico ..\cyclone\r
-\r
-sourcepath ..\pico\sound\r
-source sn76496.c sound.c ym2612.c\r
-#ifdef WINS\r
-MACRO _USE_MZ80\r
-MACRO EMU_A68K\r
-#else\r
-MACRO EMU_C68K\r
-MACRO _USE_DRZ80\r
-MACRO _ASM_DRAW_C\r
-MACRO _ASM_MEMORY_C\r
-MACRO _USE_YM2612_ASM_HELPER\r
-#endif\r
-\r
+++ /dev/null
-\r
-BLD: UDEB\r
-REBUILD : CLEANUDEB UDEB\r
-\r
-include pico.mak\r
-\r
+++ /dev/null
-\r
-BLD: UREL\r
-REBUILD : CLEANUREL UREL\r
-\r
-include pico.mak\r
-\r
+++ /dev/null
-;\r
-; Basic install file for picodriveS60\r
-;\r
-\r
-; Languages\r
-; none - English only by default\r
-\r
-; Installation header\r
-; Only one component name as we only support English\r
-; UID is the app's UID \r
-#{"PicoDriveS60 1st Edition "},( 0x101F9B49 ),0,60,0\r
-(0x101F6F88), 0, 0, 0, {"Series60ProductID"}\r
-; Application file\r
-"\epoc32\release\armi\urel\picodriveS60.app"-"!:\system\apps\picodriveS60\picodriveS60.app"\r
-"\epoc32\release\armi\urel\picodrive.exe"-"!:\system\apps\picodriveS60\picodrive.exe"\r
-"\epoc32\release\armi\urel\picodriveS60.rsc"-"!:\system\apps\picodriveS60\picodriveS60.rsc"\r
-"\epoc32\release\armi\urel\picodriveS60.aif"-"!:\system\apps\picodriveS60\picodriveS60.aif"\r
-""-"c:\system\apps\picodriveS60\picodriveS60.ini",FN\r
-\r
-".\install.txt"-"!:\system\apps\PicodriveS60\install.txt",FILETEXT\r
-; Required files\r
-; None\r
-; Component .sis files\r
-; None\r
-\r
-\r
-
\ No newline at end of file
+++ /dev/null
-;\r
-; Basic install file for picodriveS60\r
-;\r
-\r
-; Languages\r
-; none - English only by default\r
-\r
-; Installation header\r
-; Only one component name as we only support English\r
-; UID is the app's UID \r
-#{"PicoDriveS60 2nd Edition "},( 0x101F9B49 ),0,60,0\r
-(0x101F6F88), 0, 0, 0, {"Series60ProductID"}\r
-; Application file\r
-"\epoc32\release\armi\urel\picodriveS60.app"-"!:\system\apps\picodriveS60\picodriveS60.app"\r
-"\epoc32\release\armi\urel\picodrive.exe"-"!:\system\apps\picodriveS60\picodrive.exe"\r
-"\epoc32\data\z\system\apps\picodrives60\picodriveS60.rsc"-"!:\system\apps\picodriveS60\picodriveS60.rsc"\r
-"\epoc32\data\z\system\apps\picodrives60\picodriveS60.aif"-"!:\system\apps\picodriveS60\picodriveS60.aif"\r
-""-"c:\system\apps\picodriveS60\picodriveS60.ini",FN\r
-".\install.txt"-"!:\system\apps\PicodriveS60\install.txt",FILETEXT\r
-; Required files\r
-; None\r
-; Component .sis files\r
-; None\r
-\r
-\r
-
\ No newline at end of file
+++ /dev/null
-;\r
-; Basic install file for picodriveS60\r
-;\r
-\r
-; Languages\r
-;Language - standard language definitions\r
-&EN\r
-; List of localised vendor names - one per language. At least one must be provided (English [EN]).\r
-; List must correspond to list of languages specified elsewhere in the .pkg\r
-%{"PicoDrive"}\r
-; The non-localised, globally unique vendor name (mandatory)\r
-:"PicoDrive"\r
-\r
-; Installation header\r
-; Only one component name as we only support English\r
-; UID is the app's UID \r
-#{"PicoDriveS60 3rd Edition "},( 0xA00007BE ),0,50,0\r
-;Supports Series 60 v 3.0\r
-[0x101F7961], 0, 0, 0, {"Series60ProductID"}\r
-; Application file\r
-"\epoc32\release\gcce\urel\picodrive.exe"-"!:\sys\bin\picodrive.exe"\r
-"\epoc32\data\z\resource\apps\picodrive.rsc"-"!:\resource\apps\picodrive.rsc"\r
-"\epoc32\data\z\resource\apps\picodrive.mbm"-"!:\resource\apps\picodrive.mbm"\r
-"\epoc32\data\z\resource\apps\picodrive_loc.rsc"-"!:\resource\apps\picodrive_loc.rsc"\r
-"\epoc32\data\z\private\10003a3f\apps\picodrive_reg.rsc"-"!:\private\10003a3f\import\apps\picodrive_reg.rsc"\r
-\r
-""-"c:\private\A00007BE\picodriveS60.ini",FN\r
-".\install.txt"-"!:\resource\apps\picodrive_install.txt",FILETEXT\r
-; Required files\r
-; None\r
-; Component .sis files\r
-; None\r
-\r
-\r
-
\ No newline at end of file
+++ /dev/null
-# Microsoft Developer Studio Project File - Name="PicoDrive" - Package Owner=<4>\r
-# Microsoft Developer Studio Generated Build File, Format Version 6.00\r
-# ** DO NOT EDIT **\r
-\r
-# TARGTYPE "Win32 (x86) External Target" 0x0106\r
-\r
-CFG=PicoDrive - Win32 Debug\r
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,\r
-!MESSAGE use the Export Makefile command and run\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "PicoDrive.mak".\r
-!MESSAGE \r
-!MESSAGE You can specify a configuration when running NMAKE\r
-!MESSAGE by defining the macro CFG on the command line. For example:\r
-!MESSAGE \r
-!MESSAGE NMAKE /f "PicoDrive.mak" CFG="PicoDrive - Win32 Debug"\r
-!MESSAGE \r
-!MESSAGE Possible choices for configuration are:\r
-!MESSAGE \r
-!MESSAGE "PicoDrive - Win32 Release" (based on "Win32 (x86) External Target")\r
-!MESSAGE "PicoDrive - Win32 Debug" (based on "Win32 (x86) External Target")\r
-!MESSAGE \r
-\r
-# Begin Project\r
-# PROP AllowPerConfigDependencies 0\r
-# PROP Scc_ProjName ""\r
-# PROP Scc_LocalPath ""\r
-\r
-!IF "$(CFG)" == "PicoDrive - Win32 Debug"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 1\r
-# PROP BASE Output_Dir ".\Debug"\r
-# PROP BASE Intermediate_Dir ".\Debug"\r
-# PROP BASE Cmd_Line "NMAKE /f PicoDrive.mak "\r
-# PROP BASE Rebuild_Opt "/a"\r
-# PROP BASE Target_File "PicoDrive.exe"\r
-# PROP BASE Bsc_Name "PicoDrive.bsc"\r
-# PROP BASE Target_Dir ""\r
-# PROP Use_MFC\r
-# PROP Use_Debug_Libraries 1\r
-# PROP Output_Dir "\S60V3\EPOC32\RELEASE\WINSCW\UDEB"\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\UDEB"\r
-# PROP Cmd_Line ""\S60V3\epoc32\tools\MAKE.exe" -r -f picodrives60v3_UDEB.mak "\r
-# PROP Rebuild_Opt "REBUILD"\r
-# PROP Target_File "PicoDrive.exe"\r
-# PROP Bsc_Name ""\r
-# PROP Target_Dir ""\r
-\r
-!ELSEIF "$(CFG)" == "PicoDrive - Win32 Release"\r
-\r
-# PROP BASE Use_MFC 0\r
-# PROP BASE Use_Debug_Libraries 0\r
-# PROP BASE Output_Dir ".\Release"\r
-# PROP BASE Intermediate_Dir ".\Release"\r
-# PROP BASE Cmd_Line "NMAKE /f PicoDrive.mak "\r
-# PROP BASE Rebuild_Opt "/a"\r
-# PROP BASE Target_File "PicoDrive.exe"\r
-# PROP BASE Bsc_Name "PicoDrive.bsc"\r
-# PROP BASE Target_Dir ""\r
-# PROP Use_MFC\r
-# PROP Use_Debug_Libraries 0\r
-# PROP Output_Dir "\S60V3\EPOC32\RELEASE\WINSCW\UREL"\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\UREL"\r
-# PROP Cmd_Line ""\S60V3\epoc32\tools\MAKE.exe" -r -f picodrives60v3_UREL.mak "\r
-# PROP Rebuild_Opt "REBUILD"\r
-# PROP Target_File "PicoDrive.exe"\r
-# PROP Bsc_Name "PicoDrive.bsc"\r
-# PROP Target_Dir ""\r
-\r
-\r
-!ENDIF\r
-\r
-# Begin Target\r
-\r
-# Name "PicoDrive - Win32 Debug"\r
-# Name "PicoDrive - Win32 Release"\r
-# Begin Group "Source Files"\r
-\r
-# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\S60\Picodrive_reg.rss\r
-USERDEP__PicoDrive_reg="\S60V3\EPOC32\include\AppInfo.rh" "\S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh" \r
-!IF "$(CFG)" == "PicoDrive - Win32 Debug"\r
-\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW"\r
-# Begin Custom Build - Building resources from Picodrive_reg.rss\r
-InputPath=\picodrive\S60\Picodrive_reg.rss\r
-\r
-BuildCmds= \\r
- nmake -nologo -f "\picodrive\s60\picodrives60v3.SUP.MAKE"\\r
- "\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\private\10003a3f\apps\PicoDrive_reg.r"\r
-\r
-"\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\private\10003a3f\apps\PicoDrive_reg.rSC.dummy" : $(SOURCE) "$(INTDIR)"\\r
- "$(OUTDIR)"\r
- $(BuildCmds)\r
-# End Custom Build\r
-\r
-!ELSEIF "$(CFG)" == "PicoDrive - Win32 Release"\r
-\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW"\r
-# Begin Custom Build - Building resources from Picodrive_reg.rss\r
-InputPath=\picodrive\S60\Picodrive_reg.rss\r
-\r
-BuildCmds= \\r
- nmake -nologo -f "\picodrive\s60\picodrives60v3.SUP.MAKE"\\r
- "\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\private\10003a3f\apps\PicoDrive_reg.r"\r
-\r
-"\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\private\10003a3f\apps\PicoDrive_reg.rSC.dummy" : $(SOURCE) "$(INTDIR)"\\r
- "$(OUTDIR)"\r
- $(BuildCmds)\r
-# End Custom Build\r
-\r
-!ENDIF \r
-\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\S60\Picodrive_loc.rss\r
-USERDEP__PicoDrive_loc="\S60V3\EPOC32\include\AppInfo.rh" "\S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh" \r
-!IF "$(CFG)" == "PicoDrive - Win32 Debug"\r
-\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW"\r
-# Begin Custom Build - Building resources from Picodrive_loc.rss\r
-InputPath=\picodrive\S60\Picodrive_loc.rss\r
-\r
-BuildCmds= \\r
- nmake -nologo -f "\picodrive\s60\picodrives60v3.SUP.MAKE"\\r
- "\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\Resource\Apps\PicoDrive_loc.r"\r
-\r
-"\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\Resource\Apps\PicoDrive_loc.rSC.dummy" : $(SOURCE) "$(INTDIR)"\\r
- "$(OUTDIR)"\r
- $(BuildCmds)\r
-# End Custom Build\r
-\r
-!ELSEIF "$(CFG)" == "PicoDrive - Win32 Release"\r
-\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW"\r
-# Begin Custom Build - Building resources from Picodrive_loc.rss\r
-InputPath=\picodrive\S60\Picodrive_loc.rss\r
-\r
-BuildCmds= \\r
- nmake -nologo -f "\picodrive\s60\picodrives60v3.SUP.MAKE"\\r
- "\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\Resource\Apps\PicoDrive_loc.r"\r
-\r
-"\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\Resource\Apps\PicoDrive_loc.rSC.dummy" : $(SOURCE) "$(INTDIR)"\\r
- "$(OUTDIR)"\r
- $(BuildCmds)\r
-# End Custom Build\r
-\r
-!ENDIF \r
-\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\s60\Picodrive.rss\r
-USERDEP__PicoDrive="\S60V3\EPOC32\include\BADEF.RH" "\S60V3\EPOC32\include\BAERRRSVR.RH" "\S60V3\EPOC32\include\aknfontcategory.hrh" "\S60V3\EPOC32\include\aknfontidoffsets.hrh" "\S60V3\EPOC32\include\avkon.hrh" "\S60V3\EPOC32\include\avkon.rh" "\S60V3\EPOC32\include\avkon.rsg" "\S60V3\EPOC32\include\eikcdlg.rsg" "\S60V3\EPOC32\include\eikcoctl.rsg" "\S60V3\EPOC32\include\eikcolor.hrh" "\S60V3\EPOC32\include\eikcore.rsg" "\S60V3\EPOC32\include\eikctl.rsg" "\S60V3\EPOC32\include\eikon.hrh" "\S60V3\EPOC32\include\eikon.rh" "\S60V3\EPOC32\include\eikon.rsg" "\S60V3\EPOC32\include\gulftflg.hrh" "\S60V3\EPOC32\include\lafpublc.hrh" "\S60V3\EPOC32\include\uikon.hrh" "\S60V3\EPOC32\include\uikon.rh" "\S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh" \r
-!IF "$(CFG)" == "PicoDrive - Win32 Debug"\r
-\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW"\r
-# Begin Custom Build - Building resources from Picodrive.rss\r
-InputPath=\picodrive\s60\Picodrive.rss\r
-\r
-BuildCmds= \\r
- nmake -nologo -f "\picodrive\s60\picodrives60v3.SUP.MAKE"\\r
- "\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\Resource\Apps\PicoDrive.r"\r
-\r
-"\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\Resource\Apps\PicoDrive.rSC.dummy" : $(SOURCE) "$(INTDIR)"\\r
- "$(OUTDIR)"\r
- $(BuildCmds)\r
-# End Custom Build\r
-\r
-!ELSEIF "$(CFG)" == "PicoDrive - Win32 Release"\r
-\r
-# PROP Intermediate_Dir "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW"\r
-# Begin Custom Build - Building resources from Picodrive.rss\r
-InputPath=\picodrive\s60\Picodrive.rss\r
-\r
-BuildCmds= \\r
- nmake -nologo -f "\picodrive\s60\picodrives60v3.SUP.MAKE"\\r
- "\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\Resource\Apps\PicoDrive.r"\r
-\r
-"\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\Resource\Apps\PicoDrive.rSC.dummy" : $(SOURCE) "$(INTDIR)"\\r
- "$(OUTDIR)"\r
- $(BuildCmds)\r
-# End Custom Build\r
-\r
-!ENDIF \r
-\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\S60\Picodriveexe.cpp\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\Unzip.c\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\s60\Picodrive.uid.cpp\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\S60\S60v3video.inl\r
-# PROP Exclude_From_Build 1\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\S60\Interpolatevideo.inl\r
-# PROP Exclude_From_Build 1\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\S60\Normalvideo.inl\r
-# PROP Exclude_From_Build 1\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\s60\Picodrives60v3.mmp\r
-# PROP Exclude_From_Build 1\r
-# End Source File\r
-# End Group\r
-# Begin Group "Resource Files"\r
-\r
-# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"\r
-# End Group\r
-# Begin Group "Header Files"\r
-\r
-# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmffourcc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Base.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikaufty.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknmultilinequerycontrol.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32buf.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknlayout2id.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Ecom\Ecomresolverparams.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikfpne.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknintermediate.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mmf\Common\Mmfbase.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknfontidoffsets.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\String.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Apmstd.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknappui.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Ecom\Ecom.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikspane.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\server\Mmfbuffer.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\Stdlib.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikalign.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiklbv.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknappui.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Apgtask.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiksrvs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Bitdev.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikdpobs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfcontrollerframework.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Babitflags.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfvideo.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Vwsdef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\Ctype.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikimage.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikdef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikbutb.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Bitbase.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Importfile.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknpopupfader.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Akndef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Metacontainer.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32cmn.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknscrlb.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Fldbase.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikscbut.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfstandardcustomcommands.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32base.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikmobs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32std.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\pico\Pico.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coehelp.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32const.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikdialg.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Apparc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coemop.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\s60\Picodriveexe.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtetext.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknquerycontrol.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Frmlaydt.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikappui.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32err.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\server\Mmfdatabuffer.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Stringattributeset.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\sys\Stdio_t.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gulcolor.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiklbx.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coeview.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Resource.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknlistquerycontrol.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikdoc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Caferr.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknpopuplayout.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfipc.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Graphicsaccelerator.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32file.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\s60\S60v3video.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfipc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Fldbltin.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Caftypes.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Tagma.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\In_sock.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Apaid.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Resource.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Caf.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtfrmat.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\Stddef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\sys\Reent.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gulutil.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Agent.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Manager.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknlistquerydialog.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Partitions.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gulbordr.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Virtualpathptr.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Picodrive.rsg\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Barsc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtfmlyr.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32strm.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Linebreak.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikstart.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32strm.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Zconf.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gdi.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32ldr.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\W32std.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiktxlbm.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtfmstm.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gulalign.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Lafmain.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gdi.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikamnt.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32svr.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mmf\Common\Mmfutilities.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Ecom\Ecomerrorcodes.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Audio.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32cmn.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Ecom\Implementationinformation.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gulftflg.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\epoc32\include\variant\Symbian_os_v9.1.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikedwin.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32page.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiksrv.pan\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikcmbut.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Gulicon.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknnumseced.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtfrmat.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Ecom\Ecomresolverparams.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikcolor.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\Stdio.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikcba.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Badesca.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikcmobs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknapp.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknmfnecommandobserver.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Baerrhan.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Fldinfo.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiktxlbx.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikccpu.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfcontrollerframeworkbase.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\pico\Ggenie.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Avkon.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Fldset.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknpictographdrawerinterface.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Vwsappst.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfutilities.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Content.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiksbobs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Bamdesca.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\D32locd.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfaudio.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikmenub.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32stor.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\plugin\Mmfplugininterfaceuids.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32std.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikbtgpc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Ecom\Implementationinformation.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Bitdev.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Streamableptrarray.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Metadata.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Supplier.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfbase.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Port.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Basched.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coecontrolarray.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiksbfrm.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknenv.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\machine\Types.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mmfclntutility.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32keys.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Biditext.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32ktran.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Openfont.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\server\Mmfdatasourcesink.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\server\Mmfdatasource.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknquerydata.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiklbo.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikvcurs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknlayout.lag\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Bidi.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Supplieroutputfile.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfbase.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikunder.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coemain.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32hal.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Guldef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknnumedwin.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Bitmap.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\pico\Picoint.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Base.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mda\common\Base.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknquerydialog.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\F32file.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknpanic.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknfontcategory.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Avkon.rsg\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Metadata.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtstyle.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiklay.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\pico\Pico.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Apaflrec.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikmfne.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coeccntx.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32event.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknipfed.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Uikon.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknsconstants.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32std.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Embeddedobject.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknform.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Es_sock.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mm\Mmcaf.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Nifvar.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32mem.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32base.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Savenotf.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32capability.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Base.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coecntrl.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikfctry.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiklbm.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\Assert.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Medobsrv.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknsitemid.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coecobs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknutils.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Frmparam.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Metadataarray.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Lafpublc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfcontrollerpluginresolver.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Audio.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Cafmimeheader.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Akndialog.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Attribute.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32stor.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Attributeset.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikspmod.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Frmvis.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\ecom\Ecom.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiklibry.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Frmtlay.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknsconstants.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikctgrp.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtetext.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Akndoc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coeinput.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32share.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\F32file.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikmenup.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Akncontrol.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32base.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coedef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikcal.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Fntstore.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\Unzip.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Rightsmanager.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Apacmdln.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Es_sock.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Metacontainer.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikseced.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\F32file.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\zlib\Zlib.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\server\Mmfdatasink.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmcaf.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mdaaudiooutputstream.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikdgfty.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Cafpanic.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfutilities.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32share.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Frmtview.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Fepbase.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Rightsinfo.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknnumed.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknsitemid.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Metadata.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Dirstreamable.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32des8.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Frmframe.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32buf.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coeaui.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikapp.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikenv.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Fbs.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Akndef.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfcontroller.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknscbut.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtstyle.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikbtgrp.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknpopup.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Akncontrol.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Port.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\_ansi.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Bitstd.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Controller.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32def.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiksrvc.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikscrlb.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\server\Mmfbuffer.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Akntouchpaneobserver.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Apadef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikbctrl.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Aknpopupheadingpane.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mmf\common\Mmfutilities.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\D32locd.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikon.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Mda\Common\Audiostream.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32page.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Lafpublc.hrh\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiklbed.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32file.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\Stdarg_e.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\ecom\Ecom.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikedwob.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\Time.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32notif.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eikcycledef.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32debug.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Coetextdrawer.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Eiksrv.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32std.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Virtualpath.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Streamableptrarray.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\mda\client\Utility.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\S32mem.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\Txtfmlyr.inl\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32lmsg.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\caf\Data.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\E32des16.h\r
-# End Source File\r
-# Begin Source File\r
-\r
-SOURCE=\S60V3\EPOC32\include\libc\sys\Time.h\r
-# End Source File\r
-# End Group\r
-# Begin Group "Make Files"\r
-\r
-# PROP Default_Filter "mak;mk"\r
-# Begin Source File\r
-\r
-SOURCE=\picodrive\s60\picodrives60v3.mak\r
-# End Source File\r
-# End Group\r
-# End Target\r
-# End Project\r
+++ /dev/null
-PATH=\S60V3\epoc32\tools\;C:\Program\CSL Arm Toolchain\arm-none-symbianelf\bin;C:\Program\CSL Arm Toolchain\bin;\uiq3\epoc32\tools\;\S60V3\epoc32\tools\;\S60V3\epoc32\gcc\bin\;C:\winnt\system32;C:\winnt;C:\winnt\System32\Wbem;C:\Program Files\ATI Technologies\ATI Control Panel;C:\Program Files\Common Files\Adaptec Shared\System;C:\Perl\bin;\uiq3\epoc32\tools;c:\MSVC6\VC98\Bin;e:\UIQ3\epoc32\tools\nokia_compiler\Symbian_Tools\Command_Line_Tools;C:\Program Files\CSL Arm Toolchain\arm-none-symbianelf\bin;C:\Program Files\CSL Arm Toolchain\bin\r
-Path=$(PATH)\r
-COMPILER_PATH="\S60V3\epoc32\tools\nokia_compiler\Symbian_Tools\Command_Line_Tools\"\r
-\r
-# CWD \picodrive\s60\\r
-# MMPFile \picodrive\s60\picodrives60v3.MMP\r
-# Target PicoDrive.exe\r
-# TargetType EXE\r
-# BasicTargetType EXE\r
-# MakefileType GNU\r
-\r
-ERASE = @erase 2>>nul\r
-\r
-# EPOC DEFINITIONS\r
-\r
-EPOCBLD = \S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\r
-EPOCTRG = \S60V3\EPOC32\RELEASE\WINSCW\r
-EPOCLIB = \S60V3\EPOC32\RELEASE\WINSCW\r
-EPOCLINK = \S60V3\EPOC32\RELEASE\WINSCW\r
-EPOCSTATLINK = \S60V3\EPOC32\RELEASE\WINSCW\r
-EPOCASSPLINK = \S60V3\EPOC32\RELEASE\WINSCW\r
-EPOCDATA = \S60V3\EPOC32\DATA\r
-EPOCINC = \S60V3\EPOC32\INCLUDE\r
-TRGDIR = Z\sys\bin\r
-DATADIR = Z\System\Data\r
-\r
-EPOCBLDUDEB = $(EPOCBLD)\UDEB\r
-EPOCTRGUDEB = $(EPOCTRG)\UDEB\r
-EPOCLIBUDEB = $(EPOCLIB)\UDEB\r
-EPOCLINKUDEB = $(EPOCLINK)\UDEB\r
-EPOCSTATLINKUDEB = $(EPOCSTATLINK)\UDEB\r
-EPOCASSPLINKUDEB = $(EPOCASSPLINK)\UDEB\r
-\r
-EPOCBLDUREL = $(EPOCBLD)\UREL\r
-EPOCTRGUREL = $(EPOCTRG)\UREL\r
-EPOCLIBUREL = $(EPOCLIB)\UDEB\r
-EPOCLINKUREL = $(EPOCLINK)\UDEB\r
-EPOCSTATLINKUREL = $(EPOCSTATLINK)\UREL\r
-EPOCASSPLINKUREL = $(EPOCASSPLINK)\UDEB\r
-\r
-# EPOC PSEUDOTARGETS\r
-\r
-UDEB : MAKEWORKUDEB RESOURCEUDEB\r
-\r
-UREL : MAKEWORKUREL RESOURCEUREL\r
-\r
-ALL : UDEB UREL\r
-\r
-CLEAN CLEANALL : CLEANBUILD CLEANRELEASE CLEANLIBRARY\r
-\r
-\r
-\r
-WHAT WHATALL : WHATUDEB WHATUREL\r
-\r
-RESOURCE RESOURCEALL : RESOURCEUDEB RESOURCEUREL\r
-\r
-CLEANBUILD CLEANBUILDALL : CLEANBUILDUDEB CLEANBUILDUREL\r
-\r
-CLEANRELEASE CLEANRELEASEALL : CLEANRELEASEUDEB CLEANRELEASEUREL\r
-\r
-MAKEWORK MAKEWORKALL : MAKEWORKUDEB MAKEWORKUREL\r
-\r
-LISTING LISTINGALL : LISTINGUDEB LISTINGUREL\r
-\r
-MAKEWORK : MAKEWORKLIBRARY\r
-\r
-RESOURCEUDEB RESOURCEUREL : GENERIC_RESOURCE\r
-\r
-\r
-MWCIncludes:=$(MWCSym2Includes)\r
-export MWCIncludes\r
-\r
-\r
-MWLibraries:=+\S60V3\epoc32\tools\nokia_compiler\Symbian_Support\Runtime\Runtime_x86\Runtime_Win32\Libs;\S60V3\epoc32\tools\nokia_compiler\Symbian_Support\Win32-x86 Support\Libraries\Win32 SDK\r
-export MWLibraries\r
-\r
-\r
-MWLibraryFiles:=gdi32.lib;user32.lib;kernel32.lib;\r
-export MWLibraryFiles\r
-\r
-# EPOC DEFINITIONS\r
-\r
-INCDIR = -cwd source -i- \\r
- -i "\picodrive\pico" \\r
- -i "\picodrive\pico\sound" \\r
- -i "\picodrive\s60" \\r
- -i "\picodrive" \\r
- -i "\S60V3\EPOC32\include" \\r
- -i "\S60V3\EPOC32\include\libc" \\r
- -i "\S60V3\EPOC32\include\mmf\plugin" \\r
- -i "\S60V3\epoc32\include\variant"\\r
- -i "\S60V3\epoc32\include\variant\ " -include "Symbian_OS_v9.1.hrh"\r
-\r
-CWFLAGS = -wchar_t off -align 4 -warnings on -w nohidevirtual,nounusedexpr -enum int -str pool -exc ms -nostdinc\r
-\r
-CWDEFS = -d "__SYMBIAN32__" -d "__CW32__" -d "__WINS__" -d "__WINSCW__" -d "__EXE__" -d "S60V3" -d "__SUPPORT_CPP_EXCEPTIONS__" $(USERDEFS)\r
-\r
-CWUDEB = perl -S err_formatter.pl $(COMPILER_PATH)mwccsym2.exe -msgstyle parseable -sym codeview -inline off $(CWFLAGS) -d _DEBUG -d _UNICODE $(CWDEFS) $(INCDIR)\r
-CWUREL = perl -S err_formatter.pl $(COMPILER_PATH)mwccsym2.exe -msgstyle parseable -O4,s $(CWFLAGS) -d NDEBUG -d _UNICODE $(CWDEFS) $(INCDIR)\r
-\r
-\r
-UDEB : \\r
- $(EPOCTRGUDEB)\PicoDrive.exe\r
-\r
-UREL : \\r
- $(EPOCTRGUREL)\PicoDrive.exe\r
-\r
-\r
-RESOURCEUDEB : MAKEWORKUDEB \\r
- $(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive.mbm \\r
- $(EPOCTRGUDEB)\Z\private\10003a3f\apps\PicoDrive_reg.RSC \\r
- $(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive_loc.RSC \\r
- $(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive.RSC\r
-\r
-RESOURCEUREL : MAKEWORKUREL \\r
- $(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive.mbm \\r
- $(EPOCTRGUREL)\Z\private\10003a3f\apps\PicoDrive_reg.RSC \\r
- $(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive_loc.RSC \\r
- $(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive.RSC\r
-\r
-\r
-\r
-# REAL TARGET - LIBRARY\r
-\r
-LIBRARY : MAKEWORKLIBRARY\r
-\r
-FREEZE :\r
-\r
-CLEANLIBRARY :\r
-\r
-GENERIC_RESOURCE : GENERIC_MAKEWORK\r
-\r
-# REAL TARGET - BUILD VARIANT UDEB\r
-\r
-WHATUDEB : WHATGENERIC\r
-\r
-CLEANUDEB : CLEANBUILDUDEB CLEANRELEASEUDEB\r
-\r
-CLEANBUILDUDEB : \r
- @perl -S ermdir.pl "$(EPOCBLDUDEB)"\r
-\r
-CLEANRELEASEUDEB : CLEANGENERIC\r
-\r
-\r
-UDEB_RELEASEABLES1= \\r
- $(EPOCTRGUDEB)\PicoDrive.exe \\r
- $(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive.RSC \\r
- $(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive.mbm \\r
- $(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive_loc.RSC \\r
- $(EPOCTRGUDEB)\Z\private\10003a3f\apps\PicoDrive_reg.RSC\r
-\r
-WHATUDEB:\r
- @echo $(UDEB_RELEASEABLES1)\r
-\r
-CLEANRELEASEUDEB:\r
- -$(ERASE) $(UDEB_RELEASEABLES1)\r
-\r
-\r
-\r
-LISTINGUDEB : MAKEWORKUDEB \\r
- LISTINGUDEBpicodriveexe \\r
- LISTINGUDEBunzip \\r
- LISTINGUDEBPicoDrive_UID_\r
-\r
-LIBSUDEB= \\r
- $(EPOCSTATLINKUDEB)\pico.lib \\r
- $(EPOCSTATLINKUDEB)\a68k.obj \\r
- $(EPOCSTATLINKUDEB)\mz80_asm.obj \\r
- $(EPOCSTATLINKUDEB)\zlib.lib \\r
- $(EPOCLINKUDEB)\cone.lib \\r
- $(EPOCLINKUDEB)\EIKCORE.lib \\r
- $(EPOCLINKUDEB)\MEDIACLIENTAUDIOSTREAM.LIB \\r
- $(EPOCLINKUDEB)\euser.lib \\r
- $(EPOCLINKUDEB)\apparc.lib \\r
- $(EPOCLINKUDEB)\efsrv.lib \\r
- $(EPOCLINKUDEB)\estlib.lib \\r
- $(EPOCLINKUDEB)\fbscli.lib \\r
- $(EPOCLINKUDEB)\estor.lib \\r
- $(EPOCLINKUDEB)\eikcoctl.lib \\r
- $(EPOCLINKUDEB)\ws32.lib \\r
- $(EPOCLINKUDEB)\AVKON.LIB \\r
- $(EPOCLINKUDEB)\bafl.lib \\r
- $(EPOCLINKUDEB)\bitgdi.lib \\r
- $(EPOCLINKUDEB)\gdi.lib \\r
- $(EPOCLINKUDEB)\eikdlg.lib\r
-\r
-LINK_OBJSUDEB= \\r
- $(EPOCBLDUDEB)\picodriveexe.o \\r
- $(EPOCBLDUDEB)\unzip.o \\r
- $(EPOCBLDUDEB)\PicoDrive_UID_.o\r
-\r
-COMMON_LINK_FLAGSUDEB= -stdlib "$(EPOCSTATLINKUDEB)\EEXE.LIB" -m\\r
- "?_E32Bootstrap@@YGXXZ" -subsystem windows -heapreserve=8000 -heapcommit=256\\r
- -sym codeview -lMSL_All_MSE_Symbian_D.lib\r
-\r
-\r
-LINK_FLAGSUDEB= $(COMMON_LINK_FLAGSUDEB) $(LIBSUDEB) \\r
- -o "$(EPOCTRGUDEB)\PicoDrive.exe" -noimplib\r
-\r
-$(EPOCTRGUDEB)\PicoDrive.exe : $(LINK_OBJSUDEB) $(EPOCSTATLINKUDEB)\EEXE.LIB $(LIBSUDEB)\r
- $(COMPILER_PATH)mwldsym2.exe -msgstyle gcc $(LINK_FLAGSUDEB) -l $(EPOCBLDUDEB) -search $(notdir $(LINK_OBJSUDEB))\r
-\r
-\r
-# REAL TARGET - BUILD VARIANT UREL\r
-\r
-WHATUREL : WHATGENERIC\r
-\r
-CLEANUREL : CLEANBUILDUREL CLEANRELEASEUREL\r
-\r
-CLEANBUILDUREL : \r
- @perl -S ermdir.pl "$(EPOCBLDUREL)"\r
-\r
-CLEANRELEASEUREL : CLEANGENERIC\r
-\r
-\r
-UREL_RELEASEABLES1= \\r
- $(EPOCTRGUREL)\PicoDrive.exe \\r
- $(EPOCTRGUREL)\PicoDrive.exe.map \\r
- $(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive.RSC \\r
- $(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive.mbm \\r
- $(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive_loc.RSC \\r
- $(EPOCTRGUREL)\Z\private\10003a3f\apps\PicoDrive_reg.RSC\r
-\r
-WHATUREL:\r
- @echo $(UREL_RELEASEABLES1)\r
-\r
-CLEANRELEASEUREL:\r
- -$(ERASE) $(UREL_RELEASEABLES1)\r
-\r
-\r
-\r
-LISTINGUREL : MAKEWORKUREL \\r
- LISTINGURELpicodriveexe \\r
- LISTINGURELunzip \\r
- LISTINGURELPicoDrive_UID_\r
-\r
-LIBSUREL= \\r
- $(EPOCSTATLINKUREL)\pico.lib \\r
- $(EPOCSTATLINKUREL)\a68k.obj \\r
- $(EPOCSTATLINKUREL)\mz80_asm.obj \\r
- $(EPOCSTATLINKUREL)\zlib.lib \\r
- $(EPOCLINKUREL)\cone.lib \\r
- $(EPOCLINKUREL)\EIKCORE.lib \\r
- $(EPOCLINKUREL)\MEDIACLIENTAUDIOSTREAM.LIB \\r
- $(EPOCLINKUREL)\euser.lib \\r
- $(EPOCLINKUREL)\apparc.lib \\r
- $(EPOCLINKUREL)\efsrv.lib \\r
- $(EPOCLINKUREL)\estlib.lib \\r
- $(EPOCLINKUREL)\fbscli.lib \\r
- $(EPOCLINKUREL)\estor.lib \\r
- $(EPOCLINKUREL)\eikcoctl.lib \\r
- $(EPOCLINKUREL)\ws32.lib \\r
- $(EPOCLINKUREL)\AVKON.LIB \\r
- $(EPOCLINKUREL)\bafl.lib \\r
- $(EPOCLINKUREL)\bitgdi.lib \\r
- $(EPOCLINKUREL)\gdi.lib \\r
- $(EPOCLINKUREL)\eikdlg.lib\r
-\r
-LINK_OBJSUREL= \\r
- $(EPOCBLDUREL)\picodriveexe.o \\r
- $(EPOCBLDUREL)\unzip.o \\r
- $(EPOCBLDUREL)\PicoDrive_UID_.o\r
-\r
-COMMON_LINK_FLAGSUREL= -stdlib "$(EPOCSTATLINKUREL)\EEXE.LIB" -m\\r
- "?_E32Bootstrap@@YGXXZ" -subsystem windows -heapreserve=8000 -heapcommit=256\\r
- -lMSL_All_MSE_Symbian.lib\r
-\r
-\r
-LINK_FLAGSUREL= $(COMMON_LINK_FLAGSUREL) $(LIBSUREL) \\r
- -o "$(EPOCTRGUREL)\PicoDrive.exe" -map "$(EPOCTRGUREL)\PicoDrive.exe.map" -noimplib\r
-\r
-$(EPOCTRGUREL)\PicoDrive.exe : $(LINK_OBJSUREL) $(EPOCSTATLINKUREL)\EEXE.LIB $(LIBSUREL)\r
- $(COMPILER_PATH)mwldsym2.exe -msgstyle gcc $(LINK_FLAGSUREL) -l $(EPOCBLDUREL) -search $(notdir $(LINK_OBJSUREL))\r
-\r
-\r
-# SOURCES\r
-\r
-# BitMap PicoDrive.mbm\r
-\r
-GENERIC_RESOURCE : $(EPOCDATA)\Z\Resource\Apps\PicoDrive.mbm\r
-\r
-$(EPOCDATA)\Z\Resource\Apps\PicoDrive.mbm : \\r
- \picodrive\s60\picos.bmp \\r
- \picodrive\s60\picosmi.bmp \\r
- \picodrive\s60\picol.bmp \\r
- \picodrive\s60\picolmi.bmp\r
- perl -S epocmbm.pl -h"\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\PicoDrive.mbg" -o"$(EPOCDATA)\Z\Resource\Apps\PicoDrive.mbm" -l"\Z\Resource\Apps\:\picodrive\s60"\\r
- -b"\\r
- /c24\picodrive\s60\picos.bmp\\r
- /8\picodrive\s60\picosmi.bmp\\r
- /c24\picodrive\s60\picol.bmp\\r
- /8\picodrive\s60\picolmi.bmp" \\r
- -l"\Z\Resource\Apps\:\picodrive\s60"\r
-\r
-$(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive.mbm : $(EPOCDATA)\Z\Resource\Apps\PicoDrive.mbm\r
- perl -S ecopyfile.pl $? $@\r
-\r
-$(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive.mbm : $(EPOCDATA)\Z\Resource\Apps\PicoDrive.mbm\r
- perl -S ecopyfile.pl $? $@\r
-\r
-# Resource Z\private\10003a3f\apps\PicoDrive_reg.RSC\r
-\r
-DEPEND= \\r
- \S60V3\EPOC32\include\AppInfo.rh \\r
- \S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh\r
-\r
-GENERIC_RESOURCE : $(EPOCDATA)\Z\private\10003a3f\apps\PicoDrive_reg.RSC\r
-\r
-$(EPOCDATA)\Z\private\10003a3f\apps\PicoDrive_reg.RSC : \picodrive\S60\PicoDrive_reg.rss $(DEPEND)\r
- perl -S epocrc.pl -m045,046,047 -I "\picodrive\S60" -I "\picodrive\pico" -I "\picodrive\pico\sound" -I "\picodrive\s60" -I "\picodrive" -I- -I "\S60V3\EPOC32\include" -I "\S60V3\EPOC32\include\libc" -I "\S60V3\EPOC32\include\mmf\plugin" -I "\S60V3\epoc32\include\variant" -DLANGUAGE_SC -u "\picodrive\S60\PicoDrive_reg.rss" -o$@ -t"\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW" -l"Z\private\10003a3f\apps:\picodrive\s60"\r
-\r
-$(EPOCTRGUDEB)\Z\private\10003a3f\apps\PicoDrive_reg.RSC : $(EPOCDATA)\Z\private\10003a3f\apps\PicoDrive_reg.RSC\r
- perl -S ecopyfile.pl $? $@\r
-\r
-$(EPOCTRGUREL)\Z\private\10003a3f\apps\PicoDrive_reg.RSC : $(EPOCDATA)\Z\private\10003a3f\apps\PicoDrive_reg.RSC\r
- perl -S ecopyfile.pl $? $@\r
-\r
-# Resource Z\Resource\Apps\PicoDrive_loc.RSC\r
-\r
-DEPEND= \\r
- \S60V3\EPOC32\include\AppInfo.rh \\r
- \S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh\r
-\r
-GENERIC_RESOURCE : $(EPOCDATA)\Z\Resource\Apps\PicoDrive_loc.RSC\r
-\r
-$(EPOCDATA)\Z\Resource\Apps\PicoDrive_loc.RSC : \picodrive\S60\PicoDrive_loc.rss $(DEPEND)\r
- perl -S epocrc.pl -m045,046,047 -I "\picodrive\S60" -I "\picodrive\pico" -I "\picodrive\pico\sound" -I "\picodrive\s60" -I "\picodrive" -I- -I "\S60V3\EPOC32\include" -I "\S60V3\EPOC32\include\libc" -I "\S60V3\EPOC32\include\mmf\plugin" -I "\S60V3\epoc32\include\variant" -DLANGUAGE_SC -u "\picodrive\S60\PicoDrive_loc.rss" -o$@ -t"\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW" -l"Z\Resource\Apps:\picodrive\s60"\r
-\r
-$(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive_loc.RSC : $(EPOCDATA)\Z\Resource\Apps\PicoDrive_loc.RSC\r
- perl -S ecopyfile.pl $? $@\r
-\r
-$(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive_loc.RSC : $(EPOCDATA)\Z\Resource\Apps\PicoDrive_loc.RSC\r
- perl -S ecopyfile.pl $? $@\r
-\r
-# Resource Z\Resource\Apps\PicoDrive.RSC\r
-\r
-DEPEND= \\r
- \S60V3\EPOC32\include\BADEF.RH \\r
- \S60V3\EPOC32\include\BAERRRSVR.RH \\r
- \S60V3\EPOC32\include\aknfontcategory.hrh \\r
- \S60V3\EPOC32\include\aknfontidoffsets.hrh \\r
- \S60V3\EPOC32\include\avkon.hrh \\r
- \S60V3\EPOC32\include\avkon.rh \\r
- \S60V3\EPOC32\include\avkon.rsg \\r
- \S60V3\EPOC32\include\eikcdlg.rsg \\r
- \S60V3\EPOC32\include\eikcoctl.rsg \\r
- \S60V3\EPOC32\include\eikcolor.hrh \\r
- \S60V3\EPOC32\include\eikcore.rsg \\r
- \S60V3\EPOC32\include\eikctl.rsg \\r
- \S60V3\EPOC32\include\eikon.hrh \\r
- \S60V3\EPOC32\include\eikon.rh \\r
- \S60V3\EPOC32\include\eikon.rsg \\r
- \S60V3\EPOC32\include\gulftflg.hrh \\r
- \S60V3\EPOC32\include\lafpublc.hrh \\r
- \S60V3\EPOC32\include\uikon.hrh \\r
- \S60V3\EPOC32\include\uikon.rh \\r
- \S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh\r
-\r
-GENERIC_RESOURCE : $(EPOCDATA)\Z\Resource\Apps\PicoDrive.RSC\r
-\r
-$(EPOCDATA)\Z\Resource\Apps\PicoDrive.RSC : \picodrive\s60\PicoDrive.rss $(DEPEND)\r
- perl -S epocrc.pl -m045,046,047 -I "\picodrive\s60" -I "\picodrive\pico" -I "\picodrive\pico\sound" -I "\picodrive\s60" -I "\picodrive" -I- -I "\S60V3\EPOC32\include" -I "\S60V3\EPOC32\include\libc" -I "\S60V3\EPOC32\include\mmf\plugin" -I "\S60V3\epoc32\include\variant" -DLANGUAGE_SC -u "\picodrive\s60\PicoDrive.rss" -o$@ -h"\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\PicoDrive.rsg" -t"\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW" -l"Z\Resource\Apps:\picodrive\s60"\r
- perl -S ecopyfile.pl "\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\PicoDrive.rsg" "\S60V3\EPOC32\INCLUDE\PicoDrive.RSG"\r
-\r
-$(EPOCTRGUDEB)\Z\Resource\Apps\PicoDrive.RSC : $(EPOCDATA)\Z\Resource\Apps\PicoDrive.RSC\r
- perl -S ecopyfile.pl $? $@\r
-\r
-$(EPOCTRGUREL)\Z\Resource\Apps\PicoDrive.RSC : $(EPOCDATA)\Z\Resource\Apps\PicoDrive.RSC\r
- perl -S ecopyfile.pl $? $@\r
-\r
-# Source picodriveexe.cpp\r
-\r
-$(EPOCBLDUDEB)\picodriveexe.o \\r
-$(EPOCBLDUREL)\picodriveexe.o \\r
-: \\r
- \S60V3\EPOC32\include\AknControl.h \\r
- \S60V3\EPOC32\include\AknMfneCommandObserver.h \\r
- \S60V3\EPOC32\include\AknPictographDrawerInterface.h \\r
- \S60V3\EPOC32\include\AknTouchPaneObserver.h \\r
- \S60V3\EPOC32\include\AknsConstants.h \\r
- \S60V3\EPOC32\include\AknsConstants.hrh \\r
- \S60V3\EPOC32\include\AknsItemID.h \\r
- \S60V3\EPOC32\include\AknsItemID.inl \\r
- \S60V3\EPOC32\include\E32Base.h \\r
- \S60V3\EPOC32\include\Ecom\EComErrorCodes.h \\r
- \S60V3\EPOC32\include\Ecom\EComResolverParams.h \\r
- \S60V3\EPOC32\include\Ecom\EComResolverParams.inl \\r
- \S60V3\EPOC32\include\Ecom\Ecom.h \\r
- \S60V3\EPOC32\include\Ecom\ImplementationInformation.h \\r
- \S60V3\EPOC32\include\Ecom\ImplementationInformation.inl \\r
- \S60V3\EPOC32\include\Eikspane.h \\r
- \S60V3\EPOC32\include\F32File.h \\r
- \S60V3\EPOC32\include\LineBreak.h \\r
- \S60V3\EPOC32\include\MdaAudioOutputStream.h \\r
- \S60V3\EPOC32\include\Mda\Common\Audio.h \\r
- \S60V3\EPOC32\include\Mda\Common\Audio.hrh \\r
- \S60V3\EPOC32\include\Mda\Common\AudioStream.hrh \\r
- \S60V3\EPOC32\include\Mda\Common\Base.h \\r
- \S60V3\EPOC32\include\Mda\Common\Base.h \\r
- \S60V3\EPOC32\include\Mda\Common\Base.hrh \\r
- \S60V3\EPOC32\include\Mda\Common\Base.inl \\r
- \S60V3\EPOC32\include\Mda\Common\Controller.h \\r
- \S60V3\EPOC32\include\Mda\Common\Port.h \\r
- \S60V3\EPOC32\include\Mda\Common\Port.hrh \\r
- \S60V3\EPOC32\include\Mda\Common\Resource.h \\r
- \S60V3\EPOC32\include\Mda\Common\Resource.hrh \\r
- \S60V3\EPOC32\include\MetaContainer.h \\r
- \S60V3\EPOC32\include\MetaContainer.inl \\r
- \S60V3\EPOC32\include\MetaData.h \\r
- \S60V3\EPOC32\include\Metadata.inl \\r
- \S60V3\EPOC32\include\Mmf\Common\MmfBase.h \\r
- \S60V3\EPOC32\include\Mmf\Common\MmfUtilities.h \\r
- \S60V3\EPOC32\include\Mmfclntutility.h \\r
- \S60V3\EPOC32\include\aknDialog.h \\r
- \S60V3\EPOC32\include\aknPanic.h \\r
- \S60V3\EPOC32\include\aknapp.h \\r
- \S60V3\EPOC32\include\aknappUI.h \\r
- \S60V3\EPOC32\include\aknappui.h \\r
- \S60V3\EPOC32\include\akncontrol.h \\r
- \S60V3\EPOC32\include\akndef.h \\r
- \S60V3\EPOC32\include\akndef.hrh \\r
- \S60V3\EPOC32\include\akndoc.h \\r
- \S60V3\EPOC32\include\aknenv.h \\r
- \S60V3\EPOC32\include\aknfontcategory.hrh \\r
- \S60V3\EPOC32\include\aknfontidoffsets.hrh \\r
- \S60V3\EPOC32\include\aknform.h \\r
- \S60V3\EPOC32\include\aknintermediate.h \\r
- \S60V3\EPOC32\include\aknipfed.h \\r
- \S60V3\EPOC32\include\aknlayout.lag \\r
- \S60V3\EPOC32\include\aknlayout2id.h \\r
- \S60V3\EPOC32\include\aknlistquerycontrol.h \\r
- \S60V3\EPOC32\include\aknlistquerydialog.h \\r
- \S60V3\EPOC32\include\aknmultilinequerycontrol.h \\r
- \S60V3\EPOC32\include\aknnumed.h \\r
- \S60V3\EPOC32\include\aknnumedwin.h \\r
- \S60V3\EPOC32\include\aknnumseced.h \\r
- \S60V3\EPOC32\include\aknpopup.h \\r
- \S60V3\EPOC32\include\aknpopupfader.h \\r
- \S60V3\EPOC32\include\aknpopupheadingpane.h \\r
- \S60V3\EPOC32\include\aknpopuplayout.h \\r
- \S60V3\EPOC32\include\aknquerycontrol.h \\r
- \S60V3\EPOC32\include\aknquerydata.h \\r
- \S60V3\EPOC32\include\aknquerydialog.h \\r
- \S60V3\EPOC32\include\aknscbut.h \\r
- \S60V3\EPOC32\include\aknscrlb.h \\r
- \S60V3\EPOC32\include\aknutils.h \\r
- \S60V3\EPOC32\include\apacmdln.h \\r
- \S60V3\EPOC32\include\apadef.h \\r
- \S60V3\EPOC32\include\apaflrec.h \\r
- \S60V3\EPOC32\include\apaid.h \\r
- \S60V3\EPOC32\include\apgtask.h \\r
- \S60V3\EPOC32\include\apmstd.h \\r
- \S60V3\EPOC32\include\apparc.h \\r
- \S60V3\EPOC32\include\avkon.hrh \\r
- \S60V3\EPOC32\include\avkon.rsg \\r
- \S60V3\EPOC32\include\babitflags.h \\r
- \S60V3\EPOC32\include\badesca.h \\r
- \S60V3\EPOC32\include\baerrhan.h \\r
- \S60V3\EPOC32\include\bamdesca.h \\r
- \S60V3\EPOC32\include\barsc.h \\r
- \S60V3\EPOC32\include\basched.h \\r
- \S60V3\EPOC32\include\bidi.h \\r
- \S60V3\EPOC32\include\biditext.h \\r
- \S60V3\EPOC32\include\bitbase.h \\r
- \S60V3\EPOC32\include\bitdev.h \\r
- \S60V3\EPOC32\include\bitdev.inl \\r
- \S60V3\EPOC32\include\bitmap.h \\r
- \S60V3\EPOC32\include\bitstd.h \\r
- \S60V3\EPOC32\include\caf\agent.h \\r
- \S60V3\EPOC32\include\caf\attribute.h \\r
- \S60V3\EPOC32\include\caf\attributeset.h \\r
- \S60V3\EPOC32\include\caf\caf.h \\r
- \S60V3\EPOC32\include\caf\caferr.h \\r
- \S60V3\EPOC32\include\caf\cafmimeheader.h \\r
- \S60V3\EPOC32\include\caf\cafpanic.h \\r
- \S60V3\EPOC32\include\caf\caftypes.h \\r
- \S60V3\EPOC32\include\caf\caftypes.h \\r
- \S60V3\EPOC32\include\caf\content.h \\r
- \S60V3\EPOC32\include\caf\data.h \\r
- \S60V3\EPOC32\include\caf\dirstreamable.h \\r
- \S60V3\EPOC32\include\caf\embeddedobject.h \\r
- \S60V3\EPOC32\include\caf\importfile.h \\r
- \S60V3\EPOC32\include\caf\manager.h \\r
- \S60V3\EPOC32\include\caf\metadata.h \\r
- \S60V3\EPOC32\include\caf\metadataarray.h \\r
- \S60V3\EPOC32\include\caf\rightsinfo.h \\r
- \S60V3\EPOC32\include\caf\rightsmanager.h \\r
- \S60V3\EPOC32\include\caf\streamableptrarray.h \\r
- \S60V3\EPOC32\include\caf\streamableptrarray.inl \\r
- \S60V3\EPOC32\include\caf\stringattributeset.h \\r
- \S60V3\EPOC32\include\caf\supplier.h \\r
- \S60V3\EPOC32\include\caf\supplieroutputfile.h \\r
- \S60V3\EPOC32\include\caf\virtualpath.h \\r
- \S60V3\EPOC32\include\caf\virtualpathptr.h \\r
- \S60V3\EPOC32\include\coeaui.h \\r
- \S60V3\EPOC32\include\coeccntx.h \\r
- \S60V3\EPOC32\include\coecntrl.h \\r
- \S60V3\EPOC32\include\coecobs.h \\r
- \S60V3\EPOC32\include\coecontrolarray.h \\r
- \S60V3\EPOC32\include\coedef.h \\r
- \S60V3\EPOC32\include\coehelp.h \\r
- \S60V3\EPOC32\include\coeinput.h \\r
- \S60V3\EPOC32\include\coemain.h \\r
- \S60V3\EPOC32\include\coemop.h \\r
- \S60V3\EPOC32\include\coetextdrawer.h \\r
- \S60V3\EPOC32\include\coeview.h \\r
- \S60V3\EPOC32\include\d32locd.h \\r
- \S60V3\EPOC32\include\d32locd.inl \\r
- \S60V3\EPOC32\include\e32base.h \\r
- \S60V3\EPOC32\include\e32base.inl \\r
- \S60V3\EPOC32\include\e32capability.h \\r
- \S60V3\EPOC32\include\e32cmn.h \\r
- \S60V3\EPOC32\include\e32cmn.inl \\r
- \S60V3\EPOC32\include\e32const.h \\r
- \S60V3\EPOC32\include\e32debug.h \\r
- \S60V3\EPOC32\include\e32def.h \\r
- \S60V3\EPOC32\include\e32des16.h \\r
- \S60V3\EPOC32\include\e32des8.h \\r
- \S60V3\EPOC32\include\e32err.h \\r
- \S60V3\EPOC32\include\e32event.h \\r
- \S60V3\EPOC32\include\e32hal.h \\r
- \S60V3\EPOC32\include\e32keys.h \\r
- \S60V3\EPOC32\include\e32ktran.h \\r
- \S60V3\EPOC32\include\e32ldr.h \\r
- \S60V3\EPOC32\include\e32lmsg.h \\r
- \S60V3\EPOC32\include\e32notif.h \\r
- \S60V3\EPOC32\include\e32std.h \\r
- \S60V3\EPOC32\include\e32std.inl \\r
- \S60V3\EPOC32\include\e32svr.h \\r
- \S60V3\EPOC32\include\ecom\ECom.h \\r
- \S60V3\EPOC32\include\ecom\ecom.h \\r
- \S60V3\EPOC32\include\eikalign.h \\r
- \S60V3\EPOC32\include\eikamnt.h \\r
- \S60V3\EPOC32\include\eikapp.h \\r
- \S60V3\EPOC32\include\eikappui.h \\r
- \S60V3\EPOC32\include\eikaufty.h \\r
- \S60V3\EPOC32\include\eikbctrl.h \\r
- \S60V3\EPOC32\include\eikbtgpc.h \\r
- \S60V3\EPOC32\include\eikbtgrp.h \\r
- \S60V3\EPOC32\include\eikbutb.h \\r
- \S60V3\EPOC32\include\eikcal.h \\r
- \S60V3\EPOC32\include\eikcba.h \\r
- \S60V3\EPOC32\include\eikccpu.h \\r
- \S60V3\EPOC32\include\eikcmbut.h \\r
- \S60V3\EPOC32\include\eikcmobs.h \\r
- \S60V3\EPOC32\include\eikcolor.hrh \\r
- \S60V3\EPOC32\include\eikctgrp.h \\r
- \S60V3\EPOC32\include\eikcycledef.h \\r
- \S60V3\EPOC32\include\eikdef.h \\r
- \S60V3\EPOC32\include\eikdgfty.h \\r
- \S60V3\EPOC32\include\eikdialg.h \\r
- \S60V3\EPOC32\include\eikdoc.h \\r
- \S60V3\EPOC32\include\eikdpobs.h \\r
- \S60V3\EPOC32\include\eikedwin.h \\r
- \S60V3\EPOC32\include\eikedwob.h \\r
- \S60V3\EPOC32\include\eikenv.h \\r
- \S60V3\EPOC32\include\eikfctry.h \\r
- \S60V3\EPOC32\include\eikfpne.h \\r
- \S60V3\EPOC32\include\eikimage.h \\r
- \S60V3\EPOC32\include\eiklay.h \\r
- \S60V3\EPOC32\include\eiklbed.h \\r
- \S60V3\EPOC32\include\eiklbm.h \\r
- \S60V3\EPOC32\include\eiklbo.h \\r
- \S60V3\EPOC32\include\eiklbv.h \\r
- \S60V3\EPOC32\include\eiklbx.h \\r
- \S60V3\EPOC32\include\eiklibry.h \\r
- \S60V3\EPOC32\include\eikmenub.h \\r
- \S60V3\EPOC32\include\eikmenup.h \\r
- \S60V3\EPOC32\include\eikmfne.h \\r
- \S60V3\EPOC32\include\eikmobs.h \\r
- \S60V3\EPOC32\include\eikon.hrh \\r
- \S60V3\EPOC32\include\eiksbfrm.h \\r
- \S60V3\EPOC32\include\eiksbobs.h \\r
- \S60V3\EPOC32\include\eikscbut.h \\r
- \S60V3\EPOC32\include\eikscrlb.h \\r
- \S60V3\EPOC32\include\eikseced.h \\r
- \S60V3\EPOC32\include\eikspmod.h \\r
- \S60V3\EPOC32\include\eiksrv.h \\r
- \S60V3\EPOC32\include\eiksrv.pan \\r
- \S60V3\EPOC32\include\eiksrvc.h \\r
- \S60V3\EPOC32\include\eiksrvs.h \\r
- \S60V3\EPOC32\include\eikstart.h \\r
- \S60V3\EPOC32\include\eiktxlbm.h \\r
- \S60V3\EPOC32\include\eiktxlbx.h \\r
- \S60V3\EPOC32\include\eikunder.h \\r
- \S60V3\EPOC32\include\eikvcurs.h \\r
- \S60V3\EPOC32\include\es_sock.h \\r
- \S60V3\EPOC32\include\es_sock.inl \\r
- \S60V3\EPOC32\include\f32file.h \\r
- \S60V3\EPOC32\include\f32file.inl \\r
- \S60V3\EPOC32\include\fbs.h \\r
- \S60V3\EPOC32\include\fepbase.h \\r
- \S60V3\EPOC32\include\fldbase.h \\r
- \S60V3\EPOC32\include\fldbltin.h \\r
- \S60V3\EPOC32\include\fldinfo.h \\r
- \S60V3\EPOC32\include\fldset.h \\r
- \S60V3\EPOC32\include\fntstore.h \\r
- \S60V3\EPOC32\include\frmframe.h \\r
- \S60V3\EPOC32\include\frmlaydt.h \\r
- \S60V3\EPOC32\include\frmparam.h \\r
- \S60V3\EPOC32\include\frmtlay.h \\r
- \S60V3\EPOC32\include\frmtview.h \\r
- \S60V3\EPOC32\include\frmvis.h \\r
- \S60V3\EPOC32\include\gdi.h \\r
- \S60V3\EPOC32\include\gdi.inl \\r
- \S60V3\EPOC32\include\graphicsaccelerator.h \\r
- \S60V3\EPOC32\include\gulalign.h \\r
- \S60V3\EPOC32\include\gulbordr.h \\r
- \S60V3\EPOC32\include\gulcolor.h \\r
- \S60V3\EPOC32\include\guldef.h \\r
- \S60V3\EPOC32\include\gulftflg.hrh \\r
- \S60V3\EPOC32\include\gulicon.h \\r
- \S60V3\EPOC32\include\gulutil.h \\r
- \S60V3\EPOC32\include\in_sock.h \\r
- \S60V3\EPOC32\include\lafmain.h \\r
- \S60V3\EPOC32\include\lafpublc.h \\r
- \S60V3\EPOC32\include\lafpublc.hrh \\r
- \S60V3\EPOC32\include\libc\_ansi.h \\r
- \S60V3\EPOC32\include\libc\ctype.h \\r
- \S60V3\EPOC32\include\libc\machine\types.h \\r
- \S60V3\EPOC32\include\libc\stdarg_e.h \\r
- \S60V3\EPOC32\include\libc\stddef.h \\r
- \S60V3\EPOC32\include\libc\stdio.h \\r
- \S60V3\EPOC32\include\libc\stdlib.h \\r
- \S60V3\EPOC32\include\libc\string.h \\r
- \S60V3\EPOC32\include\libc\sys\reent.h \\r
- \S60V3\EPOC32\include\libc\sys\stdio_t.h \\r
- \S60V3\EPOC32\include\libc\sys\time.h \\r
- \S60V3\EPOC32\include\libc\time.h \\r
- \S60V3\EPOC32\include\mda\client\utility.h \\r
- \S60V3\EPOC32\include\mda\common\base.h \\r
- \S60V3\EPOC32\include\medobsrv.h \\r
- \S60V3\EPOC32\include\mm\mmcaf.h \\r
- \S60V3\EPOC32\include\mmf\common\MmfFourCC.h \\r
- \S60V3\EPOC32\include\mmf\common\MmfIpc.inl \\r
- \S60V3\EPOC32\include\mmf\common\MmfUtilities.h \\r
- \S60V3\EPOC32\include\mmf\common\MmfUtilities.inl \\r
- \S60V3\EPOC32\include\mmf\common\Mmfbase.h \\r
- \S60V3\EPOC32\include\mmf\common\mmcaf.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfaudio.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfbase.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfcontroller.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfcontrollerframework.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfcontrollerframeworkbase.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfcontrollerpluginresolver.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfipc.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfstandardcustomcommands.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfutilities.h \\r
- \S60V3\EPOC32\include\mmf\common\mmfvideo.h \\r
- \S60V3\EPOC32\include\mmf\plugin\mmfPluginInterfaceUIDs.hrh \\r
- \S60V3\EPOC32\include\mmf\server\mmfbuffer.h \\r
- \S60V3\EPOC32\include\mmf\server\mmfbuffer.hrh \\r
- \S60V3\EPOC32\include\mmf\server\mmfdatabuffer.h \\r
- \S60V3\EPOC32\include\mmf\server\mmfdatasink.h \\r
- \S60V3\EPOC32\include\mmf\server\mmfdatasource.h \\r
- \S60V3\EPOC32\include\mmf\server\mmfdatasourcesink.hrh \\r
- \S60V3\EPOC32\include\nifvar.h \\r
- \S60V3\EPOC32\include\openfont.h \\r
- \S60V3\EPOC32\include\partitions.h \\r
- \S60V3\EPOC32\include\picodrive.rsg \\r
- \S60V3\EPOC32\include\s32buf.h \\r
- \S60V3\EPOC32\include\s32buf.inl \\r
- \S60V3\EPOC32\include\s32file.h \\r
- \S60V3\EPOC32\include\s32file.inl \\r
- \S60V3\EPOC32\include\s32mem.h \\r
- \S60V3\EPOC32\include\s32mem.inl \\r
- \S60V3\EPOC32\include\s32page.h \\r
- \S60V3\EPOC32\include\s32page.inl \\r
- \S60V3\EPOC32\include\s32share.h \\r
- \S60V3\EPOC32\include\s32share.inl \\r
- \S60V3\EPOC32\include\s32std.h \\r
- \S60V3\EPOC32\include\s32std.inl \\r
- \S60V3\EPOC32\include\s32stor.h \\r
- \S60V3\EPOC32\include\s32stor.inl \\r
- \S60V3\EPOC32\include\s32strm.h \\r
- \S60V3\EPOC32\include\s32strm.inl \\r
- \S60V3\EPOC32\include\savenotf.h \\r
- \S60V3\EPOC32\include\tagma.h \\r
- \S60V3\EPOC32\include\txtetext.h \\r
- \S60V3\EPOC32\include\txtetext.inl \\r
- \S60V3\EPOC32\include\txtfmlyr.h \\r
- \S60V3\EPOC32\include\txtfmlyr.inl \\r
- \S60V3\EPOC32\include\txtfmstm.h \\r
- \S60V3\EPOC32\include\txtfrmat.h \\r
- \S60V3\EPOC32\include\txtfrmat.inl \\r
- \S60V3\EPOC32\include\txtstyle.h \\r
- \S60V3\EPOC32\include\txtstyle.inl \\r
- \S60V3\EPOC32\include\uikon.hrh \\r
- \S60V3\EPOC32\include\vwsappst.h \\r
- \S60V3\EPOC32\include\vwsdef.h \\r
- \S60V3\EPOC32\include\w32std.h \\r
- \S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh \\r
- \picodrive\pico\GGenie.h \\r
- \picodrive\pico\Pico.h \\r
- \picodrive\pico\PicoInt.h \\r
- \picodrive\pico\pico.h \\r
- \picodrive\s60\PicoDriveexe.h \\r
- \picodrive\s60\S60V3Video.inl \\r
- \picodrive\unzip.h\r
-\r
-$(EPOCBLDUDEB)\picodriveexe.o : \picodrive\S60\picodriveexe.cpp\r
- echo picodriveexe.cpp\r
- $(CWUDEB) -o "$@" -c "\picodrive\S60\picodriveexe.cpp"\r
-\r
-LISTINGUDEBpicodriveexe : $(EPOCBLDUDEB)\picodriveexe.lis\r
- perl -S ecopyfile.pl $? \picodrive\S60\picodriveexe.WINSCW.lst\r
-\r
-$(EPOCBLDUREL)\picodriveexe.o : \picodrive\S60\picodriveexe.cpp\r
- echo picodriveexe.cpp\r
- $(CWUREL) -o "$@" -c "\picodrive\S60\picodriveexe.cpp"\r
-\r
-LISTINGURELpicodriveexe : $(EPOCBLDUREL)\picodriveexe.lis\r
- perl -S ecopyfile.pl $? \picodrive\S60\picodriveexe.WINSCW.lst\r
-\r
-\r
-\r
-# Source unzip.c\r
-\r
-$(EPOCBLDUDEB)\unzip.o \\r
-$(EPOCBLDUREL)\unzip.o \\r
-: \\r
- \S60V3\EPOC32\include\libc\_ansi.h \\r
- \S60V3\EPOC32\include\libc\assert.h \\r
- \S60V3\EPOC32\include\libc\ctype.h \\r
- \S60V3\EPOC32\include\libc\machine\types.h \\r
- \S60V3\EPOC32\include\libc\stdarg_e.h \\r
- \S60V3\EPOC32\include\libc\stddef.h \\r
- \S60V3\EPOC32\include\libc\stdio.h \\r
- \S60V3\EPOC32\include\libc\stdlib.h \\r
- \S60V3\EPOC32\include\libc\string.h \\r
- \S60V3\EPOC32\include\libc\sys\reent.h \\r
- \S60V3\EPOC32\include\libc\sys\stdio_t.h \\r
- \S60V3\EPOC32\include\libc\time.h \\r
- \S60V3\EPOC32\include\zconf.h \\r
- \S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh \\r
- \picodrive\unzip.h \\r
- \picodrive\zlib\zlib.h\r
-\r
-$(EPOCBLDUDEB)\unzip.o : \picodrive\unzip.c\r
- echo unzip.c\r
- $(CWUDEB) -o "$@" -c "\picodrive\unzip.c"\r
-\r
-LISTINGUDEBunzip : $(EPOCBLDUDEB)\unzip.lis\r
- perl -S ecopyfile.pl $? \picodrive\unzip.WINSCW.lst\r
-\r
-$(EPOCBLDUREL)\unzip.o : \picodrive\unzip.c\r
- echo unzip.c\r
- $(CWUREL) -o "$@" -c "\picodrive\unzip.c"\r
-\r
-LISTINGURELunzip : $(EPOCBLDUREL)\unzip.lis\r
- perl -S ecopyfile.pl $? \picodrive\unzip.WINSCW.lst\r
-\r
-\r
-\r
-# Source PicoDrive.UID.CPP\r
-\r
-$(EPOCBLDUDEB)\PicoDrive_UID_.o \\r
-$(EPOCBLDUREL)\PicoDrive_UID_.o \\r
-: \\r
- \S60V3\EPOC32\include\e32capability.h \\r
- \S60V3\EPOC32\include\e32cmn.h \\r
- \S60V3\EPOC32\include\e32cmn.inl \\r
- \S60V3\EPOC32\include\e32const.h \\r
- \S60V3\EPOC32\include\e32def.h \\r
- \S60V3\EPOC32\include\e32des16.h \\r
- \S60V3\EPOC32\include\e32des8.h \\r
- \S60V3\EPOC32\include\e32err.h \\r
- \S60V3\epoc32\include\variant\Symbian_OS_v9.1.hrh\r
-\r
-$(EPOCBLDUDEB)\PicoDrive_UID_.o : \picodrive\s60\PicoDrive.UID.CPP\r
- echo PicoDrive.UID.CPP\r
- $(CWUDEB) -o "$@" -c "\picodrive\s60\PicoDrive.UID.CPP"\r
-\r
-LISTINGUDEBPicoDrive_UID_ : $(EPOCBLDUDEB)\PicoDrive_UID_.lis\r
- perl -S ecopyfile.pl $? \picodrive\s60\PicoDrive_UID_.WINSCW.lst\r
-\r
-$(EPOCBLDUREL)\PicoDrive_UID_.o : \picodrive\s60\PicoDrive.UID.CPP\r
- echo PicoDrive.UID.CPP\r
- $(CWUREL) -o "$@" -c "\picodrive\s60\PicoDrive.UID.CPP"\r
-\r
-LISTINGURELPicoDrive_UID_ : $(EPOCBLDUREL)\PicoDrive_UID_.lis\r
- perl -S ecopyfile.pl $? \picodrive\s60\PicoDrive_UID_.WINSCW.lst\r
-\r
-\r
-\r
-ROMFILE:\r
-\r
-# Implicit rule for generating .lis files\r
-\r
-.SUFFIXES : .lis .o\r
-\r
-.o.lis:\r
- $(COMPILER_PATH)mwldsym2.exe -msgstyle gcc -S -show source,unmangled,comments $< -o $@\r
-\r
-\r
-\r
-GENERIC_RELEASEABLES1= \\r
- $(EPOCDATA)\Z\Resource\Apps\PicoDrive.RSC \\r
- $(EPOCDATA)\Z\Resource\Apps\PicoDrive.mbm \\r
- $(EPOCDATA)\Z\Resource\Apps\PicoDrive_loc.RSC \\r
- $(EPOCDATA)\Z\private\10003a3f\apps\PicoDrive_reg.RSC \\r
- $(EPOCINC)\PicoDrive.RSG \\r
- \S60V3\EPOC32\LOCALISATION\GROUP\PICODRIVE.INFO \\r
- \S60V3\EPOC32\LOCALISATION\GROUP\PICODRIVE_LOC.INFO \\r
- \S60V3\EPOC32\LOCALISATION\GROUP\PICODRIVE_REG.INFO \\r
- \S60V3\EPOC32\LOCALISATION\PICODRIVE_LOC\RSC\PICODRIVE_LOC.RPP \\r
- \S60V3\EPOC32\LOCALISATION\PICODRIVE_REG\RSC\PICODRIVE_REG.RPP \\r
- \S60V3\EPOC32\LOCALISATION\\MBM\PICOL.BMP \\r
- \S60V3\EPOC32\LOCALISATION\\MBM\PICOLMI.BMP \\r
- \S60V3\EPOC32\LOCALISATION\\MBM\PICOS.BMP \\r
- \S60V3\EPOC32\LOCALISATION\\MBM\PICOSMI.BMP \\r
- \S60V3\EPOC32\LOCALISATION\\RSC\PICODRIVE.RPP\r
-\r
-WHATGENERIC:\r
- @echo $(GENERIC_RELEASEABLES1)\r
-\r
-CLEANGENERIC:\r
- -$(ERASE) $(GENERIC_RELEASEABLES1)\r
-\r
-# Rules to create all necessary directories\r
-\r
-GENERIC_MAKEWORK : \\r
- \S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW \\r
- \S60V3\EPOC32\DATA\Z\Resource\Apps \\r
- \S60V3\EPOC32\DATA\Z\private\10003a3f\apps \\r
- \S60V3\EPOC32\INCLUDE\r
-MAKEWORKLIBRARY : \\r
- \S60V3\EPOC32\RELEASE\WINSCW\UDEB\r
-MAKEWORKUDEB : \\r
- \S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\UDEB \\r
- \S60V3\EPOC32\RELEASE\WINSCW\UDEB \\r
- \S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\Resource\Apps \\r
- \S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\private\10003a3f\apps\r
-MAKEWORKUREL : \\r
- \S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\UREL \\r
- \S60V3\EPOC32\RELEASE\WINSCW\UREL \\r
- \S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\Resource\Apps \\r
- \S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\private\10003a3f\apps\r
-\r
-\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW \\r
-\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\UDEB \\r
-\S60V3\EPOC32\BUILD\picodrive\s60\picodrives60v3\WINSCW\UREL \\r
-\S60V3\EPOC32\DATA\Z\Resource\Apps \\r
-\S60V3\EPOC32\DATA\Z\private\10003a3f\apps \\r
-\S60V3\EPOC32\INCLUDE \\r
-\S60V3\EPOC32\RELEASE\WINSCW\UDEB \\r
-\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\Resource\Apps \\r
-\S60V3\EPOC32\RELEASE\WINSCW\UDEB\Z\private\10003a3f\apps \\r
-\S60V3\EPOC32\RELEASE\WINSCW\UREL \\r
-\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\Resource\Apps \\r
-\S60V3\EPOC32\RELEASE\WINSCW\UREL\Z\private\10003a3f\apps \\r
-:\r
- perl -S emkdir.pl $@\r
-\r
+++ /dev/null
-\r
-BLD: UDEB\r
-REBUILD : CLEANUDEB UDEB\r
-\r
-include picodrives60v3.mak\r
-\r
+++ /dev/null
-\r
-BLD: UREL\r
-REBUILD : CLEANUREL UREL\r
-\r
-include picodrives60v3.mak\r
-\r