From af664bab5fdfcda68aa83758164c36060c43a8f6 Mon Sep 17 00:00:00 2001 From: Gwenhael Le Moine Date: Wed, 20 Mar 2024 07:46:28 +0100 Subject: [PATCH] 2009-08-29: Updated to version 46 Signed-off-by: Gwenhael Le Moine --- DEBUGGER.TXT | 66 ++++- EMU48.TXT | 18 +- EMU48PLUS.TXT | 2 +- Emu48.dll | Bin 274432 -> 278528 bytes Emu48.exe | Bin 258048 -> 266240 bytes PROBLEMS.TXT | 4 +- source/APPLE.C | 1 + source/CHANGES.TXT | 214 +++++++++++++- source/DDESERV.C | 1 + source/DEBUGDLL.C | 16 + source/DEBUGGER.C | 558 ++++++++++++++++++++++++++++++----- source/DEBUGGER.H | 2 + source/DISASM.C | 144 +++++---- source/DISPLAY.C | 5 +- source/EMU48.C | 56 +++- source/EMU48.H | 26 +- source/EMU48.RC | 50 +++- source/EMU48DLL.C | 6 +- source/EMU48DLL.DSP | 18 +- source/Emu48.dsp | 18 +- source/FILES.C | 698 +++++++++++++++++++++++++++++++++++++++----- source/KML.C | 189 ++++++------ source/KML.H | 27 +- source/MRU.C | 320 ++++++++++++++++++++ source/PCH.H | 4 + source/RESOURCE.H | 10 +- source/RPL.C | 6 +- source/SETTINGS.C | 2 + source/STACK.C | 3 +- 29 files changed, 2077 insertions(+), 387 deletions(-) create mode 100644 source/MRU.C diff --git a/DEBUGGER.TXT b/DEBUGGER.TXT index 7c68978..d09e7b2 100644 --- a/DEBUGGER.TXT +++ b/DEBUGGER.TXT @@ -7,8 +7,40 @@ The debugger was designed to help customers inspecting assembler code objects, a After starting the debugger the emulation will stop at the current program counter position. The emulation will continue after closing the debugger window. Please remember that the clock now shows the wrong time. +1.) System Menu / Debugger Settings -1.) Menu Debug +This is the configuration dialog for the debugger. + +In the "Disassembler" section you can switch between HP and Class Mnemonics for the disassembler. This switch is exactly the same like in the main Settings dialog. + +In the "Symbolic" section you can setup the debugger for symbolic debugging. Therefore the debugger needs a reference file. The reference file must contain a table for converting an absolute address into a symbolic name. I decided to use the HP-TOOLS object files (file extension *.o) with the supported entries. These object files are usually provided by HP for the HP48 and HP49 series and are necessary for linking object files. In the case of older calculators you have to make them by your own. Using the object file for the linker as reference has two disadvantages. First such an object file has an assembler specific output format, in our case the debugger only understands the output format of HP SASM v3.x. Second, in some cases an entries has two or more different names and I cannot control which name is returned. + +Example from ENTRIES.A (HP48 Supported ROM Entry Points) + +=UNROT EQU #60FAC * +=3UNROLL EQU #60FAC * +=XYZ>ZXY EQU #60FAC * + +My implementation returns the last name inside the linker object file to the chosen address. + +If you don't have the linker object file, the HP28S entry point list for example is only distributed as assembler source file SUPROM28.A, you can simply generate it with + +sasm -N SUPROM28.A + +- Enable + +With an unchecked Enable check box you can disable the symbolic debugging without removing the reference file. + +- Model + +Each calculator model needs his own symbol reference file. The given models exactly corresponds to the one used in the KML script. When you opening the settings dialog automatically the actual model is chosen in the combo box. You can switch to all other possible calculator models to enter the corresponding reference files. When you exit the dialog with the Ok button all filenames are saved. + +- Edit field + +The edit field must contain the filename to the model specific symbol reference file which is chosen by the combo box. + + +2.) Menu Debug - Run F5 @@ -69,7 +101,7 @@ So be careful using the F9 key. Stops the emulation at the current program counter position. -2.) Menu Breakpoints +3.) Menu Breakpoints - Set Breakpoint F2 @@ -136,7 +168,7 @@ If this item is checked, the debugger stops program execution at the first instr If this item is checked, the debugger stops program execution on every instruction called after a PC=(A) or PC=(C) opcode. This is normally the begin of a new RPL command. RPL breakpoints use a "-R" marker instead of the assembler "->" PC position marker. -3.) Menu Interrupts +4.) Menu Interrupts - Step Over Interrupts @@ -145,7 +177,7 @@ If this item is checked, interrupt handler code will be skipped. This option is You can also use this option if you want to quit the interrupt handler. Just check this option, press F7 for "Step Into" for stopping the debugger behind the RTI instruction, and uncheck this option again. -4.) Menu Info +5.) Menu Info - Last Instructions... @@ -160,7 +192,7 @@ This opens a small toolbox window which shows the number of CPU cycles and the c Some of the display registers have a different meaning on reading and writing. This dialog shows the data written to the write only I/O registers. -5.) Code window +6.) Code window This windows shows you the disassembled code. The line with the current PC is marked with a "->" or "-R" between the address and the disassembly. @@ -170,7 +202,7 @@ Context menu pressing the right mouse button: - Go to address... G -Moves the cursor to the specified code address. +Moves the cursor to the specified code address. Therefore you can enter a hexadecimal number or the symbolic reference name. - Go to PC @@ -185,24 +217,24 @@ Toggle a code breakpoint at the cursor position in the Code window. Set the PC to the cursor position. Be careful with this command, you change the execution order of the commands! -6.) Register window +7.) Register window Here you can see the actual contents of the CPU registers. The values are only updated at a program execution stop. All changed CPU registers are highlighted. With the left mouse button you change the content of the register. On bit registers, like CY and Mode, the state change immediately without any request. -7.) Memory window +8.) Memory window This windows shows the memory content in the selected context. -You can use the arrow, PAGE UP and PAGE DOWN keys to move the cursor to a memory position. With a double click on the left mouse button (only in Map mode) you can change the content of the two addresses. When the memory position is read only (ROM or write protected RAM) the content wouldn't change. +You can use the arrow, PAGE UP and PAGE DOWN keys to move the cursor to a memory position, the + and - keys change the memory position by one nibble under the cursor. With a double click on the left mouse button (only in Map mode) you can change the content of the two addresses. When the memory position is read only (ROM or write protected RAM) the content wouldn't change. Context menu pressing the right mouse button: - Go to address... G -Moves the cursor to the specified memory address. +Moves the cursor to the specified memory address. Therefore you can enter a hexadecimal number or the symbolic reference name. - Go to PC @@ -234,7 +266,7 @@ This is a special mode of indirect addressing. You can specify an address which - Follow Register PC/D0/D1 -The memory window follow the content of the selected register. +The Memory window follow the content of the selected register. - Find... F @@ -269,8 +301,12 @@ CE1 | nc. | BS | Slt1 32/128KB | BS | BS CE2 | nc. | nc. | Slt2 32/128KB | Slt1 32/128KB | RAM 128KB NCE3 | nc. | RAM 128KB | nc. | Slt2 32KB-4MB | RAM 128KB +- RPL Object Viewer... -8.) Stack window +This opens a small toolbox window showing the decompiled RPL object at the memory address marked by the cursor. If the toolbox window is already open the content will be updated. There's a problem if you want to select an address inside the marked two addresses. The easiest way to switch the address is the use of the + and - keys changing the memory position by one nibble under the cursor. + + +9.) Stack window The content of the hardware stack is viewed here. In "1:" is the current return address. A double click on an item shows the address content in the Code window. @@ -289,7 +325,7 @@ Pop the selected element from the stack. Modifies the stack content of the current selection. -9.) MMU window +10.) MMU window The configuration of the memory controllers is viewed here. The viewed addresses are the first address of each module area and may differ from the given address in the CONFIG command. @@ -303,11 +339,11 @@ This example will config a 128KB module at address #80000 and not at the given address. So the MMU viewer will show you the address #80000. -10.) Miscellaneous window +11.) Miscellaneous window The Miscellaneous window show you the internal state of the interrupt flag, the 1ms keyboard handler and the contents of the Bank Switcher latch. The Bank Switcher item is only enabled on calculators with a latch inside. You see the loaded value of the address lines A6-A0. You have to ignore the last bit (A0), because it isn't wired to the six bit latch. You can change the values by pressing the left mouse button over the old content. -02/24/06 (c) by Christoph Gießelink +04/04/09 (c) by Christoph Gießelink diff --git a/EMU48.TXT b/EMU48.TXT index f7ce9e4..f1121b1 100644 --- a/EMU48.TXT +++ b/EMU48.TXT @@ -59,8 +59,8 @@ ROM.38G. This tool will also check its validity. - HP39/40: To upload the ROM of your HP39G/HP40G, you will need a special aplet called "ROM -UPLOAD", available at http://privat.swol.de/ChristophGiesselink/emu48.htm. Once -you've uploaded the ROM, you have to convert it using the Rom2emu utility. +UPLOAD", available at http://hp.giesselink.com/emu48.htm. Once you've uploaded +the ROM, you have to convert it using the Rom2emu utility. To do that, start a Command Prompt while running Windows, and type: Rom2emu ROM.39G @@ -89,7 +89,7 @@ to convert your dump with the CONVERT utility into the Emu48 format. You can find the latest version of the ROM dump programs on: ROMUPL.BIN http://www.epita.fr/~avenar_j/hp/calcen.html -ROMDump Wizard http://privat.swol.de/ChristophGiesselink/index.htm +ROMDump Wizard http://hp.giesselink.com/index.htm - HP49: There's no ROM download program available so far. But you can find a HP49G ROM @@ -134,7 +134,7 @@ If you want other great scripts, visit Rechlin's great HP archive http://www.hpcalc.org/ And if you are interested in writing new scripts, get the KML 2.0 documentation -from Christoph's page at http://privat.swol.de/ChristophGiesselink/emu48.htm +from Christoph's page at http://hp.giesselink.com/emu48.htm Once you have selected a script, press OK to start the emulator. In most cases, when Emu48 crash after pressing the OK button, you forgot to convert the ROM @@ -414,8 +414,8 @@ The structure of the clipboard format "CF_HPOBJ": * TROUBLE SHOOTING * ******************** -Visit the Emu48 FAQ site at http://privat.swol.de/ChristophGiesselink/index.htm -to get more information please. +Visit the Emu48 FAQ site at http://hp.giesselink.com/index.htm to get more +information please. *********** @@ -425,7 +425,7 @@ to get more information please. We cannot provide any individual support for Emu48. Information about Emu48 will be on the Emu48 Homepage or on the Emu48 FAQ at - http://privat.swol.de/ChristophGiesselink/index.htm + http://hp.giesselink.com/index.htm It's also a good idea to look at the Usenet forum comp.sys.hp48. Emu48 topics have discussed there in different threads for years now. @@ -436,7 +436,7 @@ have discussed there in different threads for years now. *************** Emu48 - An HP38/39/40/48/49 Emulator -Copyright (C) 2007 Sebastien Carlier & Christoph Gießelink +Copyright (C) 2009 Sebastien Carlier & Christoph Gießelink This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software @@ -474,4 +474,4 @@ E-Mail: c dot giesselink at gmx dot de Homepage: - http://hp.giesselink.com/index.htm + http://hp.giesselink.com/ diff --git a/EMU48PLUS.TXT b/EMU48PLUS.TXT index 10d4c16..55b3950 100644 --- a/EMU48PLUS.TXT +++ b/EMU48PLUS.TXT @@ -1,4 +1,4 @@ -Emu48 1.45+ +Emu48 1.46+ Emu48+ is a modified version of Emu48 to add support for the ARM-based calculators. It does not emulate the ARM CPU, but it enhances the diff --git a/Emu48.dll b/Emu48.dll index f370ce7574c7ceb49b5d855c858febbb63fc825c..6f0ac4e6de0b75cda4e6fbc5018036e4bf50f9a0 100644 GIT binary patch literal 278528 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

^AmtcTXC>7}?FdM6nMJX=pYx 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

oHZk^ql^iUmSZ3e=T#0*mJN5l2ecm-X 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 diff --git a/Emu48.exe b/Emu48.exe index 09bd9817f81b9aa195336e6bab11a086e49532db..b4ba2e16a0ec8bb63d819e2c7d404486ef154b6b 100644 GIT binary patch literal 266240 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

m27aO0d-{m2vt(; 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 z%0A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 YUeUl64P4Q{6%Aa`z!eSrzpH`&4b(%2Q2+n{ literal 258048 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�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

7+O7iHVN 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 NRRUKf@J}Ow{|mC0+{FL@ diff --git a/PROBLEMS.TXT b/PROBLEMS.TXT index b547e82..49c5ded 100644 --- a/PROBLEMS.TXT +++ b/PROBLEMS.TXT @@ -1,4 +1,4 @@ -Known bugs and restrictions of Emu48 V1.47 +Known bugs and restrictions of Emu48 V1.49 ------------------------------------------ - the following I/O bits aren't emulated (incomplete) @@ -53,4 +53,4 @@ Known bugs and restrictions of Emu48 V1.47 - quitting the emulator while programming the flash isn't allowed, because the content of flash state machine isn't saved so far -04/21/07 (c) by Christoph Gießelink, c dot giesselink at gmx dot de +08/18/09 (c) by Christoph Gießelink, c dot giesselink at gmx dot de diff --git a/source/APPLE.C b/source/APPLE.C index 31a34da..169bcce 100644 --- a/source/APPLE.C +++ b/source/APPLE.C @@ -348,6 +348,7 @@ VOID o80BExt(LPBYTE I) // Saturnator extentions case 0x88: { QWORD a = o80BReg164(I); QWORD b = o80BReg264(I); o80BRegWrite(a<>b, I); w.pc+=2; break; } // r=r>s case 0x8A: { QWORD a = o80BReg164(I); QWORD b = o80BReg264(I); o80BRegWrite(a^b, I); w.pc+=2; break; } // r=r^s + case 0x90: break; // data streamer not implemented case 0xEE: break; // ARMFLUSH not implemented case 0xEF: break; // ARMSYS not implemented case 0xFF: break; // ARMSAT not implemented diff --git a/source/CHANGES.TXT b/source/CHANGES.TXT index 4d5942e..2f455aa 100644 --- a/source/CHANGES.TXT +++ b/source/CHANGES.TXT @@ -1,10 +1,210 @@ -------------------------------------------------------------------- -Service Pack 45 for Emu48 Version 1.0 +Service Pack 46 for Emu48 Version 1.0 + +APPLE.C +- added BUSCC 09 (opcode 80B90) data streamer implementation as NOP + +DDESERV.C +- bugfix in function DdeCallback(), readded delay at XTYP_POKE after + ON key state change switching calculator on, bug introduced in + SP37 + +DEBUGDLL.C +- added dummy functions CreateBackupBreakpointList() and + RestoreBackupBreakpointList() for linking + +DEBUGGER.C +- added backup breakpoint list +- bugfix in function InfoWoRegister(), changed WM_COMMAND message + handler from IDOK to IDCANCEL to make the close button working + properly +- added functions SaveBreakpointList() and + CreateBackupBreakpointList() to handle the backup breakpoint list + +DEBUGGER.H +- extern declaration of global functions + +DISPLAY.C +- made gobal variable pbyLcd static + +EMU48.C +- bugfix in function OnDropFiles() and OnObjectLoad(), readded + delay after ON key state change switching calculator on, bug + introduced in SP37 +- changed function OnFileOpen(), added MruAdd() call +- added new function OnFileMruOpen(), command handler for MRU menu + selections +- changed function OnFileSaveAs(), added MruAdd() call +- changed function OnObjectLoad(), changed load object warning + message +- changed function MainWndProc(), added MRU message handler +- changed function WinMain(), added MRU handling +- bugfix in function WinMain(), getting the full path name of the + current state file failed in the case of an empty name buffer + +EMU48.DSP +- added mru.c sources + +EMU48.H +- removed extern declaration of pbyLcd +- extern declaration of global functions EMU48.RC +- changed IDD_WRITEONLYREG, changed ID of OK control from IDOK to + IDCANCEL +- changed IDD_SETTINGS, replaced "Ok" with "OK" and removed + accelerator keys from "OK" and "Cancel" +- added Menuitem Files "Recent Files..." +- changed version and copyright + +EMU48DLL.C +- bugfix in function DLLDestroyWnd(), getting the full path name of + the current state file failed in the case of an empty name buffer + +FILES.C +- bugfix in function OpenDocument(), if document reload was refused + the function returned no success -> this caused trouble in + function OnFileMruOpen() removing the MRU entry of this document +- bugfix in function SaveBackup(), a backup of the debugger + breakpoint list wasn't created +- bugfix in function RestoreBackup(), the debugger breakpoint list + wasn't restored so the breakpoints got lost when saving the state + file and added preserving debugger open state, this feature was + lost as a result of a bugfix in an earlier version +- changed function GetOpenFilename(), added file filter for all + Emu48 specific filenames which is default, changed filter names + and removed model specific file extention selection +- changed function GetSaveAsFilename(), changed filter names and use + small size characters for file extentions +- changed function DecodeGif(), fixed a GCC type mismatch warning + +KML.C +- added token TOK_IFMEM to eIsBlock[] table +- added function UpdateScriptList(), filling the KML script combo + box with all found script titles and select the current used one +- changed function ChooseKMLProc(), call function UpdateScriptList() + to update the KML script combo box now +- removed function FatalError() +- bugfix in function ParseString(), replaced error text +- bugfix in function IncludeLines(), removed fatal error message + text +- bugfix in function ParseLines(), in some cases parsing hadn't + stopped with an error inside a block with an unreferenced include + file and removed a fatal error message text +- bugfix in function ParseBlock(), block argument checking generated + wrong error messages in the case of syntax errors +- bugfix in function IncludeBlocks(), removed fatal error message + text +- changed function ParseBlocks(), removed "Invalid block." message + text and made some code optimizations calling the function + FatalError() +- changed function InitGlobal(), changed some punctuation and + capital letters +- changed function InitButton(), source code improvement checking + the size of button array +- changed function RunLine(), added implementation of "IfMem" + command +- bugfix in function ReloadButtons(), global variable bKeyPressed + wasn't updated + +KML.H +- added TOK_IFMEM definition + +MRU.C +- new module for MRU routines + +STACK.C +- bugfix in function OnStackPaste(), readded delay after ON key + state change switching calculator on + + +Service Pack 45 for Emu48 Version 1.0 + +DEBUGGER.C +- added function LoadSymbTable(), loading symbol table defined in + INI-File +- added function GetMemCurAddr(), get address of cursor in memory + window +- changed function ViewCodeWnd(), function now returns the line + number with the pc, adjusted address to Saturn address area, added + label line if address is a known entry and added a check if the 5 + nibble sequence on an address should be interpreted as PCO +- changed function ViewCodeWnd() and InfoIntr(), adjusted to new + prototype of function disassemble() +- changed function UpdateCodeWnd(), if pc should shown at first line + but the pc is the begin of a PCO, show PCO address as first line + instead, added handling for label line +- changed function OnKeyF5(), for label line support changed + detection of PC line +- changed function OnCodeGoAdr(), removed limitation to Saturn + address area, limitation now done in function ViewCodeWnd() +- added function OnKeyPlusMinus(), +/- key handler for memory window +- changed function OnKeyCodeWnd(), added handling for label line and + removed limitation going back before address 0 +- changed function OnDrawCodeWnd(), added draw style for label line +- changed function Debugger(), added initialization and + uninitialization of smybol table and bold font and added +/- key + handling for memory window +- added functions for Debugger Settings handling +- changed function EnterAddr(), added decoding a symbolic entry into + an address +- changed function InfoIntr(), added label line if instruction + address is a known entry + +DISASM.C +- added variable disassembler_symb to enable symbolic address + disassembly +- changed function read_nibble(), made function public +- changed function append_imm_nibble(), if the immediate data is 5 + nibbles long and the decoded data is a known symbolic entry, show + the symbolic name instead of the data +- added new function append_numaddr(), numeric output of an address +- changed function append_addr(), if the address is a known symbolic + entry, show the symbolic name instead of the address +- bugfix in function append_r_addr(), in some rare conditions the + program counter value got larger than 0xFFFFF, if the calculated + absolute address is a known symbolic entry show the symbolic name + instead of the relative address, in the case of showing the + relative address the corresponding absolute address is now printed + by this function and not by the function append_pc_comment(), so + there's no difference between VIEW_SHORT and VIEW_LONG any more +- removed function append_pc_comment(), implementation is obsolete + now because absolute address printing is now done in function + append_r_addr() +- changed function disasm_8() and disassemble(), changed function + prototypes by removing the view argument + +DISPLAY.C +- changed DIBPIXEL() define, generates the same code on MSVC6.0 but + made it GCC compiler compatible + +EMU48.C +- changed function Disasm(), adjusted to new prototype of function + disassemble() + +EMU48.H +- removed VIEW_SHORT and VIEW_LONG definition +- changed function prototypes +- extern declaration of global variable and functions + +EMU48.RC +- added dialog IDD_DEBUG_SETTINGS - changed name order in copyright messages - changed version +FILES.C +- changed function IsDataPacked(), made a DWORD pointer copy of the + VOID pointer argument to avoid type casting, this generates the + same code on MSVC6.0 but made it GCC compiler compatible +- added function DecodeBmp(), contain the BMP image file decoder + prior located in function LoadBitmapFile() and added check of + bitmap file size +- added functions ReadGifByte(), ReadGifWord() and DecodeGif() for + decoding GIF image files +- bugfix in function LoadBitmapFile(), check for a valid file handle + was missing, moved BMP image file decoder to function DecodeBmp() + and added GIF image file support + KML.C - changed szText variable qualifier from LPTSTR to LPCTSTR - changed function CreateKmlList(), adjusted to new prototype of @@ -16,13 +216,25 @@ KML.C - changed function GetStringParam(), changed return variable qualifier from LPTSTR to LPCTSTR +PCH.H +- added INVALID_SET_FILE_POINTER definition + +RESOURCE.H +- added definitions for Debugger Settings handling + RPL.C +- renamed definition DOEREAL to DOEREL and adjusted usage in + function RPL_SkipOb() and RPL_ObjectSize() - bugfix in function RPL_SkipOb() and RPL_ObjectSize(), the object at address 0x02BAA was always interpreted as =DOACPTR, a constant-length object consisting of two 5-nibble addresses, on the HP48S series the object is interpreted as =DOEXT1, an object with 5-nibble length information followed by data +SETTINGS.C +- changed function ReadSettings() and WriteSettings(), added item + "Symbolic" in section [Disassembler] in the INI-File + Service Pack 44 for Emu48 Version 1.0 diff --git a/source/DDESERV.C b/source/DDESERV.C index 8b8962d..998a110 100644 --- a/source/DDESERV.C +++ b/source/DDESERV.C @@ -60,6 +60,7 @@ HDDEDATA CALLBACK DdeCallback(UINT iType,UINT iFmt,HCONV hConv, { // turn on HP KeyboardEvent(TRUE,0,0x8000); + Sleep(200); KeyboardEvent(FALSE,0,0x8000); } diff --git a/source/DEBUGDLL.C b/source/DEBUGDLL.C index 57eea55..9aa6cb9 100644 --- a/source/DEBUGDLL.C +++ b/source/DEBUGDLL.C @@ -195,6 +195,22 @@ VOID SaveBreakpointList(HANDLE hFile) UNREFERENCED_PARAMETER(hFile); } +// +// create a copy of the breakpoint list +// +VOID CreateBackupBreakpointList(VOID) +{ + return; +} + +// +// restore the breakpoint list from the copy +// +VOID RestoreBackupBreakpointList(VOID) +{ + return; +} + //################ //# diff --git a/source/DEBUGGER.C b/source/DEBUGGER.C index 4d0176f..0f03c77 100644 --- a/source/DEBUGGER.C +++ b/source/DEBUGGER.C @@ -34,6 +34,8 @@ #define RT_TOOLBAR MAKEINTRESOURCE(241) // MFC toolbar resource type +#define CODELABEL 0x80000000 // label in code window + typedef struct CToolBarData { WORD wVersion; @@ -168,6 +170,9 @@ static INT nDbgPosY = 0; static WORD wBreakpointCount = 0; // number of breakpoints static BP_T sBreakpoint[MAXBREAKPOINTS]; // breakpoint table +static WORD wBackupBreakpointCount = 0; // number of breakpoints +static BP_T sBackupBreakpoint[MAXBREAKPOINTS]; // breakpoint table + static INT nRplBreak; // RPL breakpoint static DWORD dwAdrLine[MAXCODELINES]; // addresses of disassember lines in code window @@ -193,10 +198,12 @@ static CHIPSET OldChipset; // old chipset content static BOOL bRegUpdate[REG_SIZE]; // register update table static HBITMAP hBmpCheckBox; // checked and unchecked bitmap +static HFONT hFontBold; // bold font for symbol labels in code window // function prototypes static BOOL OnMemFind(HWND hDlg); static BOOL OnProfile(HWND hDlg); +static BOOL OnSettings(HWND hDlg); static INT_PTR OnNewValue(LPTSTR lpszValue); static VOID OnEnterAddress(HWND hDlg, DWORD *dwValue); static BOOL OnEditBreakpoint(HWND hDlg); @@ -210,6 +217,23 @@ static VOID UpdateProfileWnd(HWND hDlg); //# //################ +// +// load external rpl symbol table +// +static BOOL LoadSymbTable(VOID) +{ + TCHAR szSymbFilename[MAX_PATH]; + TCHAR szItemname[16]; + + wsprintf(szItemname,_T("Symb%c"),(TCHAR) cCurrentRomType); + ReadSettingsString(_T("Disassembler"),szItemname,_T(""),szSymbFilename,ARRAYSIZEOF(szSymbFilename)); + + if (*szSymbFilename == 0) // no reference table defined + return FALSE; // no success + + return RplLoadTable(szSymbFilename); // load external reference table +} + // // disable menu keys // @@ -289,6 +313,27 @@ static VOID SetMappingMenu(HWND hDlg,UINT uID) return; }; +// +// get address of cursor in memory window +// +static DWORD GetMemCurAddr(HWND hDlg) +{ + INT i,nPos; + DWORD dwAddr = dwAdrMem; + + for (i = 0; i < MEMWNDMAX; ++i) // scan all memory cols + { + // column has cursor + if ((nPos = (INT) SendDlgItemMessage(hDlg,nCol[i],LB_GETCURSEL,0,0)) != LB_ERR) + { + dwAddr += (DWORD) (nPos * MEMWNDMAX + i) * 2; + dwAddr &= (dwMapDataSize - 1); + break; + } + } + return dwAddr; +} + // // set/reset breakpoint // @@ -426,25 +471,66 @@ static VOID StrToReg(BYTE *pReg, WORD wNib, LPTSTR lpszValue) // // write code window // -static VOID ViewCodeWnd(HWND hWnd, DWORD dwAddress) +static INT ViewCodeWnd(HWND hWnd, DWORD dwAddress) { - INT i,j; - TCHAR szAddress[64]; + LPCTSTR lpszName; + TCHAR szAddress[64]; + DWORD dwNxtAddr; + INT i,j,nLinePC; + + nLinePC = -1; // PC not shown (no selection) _ASSERT(disassembler_map == MEM_MAP); // disassemble in mapped mode + dwAddress &= 0xFFFFF; // adjust to Saturn address range SendMessage(hWnd,WM_SETREDRAW,FALSE,0); SendMessage(hWnd,LB_RESETCONTENT,0,0); for (i = 0; i < MAXCODELINES; ++i) { + // entry has a name + if (disassembler_symb && (lpszName = RplGetName(dwAddress)) != NULL) + { + // save address as label + dwAdrLine[i] = dwAddress | CODELABEL; + + szAddress[0] = _T('='); + lstrcpyn(&szAddress[1],lpszName,ARRAYSIZEOF(szAddress)-1); + SendMessage(hWnd,LB_ADDSTRING,0,(LPARAM) szAddress); + if (++i == MAXCODELINES) break; + } + + // remember line of PC + if (dwAddress == Chipset.pc) nLinePC = i; + dwAdrLine[i] = dwAddress; j = wsprintf(szAddress, (dwAddress == Chipset.pc) ? _T("%05lX-%c ") : _T("%05lX "), dwAddress,nRplBreak ? _T('R') : _T('>')); - dwAddress = disassemble(dwAddress,&szAddress[j],VIEW_SHORT); + + dwNxtAddr = (dwAddress + 5) & 0xFFFFF; + + // check if address content is a PCO (Primitive Code Object) + // make sure when the PC points to such an address that it's + // interpreted as opcode + if ((dwAddress != Chipset.pc) && (Read5(dwAddress) == dwNxtAddr)) + { + if (disassembler_mode == HP_MNEMONICS) + { + _tcscat(&szAddress[j],_T("CON(5) (*)+5")); + } + else + { + wsprintf(&szAddress[j],_T("dcr.5 $%05x"),dwNxtAddr); + } + dwAddress = dwNxtAddr; + } + else + { + dwAddress = disassemble(dwAddress,&szAddress[j]); + } SendMessage(hWnd,LB_ADDSTRING,0,(LPARAM) szAddress); } SendMessage(hWnd,WM_SETREDRAW,TRUE,0); - return; + return nLinePC; } // @@ -532,7 +618,7 @@ static VOID ViewMemWnd(HWND hDlg, DWORD dwAddress) // static VOID UpdateCodeWnd(HWND hDlg) { - DWORD dwAddress; + DWORD dwAddress,dwPriorAddr; INT i,j; HWND hWnd = GetDlgItem(hDlg,IDC_DEBUG_CODE); @@ -551,15 +637,28 @@ static VOID UpdateCodeWnd(HWND hDlg) if (i == j) // address not found { dwAddress = Chipset.pc; // begin with actual pc - i = 0; // set cursor on top + + // check if current pc is the begin of a PCO, show PCO address + dwPriorAddr = (dwAddress - 5) & 0xFFFFF; + if (Read5(dwPriorAddr) == dwAddress) + dwAddress = dwPriorAddr; } - if (i > 10) // cursor near bottom line + else { - dwAddress = dwAdrLine[i-10]; // move that pc is in line 11 - i = 10; // set cursor to actual pc + if (i > 10) // cursor near bottom line + { + j = 10; // pc to line 11 + + // new address line is label + if ((dwAdrLine[i-11] & CODELABEL) != 0) + --j; // pc to line 10 + + dwAddress = dwAdrLine[i-j]; // move that pc is in line 11 + } } - ViewCodeWnd(hWnd,dwAddress); // init code area - SendMessage(hWnd,LB_SETCURSEL,i,0); // set + + i = ViewCodeWnd(hWnd,dwAddress); // init code area + SendMessage(hWnd,LB_SETCURSEL,i,0); // set cursor on actual pc return; } @@ -873,9 +972,9 @@ static BOOL OnKeyF5(HWND hDlg) // clear "->" in code window for (i = 0; i < MAXCODELINES; ++i) { - SendMessage(hWnd,LB_GETTEXT,i,(LPARAM) szBuf); - if (szBuf[5] != _T(' ')) // PC in window + if (dwAdrLine[i] == Chipset.pc) // PC in window { + SendMessage(hWnd,LB_GETTEXT,i,(LPARAM) szBuf); szBuf[5] = szBuf[6] = _T(' '); SendMessage(hWnd,LB_DELETESTRING,i,0); SendMessage(hWnd,LB_INSERTSTRING,i,(LPARAM) szBuf); @@ -997,7 +1096,7 @@ static BOOL OnCodeGoAdr(HWND hDlg) if (dwAddress != -1) { HWND hWnd = GetDlgItem(hDlg,IDC_DEBUG_CODE); - ViewCodeWnd(hWnd,dwAddress & 0xFFFFF); + ViewCodeWnd(hWnd,dwAddress); SendMessage(hWnd,LB_SETCURSEL,0,0); } return -1; // call windows default handler @@ -1499,6 +1598,35 @@ static __inline BOOL OnKeyUpDown(HWND hWnd, WPARAM wParam) return -1; } +// +// handle (page) +/- keys in memory window +// +static __inline BOOL OnKeyPlusMinus(HWND hWnd, WPARAM wParam) +{ + INT wX, wY; + INT nId; + + nId = GetDlgCtrlID(hWnd); // control ID of window + + for (wX = 0; wX < MEMWNDMAX; ++wX) // scan all Id's + if (nCol[wX] == nId) // found ID + break; + + if (wX == MEMWNDMAX) return -1; // not IDC_DEBUG_MEM window, default handler + + wY = HIWORD(wParam); // get focus + + if (LOWORD(wParam) == VK_ADD) // move start address of memory view + dwAdrMem++; + else + dwAdrMem--; + dwAdrMem &= (dwMapDataSize - 1); + + ViewMemWnd(GetParent(hWnd),dwAdrMem); // redraw memory view + SendMessage(hWnd,LB_SETCURSEL,wY,0); // set focus at old position + return -1; +} + // // handle keys in code window // @@ -1511,18 +1639,20 @@ static __inline BOOL OnKeyCodeWnd(HWND hDlg, WPARAM wParam) // down key on last line if ((wKey == VK_DOWN || wKey == VK_NEXT) && wItem == MAXCODELINES - 1) { - ViewCodeWnd(hWnd,dwAdrLine[1]); - SendMessage(hWnd,LB_SETCURSEL,wItem,0); + WORD i = ((dwAdrLine[0] & CODELABEL) != 0) ? 2 : 1; + + ViewCodeWnd(hWnd,dwAdrLine[i]); + SendMessage(hWnd,LB_SETCURSEL,wItem-i,0); } // up key on first line if ((wKey == VK_UP || wKey == VK_PRIOR) && wItem == 0) { - if (dwAdrLine[0] > 0) ViewCodeWnd(hWnd,dwAdrLine[0]-1); + ViewCodeWnd(hWnd,dwAdrLine[0]-1); } if (wKey == _T('G')) return OnCodeGoAdr(GetParent(hWnd)); // goto new address - return -1; + return -1; // process key } // @@ -1533,7 +1663,8 @@ static __inline BOOL OnDrawCodeWnd(LPDRAWITEMSTRUCT lpdis) TCHAR szBuf[64]; COLORREF crBkColor; COLORREF crTextColor; - BOOL bBrk,bPC; + HFONT hFont; + BOOL bBrk,bPC,bLabel; if (lpdis->itemID == -1) // no item in list box return TRUE; @@ -1541,41 +1672,53 @@ static __inline BOOL OnDrawCodeWnd(LPDRAWITEMSTRUCT lpdis) // get item text SendMessage(lpdis->hwndItem,LB_GETTEXT,lpdis->itemID,(LPARAM) szBuf); - // check for codebreakpoint - bBrk = CheckBreakpoint(dwAdrLine[lpdis->itemID],1,BP_EXEC); - bPC = szBuf[5] != _T(' '); // check if line of program counter + // line is a label + bLabel = ((dwAdrLine[lpdis->itemID] & CODELABEL) != 0); - crTextColor = COLOR_WHITE; // standard text color - - if (lpdis->itemState & ODS_SELECTED) // cursor line + if (!bLabel) { - if (bPC) // PC line + // check for codebreakpoint + bBrk = CheckBreakpoint(dwAdrLine[lpdis->itemID],1,BP_EXEC); + bPC = szBuf[5] != _T(' '); // check if line of program counter + + crTextColor = COLOR_WHITE; // standard text color + + if (lpdis->itemState & ODS_SELECTED) // cursor line { - crBkColor = bBrk ? COLOR_DKGRAY : COLOR_TEAL; + if (bPC) // PC line + { + crBkColor = bBrk ? COLOR_DKGRAY : COLOR_TEAL; + } + else // normal line + { + crBkColor = bBrk ? COLOR_PURPLE : COLOR_NAVY; + } } - else // normal line + else // not cursor line { - crBkColor = bBrk ? COLOR_PURPLE : COLOR_NAVY; + if (bPC) // PC line + { + crBkColor = bBrk ? COLOR_OLIVE : COLOR_GREEN; + } + else // normal line + { + if (bBrk) + { + crBkColor = COLOR_MAROON; + } + else + { + crBkColor = COLOR_WHITE; + crTextColor = COLOR_BLACK; + } + } } } - else // not cursor line + else // label { - if (bPC) // PC line - { - crBkColor = bBrk ? COLOR_OLIVE : COLOR_GREEN; - } - else // normal line - { - if (bBrk) - { - crBkColor = COLOR_MAROON; - } - else - { - crBkColor = COLOR_WHITE; - crTextColor = COLOR_BLACK; - } - } + crBkColor = COLOR_WHITE; + crTextColor = COLOR_NAVY; + hFont = SelectObject(lpdis->hDC,hFontBold); } // write Text @@ -1588,6 +1731,8 @@ static __inline BOOL OnDrawCodeWnd(LPDRAWITEMSTRUCT lpdis) SetBkColor(lpdis->hDC,crBkColor); SetTextColor(lpdis->hDC,crTextColor); + if (bLabel) SelectObject(lpdis->hDC,hFont); + if (lpdis->itemState & ODS_FOCUS) // redraw focus DrawFocusRect(lpdis->hDC,&lpdis->rcItem); @@ -1741,6 +1886,7 @@ static INT_PTR CALLBACK Debugger(HWND hDlg, UINT message, WPARAM wParam, LPARAM TEXTMETRIC tm; HDC hDC; HFONT hFont; + HMENU hSysMenu; INT i; switch (message) @@ -1749,6 +1895,17 @@ static INT_PTR CALLBACK Debugger(HWND hDlg, UINT message, WPARAM wParam, LPARAM SetWindowLocation(hDlg,nDbgPosX,nDbgPosY); if (bAlwaysOnTop) SetWindowPos(hDlg,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE); SendMessage(hDlg,WM_SETICON,ICON_BIG,(LPARAM) LoadIcon(hApp,MAKEINTRESOURCE(IDI_EMU48))); + + // add Settings item to sysmenu + _ASSERT((IDM_DEBUG_SETTINGS & 0xFFF0) == IDM_DEBUG_SETTINGS); + _ASSERT(IDM_DEBUG_SETTINGS < 0xF000); + + if ((hSysMenu = GetSystemMenu(hDlg,FALSE)) != NULL) + { +// VERIFY(AppendMenu(hSysMenu,MF_SEPARATOR,0,NULL)); +// VERIFY(AppendMenu(hSysMenu,MF_STRING,IDM_DEBUG_SETTINGS,_T("Debugger Settings..."))); + } + hWndToolbar = CreateToolbar(hDlg); // add toolbar CheckMenuItem(GetMenu(hDlg),ID_BREAKPOINTS_NOP3, bDbgNOP3 ? MF_CHECKED : MF_UNCHECKED); CheckMenuItem(GetMenu(hDlg),ID_BREAKPOINTS_DOCODE,bDbgCode ? MF_CHECKED : MF_UNCHECKED); @@ -1774,6 +1931,12 @@ static INT_PTR CALLBACK Debugger(HWND hDlg, UINT message, WPARAM wParam, LPARAM hMenuStack = GetSubMenu(hMenuMainStack, 0); _ASSERT(hMenuStack); + // bold font for symbol labels in code window + hDC = GetDC(hDlg); + VERIFY(hFontBold = CreateFont(-MulDiv(8,GetDeviceCaps(hDC,LOGPIXELSY),72),0,0,0,FW_BOLD,0,0,0,ANSI_CHARSET, + OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FF_DONTCARE,_T("Arial"))); + ReleaseDC(hDlg,hDC); + // font settings SendDlgItemMessage(hDlg,IDC_STATIC_CODE, WM_SETFONT,(WPARAM)GetStockObject(DEFAULT_GUI_FONT),MAKELPARAM(FALSE,0)); SendDlgItemMessage(hDlg,IDC_STATIC_REGISTERS,WM_SETFONT,(WPARAM)GetStockObject(DEFAULT_GUI_FONT),MAKELPARAM(FALSE,0)); @@ -1790,6 +1953,8 @@ static INT_PTR CALLBACK Debugger(HWND hDlg, UINT message, WPARAM wParam, LPARAM // init "Follow" menu entry in debugger "Memory" context menu CheckMenuItem(hMenuMem,uIDFol,MF_CHECKED); + LoadSymbTable(); // load external rpl symbol table + InitMemMap(hDlg); // init memory mapping table InitBsArea(hDlg); // init bank switcher list box DisableMenuKeys(hDlg); // set debug menu keys into run state @@ -1825,6 +1990,8 @@ static INT_PTR CALLBACK Debugger(HWND hDlg, UINT message, WPARAM wParam, LPARAM GetWindowPlacement(hDlg, &wndpl); nDbgPosX = wndpl.rcNormalPosition.left; nDbgPosY = wndpl.rcNormalPosition.top; + RplDeleteTable(); // delete rpl symbol table + DeleteObject(hFontBold); // delete bold font DestroyMenu(hMenuMainCode); DestroyMenu(hMenuMainMem); DestroyMenu(hMenuMainStack); @@ -1841,6 +2008,13 @@ static INT_PTR CALLBACK Debugger(HWND hDlg, UINT message, WPARAM wParam, LPARAM OnUpdate(hDlg); return TRUE; + case WM_SYSCOMMAND: + if ((wParam & 0xFFF0) == IDM_DEBUG_SETTINGS) + { + return OnSettings(hDlg); + } + break; + case WM_COMMAND: switch (HIWORD(wParam)) { @@ -1932,14 +2106,16 @@ static INT_PTR CALLBACK Debugger(HWND hDlg, UINT message, WPARAM wParam, LPARAM case IDC_DEBUG_MEM_COL7: switch (LOWORD(wParam)) { - case _T('G'): return OnMemGoAdr(GetParent((HWND) lParam)); - case _T('F'): return OnMemFind(GetParent((HWND) lParam)); + case _T('G'): return OnMemGoAdr(GetParent((HWND) lParam)); + case _T('F'): return OnMemFind(GetParent((HWND) lParam)); case VK_RIGHT: - case VK_LEFT: return OnKeyRightLeft((HWND) lParam, wParam); + case VK_LEFT: return OnKeyRightLeft((HWND) lParam, wParam); case VK_NEXT: case VK_PRIOR: case VK_DOWN: - case VK_UP: return OnKeyUpDown((HWND) lParam, wParam); + case VK_UP: return OnKeyUpDown((HWND) lParam, wParam); + case VK_ADD: + case VK_SUBTRACT: return OnKeyPlusMinus((HWND) lParam, wParam); } break; } @@ -2280,6 +2456,210 @@ static BOOL OnProfile(HWND hDlg) return -1; // call windows default handler } + +//################ +//# +//# Settings dialog box +//# +//################ + +// +// copy edit box content to current combox box selection +// +static VOID CopyEditToCombo(HWND hDlg,HWND hWndComboBox) +{ + TCHAR szSymbFilename[MAX_PATH]; + INT i; + + // get current selection + if ((i = (INT) SendMessage(hWndComboBox,CB_GETCURSEL,0,0)) != CB_ERR) + { + // delete associated name + HeapFree(hHeap,0,(LPVOID) SendMessage(hWndComboBox,CB_GETITEMDATA,i,0)); + + // append actual name + GetDlgItemText(hDlg,IDC_DEBUG_SET_FILE,szSymbFilename,ARRAYSIZEOF(szSymbFilename)); + SendMessage(hWndComboBox,CB_SETITEMDATA,i,(LPARAM) DuplicateString(szSymbFilename)); + } + return; +} + +// +// copy edit box content to current combox box selection +// +static VOID CopyComboToEdit(HWND hDlg,HWND hWndComboBox) +{ + HWND hWnd; + INT i; + + // get current selection + if ((i = (INT) SendMessage(hWndComboBox,CB_GETCURSEL,0,0)) != CB_ERR) + { + // update file edit box + hWnd = GetDlgItem(hDlg,IDC_DEBUG_SET_FILE); + SetWindowText(hWnd,(LPTSTR) SendMessage(hWndComboBox,CB_GETITEMDATA,i,0)); + SendMessage(hWnd,EM_SETSEL,0,-1); + } + return; +} + +// +// settings browse dialog +// +static BOOL OnBrowseSettings(HWND hDlg, HWND hWndFilename) +{ + TCHAR szBuffer[MAX_PATH]; + OPENFILENAME ofn; + + ZeroMemory(&ofn, sizeof(OPENFILENAME)); + ofn.lStructSize = sizeof(OPENFILENAME); + ofn.hwndOwner = hDlg; + ofn.lpstrFilter = + _T("HP-Tools Linker File (*.O)\0*.O\0") + _T("All Files (*.*)\0*.*\0"); + ofn.lpstrDefExt = _T("O"); + ofn.nFilterIndex = 1; + ofn.lpstrFile = szBuffer; + ofn.lpstrFile[0] = 0; + ofn.nMaxFile = ARRAYSIZEOF(szBuffer); + ofn.Flags = OFN_EXPLORER|OFN_HIDEREADONLY|OFN_FILEMUSTEXIST|OFN_PATHMUSTEXIST; + if (GetOpenFileName(&ofn)) + { + SetWindowText(hWndFilename,szBuffer); + SendMessage(hWndFilename,EM_SETSEL,0,-1); + } + return 0; +} + +// +// enter settings dialog +// +static INT_PTR CALLBACK Settings(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) +{ + HWND hWnd; + TCHAR szSymbFilename[MAX_PATH]; + TCHAR szItemname[16]; + INT i,nMax; + + switch (message) + { + case WM_INITDIALOG: + // set disassembler mode + CheckDlgButton(hDlg,(disassembler_mode == HP_MNEMONICS) ? IDC_DISASM_HP : IDC_DISASM_CLASS,BST_CHECKED); + // set symbolic enable check button + CheckDlgButton(hDlg,IDC_DEBUG_SET_SYMB,disassembler_symb); + // fill model combo box and corresponding file edit box + { + LPCTSTR lpszModels; + TCHAR cModel[] = _T(" "); + + // fill model combo box + hWnd = GetDlgItem(hDlg,IDC_DEBUG_SET_MODEL); + for (lpszModels = _T(MODELS); *lpszModels != 0; ++lpszModels) + { + cModel[0] = *lpszModels; // string with model character + i = (INT) SendMessage(hWnd,CB_ADDSTRING,0,(LPARAM) cModel); + + // get filename + wsprintf(szItemname,_T("Symb%c"),cModel[0]); + ReadSettingsString(_T("Disassembler"),szItemname,_T(""),szSymbFilename,ARRAYSIZEOF(szSymbFilename)); + + // append filename to model + SendMessage(hWnd,CB_SETITEMDATA,i,(LPARAM) DuplicateString(szSymbFilename)); + } + + // select for actual model + cModel[0] = (TCHAR) cCurrentRomType; + if ((i = (INT) SendMessage(hWnd,CB_SELECTSTRING,0,(LPARAM) cModel)) != CB_ERR) + { + LPTSTR lpszFilename = (LPTSTR) SendMessage(hWnd,CB_GETITEMDATA,i,0); + + // fill file edit box + hWnd = GetDlgItem(hDlg,IDC_DEBUG_SET_FILE); + SetWindowText(hWnd,lpszFilename); + SendMessage(hWnd,EM_SETSEL,0,-1); + } + } + return TRUE; + case WM_COMMAND: + switch(LOWORD(wParam)) + { + case IDC_DEBUG_SET_MODEL: + // combo box changing item + if (HIWORD(wParam) == CBN_SETFOCUS) + { + // update associated name with file edit box + CopyEditToCombo(hDlg,(HWND) lParam); + } + // new combo box item selected + if (HIWORD(wParam) == CBN_SELENDOK) + { + // update file edit box with associated name + CopyComboToEdit(hDlg,(HWND) lParam); + } + break; + case IDC_DEBUG_SET_BROWSE: + return OnBrowseSettings(hDlg,GetDlgItem(hDlg,IDC_DEBUG_SET_FILE)); + case IDOK: + // set disassembler mode + disassembler_mode = IsDlgButtonChecked(hDlg,IDC_DISASM_HP) ? HP_MNEMONICS : CLASS_MNEMONICS; + // set symbolic enable check button + disassembler_symb = IsDlgButtonChecked(hDlg,IDC_DEBUG_SET_SYMB); + // update associated name with file edit box + hWnd = GetDlgItem(hDlg,IDC_DEBUG_SET_MODEL); + CopyEditToCombo(hDlg,hWnd); + // write all symbol filenames to registry + nMax = (INT) SendMessage(hWnd,CB_GETCOUNT,0,0); + for (i = 0; i < nMax; ++i) + { + LPTSTR lpszFilename; + + SendMessage(hWnd,CB_GETLBTEXT,i,(LPARAM) szSymbFilename); + wsprintf(szItemname,_T("Symb%c"),szSymbFilename[0]); + lpszFilename = (LPTSTR) SendMessage(hWnd,CB_GETITEMDATA,i,0); + if (*lpszFilename == 0) // empty + { + DelSettingsKey(_T("Disassembler"),szItemname); + } + else + { + WriteSettingsString(_T("Disassembler"),szItemname,lpszFilename); + } + } + RplDeleteTable(); // delete rpl symbol table + LoadSymbTable(); // reload external rpl symbol table + // redraw debugger code view + ViewCodeWnd(GetDlgItem(GetParent(hDlg),IDC_DEBUG_CODE),dwAdrLine[0]); + // no break + case IDCANCEL: + // free combo box items + hWnd = GetDlgItem(hDlg,IDC_DEBUG_SET_MODEL); + nMax = (INT) SendMessage(hWnd,CB_GETCOUNT,0,0); + for (i = 0; i < nMax; ++i) + { + LPTSTR lpszFilename = (LPTSTR) SendMessage(hWnd,CB_GETITEMDATA,i,0); + if (lpszFilename != NULL) + { + HeapFree(hHeap,0,lpszFilename); + } + } + EndDialog(hDlg,LOWORD(wParam)); + return TRUE; + } + } + return FALSE; + UNREFERENCED_PARAMETER(wParam); + UNREFERENCED_PARAMETER(lParam); +} + +static BOOL OnSettings(HWND hDlg) +{ + if (DialogBox(hApp, MAKEINTRESOURCE(IDD_DEBUG_SETTINGS), hDlg, (DLGPROC)Settings) == -1) + AbortMessage(_T("Settings Dialog Box Creation Error !")); + return 0; +} + + //################ //# //# New Value dialog box @@ -2361,16 +2741,16 @@ static INT_PTR OnNewValue(LPTSTR lpszValue) // static INT_PTR CALLBACK EnterAddr(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { - static DWORD *dwAddress; + static DWORD *pdwAddress; HWND hWnd; - TCHAR szBuffer[8]; + TCHAR szBuffer[64]; LONG i; switch (message) { case WM_INITDIALOG: - dwAddress = (DWORD *) lParam; + pdwAddress = (DWORD *) lParam; return TRUE; case WM_COMMAND: wParam = LOWORD(wParam); @@ -2379,17 +2759,23 @@ static INT_PTR CALLBACK EnterAddr(HWND hDlg, UINT message, WPARAM wParam, LPARAM case IDOK: hWnd = GetDlgItem(hDlg,IDC_ENTERADR); GetWindowText(hWnd,szBuffer,ARRAYSIZEOF(szBuffer)); - // test if valid hex address - for (i = 0; i < (LONG) lstrlen(szBuffer); ++i) + + // if address is not a symbol name decode number + if ( !disassembler_symb || szBuffer[0] != _T('=') + || RplGetAddr(&szBuffer[1],pdwAddress)) { - if (_istxdigit(szBuffer[i]) == 0) + // test if valid hex address + for (i = 0; i < (LONG) lstrlen(szBuffer); ++i) { - SendMessage(hWnd,EM_SETSEL,0,-1); - SetFocus(hWnd); // focus to edit control - return FALSE; + if (_istxdigit(szBuffer[i]) == 0) + { + SendMessage(hWnd,EM_SETSEL,0,-1); + SetFocus(hWnd); // focus to edit control + return FALSE; + } } + if (*szBuffer) _stscanf(szBuffer,_T("%6X"),pdwAddress); } - if (*szBuffer) _stscanf(szBuffer,_T("%6X"),dwAddress); // no break case IDCANCEL: EndDialog(hDlg,wParam); @@ -2803,8 +3189,18 @@ static INT_PTR CALLBACK InfoIntr(HWND hDlg, UINT message, WPARAM wParam, LPARAM SendMessage(hWnd,LB_RESETCONTENT,0,0); for (i = wInstrRp; i != wInstrWp; i = (i + 1) % wInstrSize) { + LPCTSTR lpszName; + + // entry has a name + if (disassembler_symb && (lpszName = RplGetName(pdwInstrArray[i])) != NULL) + { + szBuffer[0] = _T('='); + lstrcpyn(&szBuffer[1],lpszName,ARRAYSIZEOF(szBuffer)-1); + SendMessage(hWnd,LB_ADDSTRING,0,(LPARAM) szBuffer); + } + j = wsprintf(szBuffer,_T("%05lX "),pdwInstrArray[i]); - disassemble(pdwInstrArray[i],&szBuffer[j],VIEW_SHORT); + disassemble(pdwInstrArray[i],&szBuffer[j]); lIndex = (LONG) SendMessage(hWnd,LB_ADDSTRING,0,(LPARAM) szBuffer); } SendMessage(hWnd,WM_SETREDRAW,TRUE,0); @@ -2857,9 +3253,9 @@ static BOOL CALLBACK InfoWoRegister(HWND hDlg, UINT message, DWORD wParam, LONG SetDlgItemText(hDlg,IDC_ADDR30_34,szBuffer); return TRUE; case WM_COMMAND: - if ((LOWORD(wParam) == IDOK)) + if ((LOWORD(wParam) == IDCANCEL)) { - EndDialog(hDlg,IDOK); + EndDialog(hDlg,IDCANCEL); return TRUE; } } @@ -2877,7 +3273,7 @@ static BOOL OnInfoWoRegister(HWND hDlg) //################ //# -//# File operations +//# Breakpoint list operations //# //################ @@ -2941,3 +3337,35 @@ VOID SaveBreakpointList(HANDLE hFile) } return; } + +// +// create a copy of the breakpoint list +// +VOID CreateBackupBreakpointList(VOID) +{ + _ASSERT(sizeof(sBackupBreakpoint) == sizeof(sBreakpoint)); + + wBackupBreakpointCount = wBreakpointCount; + + if (wBreakpointCount > 0) // list not empty + { + CopyMemory(sBackupBreakpoint,sBreakpoint,sizeof(sBackupBreakpoint)); + } + return; +} + +// +// restore the breakpoint list from the copy +// +VOID RestoreBackupBreakpointList(VOID) +{ + _ASSERT(sizeof(sBackupBreakpoint) == sizeof(sBreakpoint)); + + wBreakpointCount = wBackupBreakpointCount; + + if (wBreakpointCount > 0) // list not empty + { + CopyMemory(sBreakpoint,sBackupBreakpoint,sizeof(sBreakpoint)); + } + return; +} diff --git a/source/DEBUGGER.H b/source/DEBUGGER.H index df3ecf3..78224f5 100644 --- a/source/DEBUGGER.H +++ b/source/DEBUGGER.H @@ -35,3 +35,5 @@ extern VOID DisableDebugger(VOID); extern LRESULT OnToolDebug(VOID); extern VOID LoadBreakpointList(HANDLE hFile); extern VOID SaveBreakpointList(HANDLE hFile); +extern VOID CreateBackupBreakpointList(VOID); +extern VOID RestoreBackupBreakpointList(VOID); diff --git a/source/DISASM.C b/source/DISASM.C index cf8ff27..9954589 100644 --- a/source/DISASM.C +++ b/source/DISASM.C @@ -15,6 +15,7 @@ #define TAB_SKIP 8 BOOL disassembler_mode = HP_MNEMONICS; +BOOL disassembler_symb = FALSE; WORD disassembler_map = MEM_MAP; static LPCTSTR hex[] = @@ -278,7 +279,9 @@ static BYTE rn_port2 (DWORD *p) return *(pbyVal + d); } -static BYTE read_nibble (DWORD *p) +// global functions + +BYTE read_nibble (DWORD *p) { BYTE (*pnread[])(DWORD *) = { rn_map, rn_rom, rn_ram, rn_port1, rn_port2 }; @@ -327,8 +330,10 @@ static __inline LPTSTR append_field (LPTSTR buf, BYTE fn) static LPTSTR append_imm_nibble (LPTSTR buf, DWORD *addr, int n) { int i; - TCHAR t[16]; + BYTE t[16]; + LPTSTR p = buf; // save start of buffer + if (disassembler_mode == CLASS_MNEMONICS) { *buf++ = _T('#'); @@ -342,91 +347,101 @@ static LPTSTR append_imm_nibble (LPTSTR buf, DWORD *addr, int n) } if (n > 1) { + DWORD dwAddr = 0; // decoded address + for (i = 0; i < n; i++) - t[i] = hex[disassembler_mode][read_nibble (addr)]; + t[i] = read_nibble (addr); + for (i = n - 1; i >= 0; i--) { - *buf++ = t[i]; + dwAddr = (dwAddr << 4) | t[i]; + *buf++ = hex[disassembler_mode][t[i]]; } *buf = 0; + + if (n == 5) // 5 nibble address + { + LPCTSTR lpszName; + + if (disassembler_symb && (lpszName = RplGetName(dwAddr)) != NULL) + { + // overwrite number with symbolic name + buf = append_str(p, _T("=")); + buf = append_str(buf, lpszName); + } + } } - else + else // single nibble { - wsprintf (t, _T("%d"), read_nibble (addr)); - buf = append_str (buf, t); + buf += wsprintf (buf, _T("%d"), read_nibble (addr)); } return buf; } -static LPTSTR append_addr (LPTSTR buf, DWORD addr) +static LPTSTR append_numaddr (LPTSTR buf, DWORD addr) { int shift; - long mask; if (disassembler_mode == CLASS_MNEMONICS) { *buf++ = _T('$'); } - for (mask = 0xf0000, shift = 16; mask != 0; mask >>= 4, shift -= 4) - *buf++ = hex[disassembler_mode][(addr & mask) >> shift]; + for (shift = 16; shift >= 0; shift -= 4) + *buf++ = hex[disassembler_mode][(addr >> shift) & 0xF]; *buf = 0; return buf; } +static LPTSTR append_addr (LPTSTR buf, DWORD addr) +{ + LPCTSTR lpszName; + + if (disassembler_symb && (lpszName = RplGetName(addr)) != NULL) + { + buf = append_str(buf, _T("=")); + buf = append_str(buf, lpszName); + } + else // no symbol + { + buf = append_numaddr (buf, addr); + } + return buf; +} + static LPTSTR append_r_addr (LPTSTR buf, DWORD *pc, long disp, int n, int offset) { + LPCTSTR lpszName; long sign; sign = 1 << (n * 4 - 1); if (disp & sign) // negative value? disp |= ~(sign - 1); // expand it to long - *pc += disp; - if (disp < 0) + *pc = (*pc + disp) & 0xFFFFF; + + if (disassembler_symb && (lpszName = RplGetName(*pc)) != NULL) { - buf = append_str(buf, _T("-")); - disp = -disp - offset; + buf = append_str(buf, _T("=")); // show symbol + buf = append_str(buf, lpszName); } - else + else // no symbol { - buf = append_str(buf, _T("+")); - disp += offset; - } - buf = append_addr(buf, disp); - return buf; -} - -static LPTSTR append_pc_comment (LPTSTR buf, DWORD pc, BOOL view) -{ - LPTSTR p = buf; - - if (view == VIEW_LONG) // output of address in remarks - { - while (lstrlen (buf) < 4 * TAB_SKIP) - p = append_tab (buf); - - switch (disassembler_mode) + if (disp < 0) { - case HP_MNEMONICS: - p = append_str (p, _T("# Address: ")); - p = append_addr (p, pc); - break; - case CLASS_MNEMONICS: - p = append_str (p, _T("; address: ")); - p = append_addr (p, pc); - break; - default: - p = append_str (p, _T("Unknown disassembler mode")); - break; + buf = append_str(buf, _T("-")); + disp = -disp - offset; } + else + { + buf = append_str(buf, _T("+")); + disp += offset; + } + buf = append_numaddr(buf, disp); // show offset + + buf = append_str(buf, _T(" [")); + buf = append_numaddr(buf, *pc); // show absolute address + buf = append_str(buf, _T("]")); } - else // output of address in brackets - { - while (*p) ++p; - p = append_str (p, _T(" [")); - p = append_addr (p, pc); - p = append_str (p, _T("]")); - } - return p; + return buf; } static LPTSTR append_hst_bits (LPTSTR buf, int n) @@ -731,7 +746,7 @@ static LPTSTR disasm_1 (DWORD *addr, LPTSTR out) return p; } -static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) +static LPTSTR disasm_8 (DWORD *addr, LPTSTR out) { BYTE n; BYTE fn; @@ -858,7 +873,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", GOYES ")); p = append_r_addr (p, &pc, disp, 2, 5); - p = append_pc_comment (out, pc, view); } else p = append_str (p, _T(", RTNYES")); @@ -874,7 +888,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", ")); p = append_r_addr (p, &pc, disp, 2, 5); - p = append_pc_comment (out, pc, view); } break; default: @@ -1182,7 +1195,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T("GOYES ")); p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } else p = append_str (p, _T("RTNYES")); @@ -1197,7 +1209,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", ")); p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } p = append_hst_bits (out, n); break; @@ -1246,7 +1257,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", GOYES ")); p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } else p = append_str (p, _T(", RTNYES")); @@ -1261,7 +1271,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", ")); p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } break; default: @@ -1287,7 +1296,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", GOYES ")); p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } else p = append_str (p, _T(", RTNYES")); @@ -1302,7 +1310,6 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", ")); p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } break; default: @@ -1323,13 +1330,11 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) p = append_str (out, (fn == 0xc) ? _T("GOLONG") : _T("GOSUBL")); p = append_tab (out); p = append_r_addr (p, &pc, disp, 4, (fn == 0xc) ? 2 : 6); - p = append_pc_comment (out, pc, view); break; case CLASS_MNEMONICS: p = append_str (out, (fn == 0xc) ? _T("bra.4") : _T("bsr.4")); p = append_tab (out); p = append_r_addr (p, &pc, disp, 4, (fn == 0xc) ? 2 : 6); - p = append_pc_comment (out, pc, view); break; default: p = append_str (out, _T("Unknown disassembler mode")); @@ -1367,7 +1372,7 @@ static LPTSTR disasm_8 (DWORD *addr, LPTSTR out, BOOL view) // public functions -DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) +DWORD disassemble (DWORD addr, LPTSTR out) { BYTE n; BYTE fn; @@ -1480,7 +1485,6 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) { p = append_tab (out); p = append_r_addr (p, &pc, disp, 2, 1); - p = append_pc_comment (out, pc, view); } break; @@ -1496,7 +1500,6 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) { p = append_tab (out); p = append_r_addr (p, &pc, disp, 2, 1); - p = append_pc_comment (out, pc, view); } break; @@ -1526,7 +1529,6 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) p = append_str (out, _T("GOTO")); p = append_tab (out); p = append_r_addr (p, &pc, disp, 3, 1); - p = append_pc_comment (out, pc, view); break; case CLASS_MNEMONICS: @@ -1544,7 +1546,6 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) p = append_str (out, _T("bra.3")); p = append_tab (out); p = append_r_addr (p, &pc, disp, 3, 1); - p = append_pc_comment (out, pc, view); break; default: @@ -1562,14 +1563,12 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) p = append_str (out, _T("GOSUB")); p = append_tab (out); p = append_r_addr (p, &pc, disp, 3, 4); - p = append_pc_comment (out, pc, view); break; case CLASS_MNEMONICS: p = append_str (out, _T("bsr.3")); p = append_tab (out); p = append_r_addr (p, &pc, disp, 3, 4); - p = append_pc_comment (out, pc, view); break; default: @@ -1583,7 +1582,7 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) --addr; if (fn != 0xa && fn != 0xb) { - p = disasm_8 (&addr, out, view); + p = disasm_8 (&addr, out); break; } /* Fall through */ @@ -1622,7 +1621,6 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) if (disp != 0) { p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } break; @@ -1639,7 +1637,6 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) { p = append_str (p, _T(", ")); p = append_r_addr (p, &pc, disp, 2, 3); - p = append_pc_comment (out, pc, view); } break; @@ -1916,4 +1913,3 @@ DWORD disassemble (DWORD addr, LPTSTR out, BOOL view) return addr; } - diff --git a/source/DISPLAY.C b/source/DISPLAY.C index f6d9823..5565813 100644 --- a/source/DISPLAY.C +++ b/source/DISPLAY.C @@ -29,7 +29,7 @@ |((((c)-1)>>1)<<8) \ |((((c)-1)>>1))) -#define DIBPIXEL(d,p) *(((DWORD*)(d))++) = ((*((DWORD*)(d)) & dwGrayMask) << 1) | (p) +#define DIBPIXEL(d,p) *((DWORD*)(d)) = ((*((DWORD*)(d)) & dwGrayMask) << 1) | (p); (BYTE *) d += 4 BOOL bGrayscale = FALSE; // Default is to not emulate grayscale UINT nBackgroundX = 0; @@ -39,10 +39,11 @@ UINT nBackgroundH = 0; UINT nLcdX = 0; UINT nLcdY = 0; UINT nLcdZoom = 1; -LPBYTE pbyLcd; HDC hLcdDC = NULL; HDC hMainDC = NULL; +static LPBYTE pbyLcd; + static HBITMAP hLcdBitmap; static HBITMAP hMainBitmap; diff --git a/source/EMU48.C b/source/EMU48.C index 8c981e5..60e82b1 100644 --- a/source/EMU48.C +++ b/source/EMU48.C @@ -13,7 +13,7 @@ #include "kml.h" #include "debugger.h" -#define VERSION "1.45+" +#define VERSION "1.46+" // #define MONOCHROME // CF_BITMAP clipboard format @@ -613,7 +613,7 @@ static UINT SaveChanges(BOOL bAuto) else { UINT uStyle = bSaveDefConfirm ? 0 : MB_DEFBUTTON2; - uReply = YesNoCancelMessage(_T("Do you want to save changes ?"),uStyle); + uReply = YesNoCancelMessage(_T("Do you want to save changes?"),uStyle); } if (uReply != IDYES) return uReply; @@ -777,6 +777,7 @@ static LRESULT OnDropFiles(HANDLE hFilesInfo) { // turn on HP KeyboardEvent(TRUE,0,0x8000); + Sleep(200); KeyboardEvent(FALSE,0,0x8000); } @@ -853,7 +854,34 @@ static LRESULT OnFileOpen(VOID) } if (GetOpenFilename()) { - OpenDocument(szBufferFilename); + if (OpenDocument(szBufferFilename)) + MruAdd(szCurrentFilename); + } +cancel: + if (pbyRom) SwitchToState(SM_RUN); + return 0; +} + +// +// ID_FILE_MRU_FILE1 +// +static LRESULT OnFileMruOpen(UINT wID) +{ + LPCTSTR lpszFilename; + + wID -= ID_FILE_MRU_FILE1; // zero based MRU index + lpszFilename = MruFilename(wID); // full filename from MRU list + if (lpszFilename == NULL) return 0; // MRU slot not filled + + if (pbyRom) + { + SwitchToState(SM_INVALID); + if (IDCANCEL == SaveChanges(bAutoSave)) + goto cancel; + } + if (!OpenDocument(lpszFilename)) // document loading failed + { + MruRemove(wID); // entry not valid any more } cancel: if (pbyRom) SwitchToState(SM_RUN); @@ -882,7 +910,8 @@ static LRESULT OnFileSaveAs(VOID) if (GetSaveAsFilename()) { - SaveDocumentAs(szBufferFilename); + if (SaveDocumentAs(szBufferFilename)) + MruAdd(szCurrentFilename); } SwitchToState(SM_RUN); @@ -1044,7 +1073,7 @@ static LRESULT OnViewCopy(VOID) static LRESULT OnViewReset(VOID) { if (nState != SM_RUN) return 0; - if (YesNoMessage(_T("Are you sure you want to press the Reset Button ?"))==IDYES) + if (YesNoMessage(_T("Are you sure you want to press the Reset Button?"))==IDYES) { SwitchToState(SM_SLEEP); CpuReset(); // register setting after Cpu Reset @@ -1138,6 +1167,7 @@ static LRESULT OnObjectLoad(VOID) if (!(Chipset.IORam[BITOFFSET]&DON)) { KeyboardEvent(TRUE,0,0x8000); + Sleep(200); KeyboardEvent(FALSE,0,0x8000); // wait for sleep mode @@ -1163,8 +1193,8 @@ static LRESULT OnObjectLoad(VOID) UINT uReply = YesNoCancelMessage( _T("Warning: Trying to load an object while the emulator is busy\n") _T("will certainly result in a memory lost. Before loading an object\n") - _T("you should be sure that the calculator is not doing anything.\n") - _T("Do you want to see this warning next time you try to load an object ?"),0); + _T("you should be sure that the calculator is in idle state.\n") + _T("Do you want to see this warning next time you try to load an object?"),0); switch (uReply) { case IDYES: @@ -1305,7 +1335,7 @@ static INT_PTR CALLBACK Disasm(HWND hDlg, UINT message, WPARAM wParam, LPARAM lP if (dwAddress >= dwAddressMax) return FALSE; i = wsprintf(szAddress,(dwAddress <= 0xFFFFF) ? _T("%05lX ") : _T("%06lX "),dwAddress); - dwAddress = disassemble(dwAddress,&szAddress[i],VIEW_LONG); + dwAddress = disassemble(dwAddress,&szAddress[i]); i = (LONG) SendDlgItemMessage(hDlg,IDC_DISASM_WIN,LB_ADDSTRING,0,(LPARAM) szAddress); SendDlgItemMessage(hDlg,IDC_DISASM_WIN,LB_SELITEMRANGE,FALSE,MAKELPARAM(0,i)); SendDlgItemMessage(hDlg,IDC_DISASM_WIN,LB_SETSEL,TRUE,i); @@ -1483,6 +1513,10 @@ LRESULT CALLBACK MainWndProc(HWND hWindow, UINT uMsg, WPARAM wParam, LPARAM lPar case ID_TOOL_MACRO_SETTINGS: return OnToolMacroSettings(); case ID_ABOUT: return OnAbout(); } + // check if command ID belongs to MRU file area + if ( (LOWORD(wParam) >= ID_FILE_MRU_FILE1) + && (LOWORD(wParam) < ID_FILE_MRU_FILE1 + MruEntries())) + return OnFileMruOpen(LOWORD(wParam)); break; case WM_SYSCOMMAND: switch (wParam & 0xFFF0) @@ -1579,6 +1613,7 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nC GetCurrentDirectory(ARRAYSIZEOF(szCurrentDirectory), szCurrentDirectory); szCurrentKml[0] = 0; // no KML file selected ReadSettings(); + MruInit(0); // init MRU entries UpdateWindowStatus(); @@ -1645,6 +1680,7 @@ int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nC SetWindowTitle(szTemp); if (OpenDocument(szBufferFilename)) { + MruAdd(szCurrentFilename); ShowWindow(hWnd,nCmdShow); goto start; } @@ -1679,7 +1715,8 @@ start: DdeUninitialize(idDdeInst); // get full path name of szCurrentFilename - GetFullPathName(szCurrentFilename,ARRAYSIZEOF(szBufferFilename),szBufferFilename,&lpFilePart); + if (GetFullPathName(szCurrentFilename,ARRAYSIZEOF(szBufferFilename),szBufferFilename,&lpFilePart) == 0) + szBufferFilename[0] = 0; // no last document name WriteLastDocument(szBufferFilename); // save last document setting WriteSettings(); // save emulation settings @@ -1689,6 +1726,7 @@ start: _ASSERT(nState == SM_RETURN); // emulation thread down? ResetDocument(); ResetBackup(); + MruCleanup(); _ASSERT(pbyRom == NULL); // rom file unmapped _ASSERT(pbyPort2 == NULL); // port2 file unmapped _ASSERT(pKml == NULL); // KML script not closed diff --git a/source/EMU48.H b/source/EMU48.H index 12b9f12..3d19d61 100644 --- a/source/EMU48.H +++ b/source/EMU48.H @@ -53,9 +53,6 @@ #define MEM_PORT1 3 #define MEM_PORT2 4 -#define VIEW_SHORT FALSE // view of disassembler output -#define VIEW_LONG TRUE - #define MACRO_OFF 0 // macro recorder off #define MACRO_NEW 1 #define MACRO_PLAY 2 @@ -117,6 +114,17 @@ extern VOID CopyItemsToClipboard(HWND hWnd); extern VOID UpdateWindowStatus(VOID); extern VOID ForceForegroundWindow(HWND hWnd); +// mru.c +extern BOOL MruInit(INT nNum); +extern VOID MruCleanup(VOID); +extern VOID MruAdd(LPCTSTR lpszEntry); +extern VOID MruRemove(INT nIndex); +extern INT MruEntries(VOID); +extern LPCTSTR MruFilename(INT nIndex); +extern VOID MruUpdateMenu(VOID); +extern VOID MruWriteList(VOID); +extern VOID MruReadList(VOID); + // Settings.c extern VOID ReadSettings(VOID); extern VOID WriteSettings(VOID); @@ -136,7 +144,6 @@ extern UINT nBackgroundH; extern UINT nLcdX; extern UINT nLcdY; extern UINT nLcdZoom; -extern LPBYTE pbyLcd; extern HDC hLcdDC; extern HDC hMainDC; extern VOID UpdateContrast(BYTE byContrast); @@ -324,8 +331,17 @@ extern HDDEDATA CALLBACK DdeCallback(UINT, UINT, HCONV, HSZ, HSZ, HDDEDATA, DWOR // Disasm.c extern BOOL disassembler_mode; +extern BOOL disassembler_symb; extern WORD disassembler_map; -extern DWORD disassemble (DWORD addr, LPTSTR out, BOOL view); +extern BYTE read_nibble(DWORD *p); +extern DWORD disassemble(DWORD addr, LPTSTR out); + +// Symbfile.c +#define RplTableEmpty() TRUE // function not implemented so far +#define RplLoadTable(n) FALSE // function not implemented so far +#define RplDeleteTable() // function not implemented so far +#define RplGetName(a) NULL // function not implemented so far +#define RplGetAddr(n,a) FALSE // function not implemented so far // Serial.c extern BOOL CommOpen(LPTSTR strWirePort,LPTSTR strIrPort); diff --git a/source/EMU48.RC b/source/EMU48.RC index 159b25c..8f10a73 100644 --- a/source/EMU48.RC +++ b/source/EMU48.RC @@ -148,6 +148,14 @@ BEGIN TOPMARGIN, 7 BOTTOMMARGIN, 74 END + + IDD_DEBUG_SETTINGS, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 177 + TOPMARGIN, 7 + BOTTOMMARGIN, 109 + END END #endif // APSTUDIO_INVOKED @@ -171,7 +179,7 @@ BEGIN LTEXT "30-34 (Display Secondary Start Address)",IDC_STATIC,11, 41,131,8 RTEXT "00000",IDC_ADDR30_34,144,41,25,8 - DEFPUSHBUTTON "OK",IDOK,65,61,50,14 + DEFPUSHBUTTON "OK",IDCANCEL,65,61,50,14 END IDD_FIND DIALOGEX 0, 0, 197, 47 @@ -225,7 +233,7 @@ FONT 8, "MS Sans Serif" BEGIN ICON IDI_EMU48,IDC_STATIC,7,6,20,20,SS_REALSIZEIMAGE LTEXT "",IDC_VERSION,29,6,151,8,NOT WS_GROUP - LTEXT "Copyright © 2008 Christoph Gießelink && Sébastien Carlier", + LTEXT "Copyright © 2009 Christoph Gießelink && Sébastien Carlier", IDC_STATIC,29,18,181,8 DEFPUSHBUTTON "OK",IDOK,215,12,39,14 EDITTEXT IDC_LICENSE,7,33,247,112,ES_MULTILINE | ES_AUTOHSCROLL | @@ -286,8 +294,8 @@ BEGIN COMBOBOX IDC_IR,107,243,48,43,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP GROUPBOX "Serial Ports",IDC_STATIC,7,233,153,27 - DEFPUSHBUTTON "&Ok",IDOK,9,266,50,14 - PUSHBUTTON "&Cancel",IDCANCEL,107,266,50,14 + DEFPUSHBUTTON "OK",IDOK,9,266,50,14 + PUSHBUTTON "Cancel",IDCANCEL,107,266,50,14 END IDD_CHOOSEKML DIALOG DISCARDABLE 0, 0, 195, 66 @@ -516,6 +524,28 @@ BEGIN PUSHBUTTON "Cancel",IDCANCEL,93,60,50,14 END +IDD_DEBUG_SETTINGS DIALOG DISCARDABLE 0, 0, 184, 116 +STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Debugger Settings" +FONT 8, "MS Sans Serif" +BEGIN + CONTROL "HP Mnemonics",IDC_DISASM_HP,"Button",BS_AUTORADIOBUTTON | + WS_GROUP | WS_TABSTOP,15,16,65,11 + CONTROL "Class Mnemonics",IDC_DISASM_CLASS,"Button", + BS_AUTORADIOBUTTON,98,16,70,11 + GROUPBOX "Disassembler",IDC_STATIC,7,3,170,32 + CONTROL "Enable",IDC_DEBUG_SET_SYMB,"Button",BS_AUTOCHECKBOX | + WS_TABSTOP,15,49,38,10 + LTEXT "Model:",IDC_STATIC,104,50,22,8 + COMBOBOX IDC_DEBUG_SET_MODEL,131,47,38,72,CBS_DROPDOWNLIST | + CBS_SORT | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_DEBUG_SET_FILE,15,65,143,14,ES_AUTOHSCROLL + PUSHBUTTON "...",IDC_DEBUG_SET_BROWSE,159,65,10,14 + GROUPBOX "Symbolic",IDC_STATIC,7,36,170,53 + DEFPUSHBUTTON "&Ok",IDOK,12,95,50,14 + PUSHBUTTON "&Cancel",IDCANCEL,122,95,50,14 +END + ///////////////////////////////////////////////////////////////////////////// // @@ -553,8 +583,8 @@ END // VS_VERSION_INFO VERSIONINFO - FILEVERSION 1,4,5,0 - PRODUCTVERSION 1,4,5,0 + FILEVERSION 1,4,6,0 + PRODUCTVERSION 1,4,6,0 FILEFLAGSMASK 0x3fL #ifdef _DEBUG FILEFLAGS 0x1L @@ -571,12 +601,12 @@ BEGIN BEGIN VALUE "CompanyName", "Christoph Gießelink & Sebastien Carlier\0" VALUE "FileDescription", "HP38/39/40/48/49 Emulator\0" - VALUE "FileVersion", "1, 4, 5, 0\0" + VALUE "FileVersion", "1, 4, 6, 0\0" VALUE "InternalName", "Emu48\0" - VALUE "LegalCopyright", "Copyright © 2008\0" + VALUE "LegalCopyright", "Copyright © 2009\0" VALUE "OriginalFilename", "Emu48.exe\0" VALUE "ProductName", "Emu48\0" - VALUE "ProductVersion", "1, 4, 5, 0\0" + VALUE "ProductVersion", "1, 4, 6, 0\0" END END BLOCK "VarFileInfo" @@ -614,6 +644,8 @@ BEGIN MENUITEM SEPARATOR MENUITEM "S&ettings...", ID_VIEW_SETTINGS MENUITEM SEPARATOR + MENUITEM "Recent File List", ID_FILE_MRU_FILE1, GRAYED + MENUITEM SEPARATOR MENUITEM "E&xit", ID_FILE_EXIT END POPUP "&Edit" diff --git a/source/EMU48DLL.C b/source/EMU48DLL.C index 869374e..ecd9e7d 100644 --- a/source/EMU48DLL.C +++ b/source/EMU48DLL.C @@ -116,6 +116,7 @@ BOOL DLLCreateWnd(LPCTSTR lpszFilename, LPCTSTR lpszPort2Name) szCurrentKml[0] = 0; // no KML file selected ReadSettings(); + MruInit(0); // init MRU entries UpdateWindowStatus(); @@ -194,6 +195,7 @@ BOOL DLLCreateWnd(LPCTSTR lpszFilename, LPCTSTR lpszPort2Name) SetWindowTitle(szTemp); if (OpenDocument(szBufferFilename)) { + MruAdd(szCurrentFilename); ShowWindow(hWnd,SW_SHOWNORMAL); goto start; } @@ -234,7 +236,8 @@ BOOL DLLDestroyWnd(VOID) DdeUninitialize(idDdeInst); // get full path name of szCurrentFilename - GetFullPathName(szCurrentFilename,ARRAYSIZEOF(szBufferFilename),szBufferFilename,&lpFilePart); + if (GetFullPathName(szCurrentFilename,ARRAYSIZEOF(szBufferFilename),szBufferFilename,&lpFilePart) == 0) + szBufferFilename[0] = 0; // no last document name WriteLastDocument(szBufferFilename); // save last document setting WriteSettings(); // save variable settings @@ -245,6 +248,7 @@ BOOL DLLDestroyWnd(VOID) _ASSERT(nState == SM_RETURN); // emulation thread down? ResetDocument(); ResetBackup(); + MruCleanup(); _ASSERT(pbyRom == NULL); // rom file unmapped _ASSERT(pbyPort2 == NULL); // port2 file unmapped _ASSERT(pKml == NULL); // KML script not closed diff --git a/source/EMU48DLL.DSP b/source/EMU48DLL.DSP index c0a9bf7..9596bd0 100644 --- a/source/EMU48DLL.DSP +++ b/source/EMU48DLL.DSP @@ -7,19 +7,19 @@ CFG=Emu48 - Win32 Release !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run -!MESSAGE +!MESSAGE !MESSAGE NMAKE /f "EMU48DLL.MAK". -!MESSAGE +!MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE +!MESSAGE !MESSAGE NMAKE /f "EMU48DLL.MAK" CFG="Emu48 - Win32 Release" -!MESSAGE +!MESSAGE !MESSAGE Possible choices for configuration are: -!MESSAGE +!MESSAGE !MESSAGE "Emu48 - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library") !MESSAGE "Emu48 - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library") -!MESSAGE +!MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 @@ -81,7 +81,7 @@ LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 # ADD LINK32 kernel32.lib user32.lib gdi32.lib comdlg32.lib shell32.lib winmm.lib advapi32.lib /nologo /dll /debug /machine:I386 /out:".\Debug/Emu48.dll" -!ENDIF +!ENDIF # Begin Target @@ -164,6 +164,10 @@ SOURCE=.\mops.c # End Source File # Begin Source File +SOURCE=.\mru.c +# End Source File +# Begin Source File + SOURCE=.\opcodes.c # End Source File # Begin Source File diff --git a/source/Emu48.dsp b/source/Emu48.dsp index 408ce8f..e07260d 100644 --- a/source/Emu48.dsp +++ b/source/Emu48.dsp @@ -7,23 +7,23 @@ CFG=Emu48 - Win32 DebugRegDebug4x !MESSAGE This is not a valid makefile. To build this project using NMAKE, !MESSAGE use the Export Makefile command and run -!MESSAGE +!MESSAGE !MESSAGE NMAKE /f "Emu48.mak". -!MESSAGE +!MESSAGE !MESSAGE You can specify a configuration when running NMAKE !MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE +!MESSAGE !MESSAGE NMAKE /f "Emu48.mak" CFG="Emu48 - Win32 DebugRegDebug4x" -!MESSAGE +!MESSAGE !MESSAGE Possible choices for configuration are: -!MESSAGE +!MESSAGE !MESSAGE "Emu48 - Win32 Release" (based on "Win32 (x86) Application") !MESSAGE "Emu48 - Win32 Debug" (based on "Win32 (x86) Application") !MESSAGE "Emu48 - Win32 Release Unicode" (based on "Win32 (x86) Application") !MESSAGE "Emu48 - Win32 Debug Unicode" (based on "Win32 (x86) Application") !MESSAGE "Emu48 - Win32 DebugRegDebug4x" (based on "Win32 (x86) Application") !MESSAGE "Emu48 - Win32 ReleaseRegDebug4x" (based on "Win32 (x86) Application") -!MESSAGE +!MESSAGE # Begin Project # PROP AllowPerConfigDependencies 0 @@ -193,7 +193,7 @@ LINK32=link.exe # ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib comdlg32.lib shell32.lib winmm.lib comctl32.lib advapi32.lib /nologo /subsystem:windows /machine:I386 # ADD LINK32 kernel32.lib user32.lib gdi32.lib comdlg32.lib shell32.lib winmm.lib comctl32.lib advapi32.lib /nologo /subsystem:windows /machine:I386 -!ENDIF +!ENDIF # Begin Target @@ -276,6 +276,10 @@ SOURCE=.\mops.c # End Source File # Begin Source File +SOURCE=.\mru.c +# End Source File +# Begin Source File + SOURCE=.\opcodes.c # End Source File # Begin Source File diff --git a/source/FILES.C b/source/FILES.C index eecc406..629707e 100644 --- a/source/FILES.C +++ b/source/FILES.C @@ -634,12 +634,14 @@ VOID UnmapPort2(VOID) static BOOL IsDataPacked(VOID *pMem, DWORD dwSize) { + DWORD *pdwMem = pMem; + _ASSERT((dwSize % sizeof(DWORD)) == 0); if ((dwSize % sizeof(DWORD)) != 0) return TRUE; for (dwSize /= sizeof(DWORD); dwSize-- > 0;) { - if ((*((DWORD *) pMem)++ & 0xF0F0F0F0) != 0) + if ((*pdwMem++ & 0xF0F0F0F0) != 0) return TRUE; } return FALSE; @@ -784,15 +786,16 @@ BOOL OpenDocument(LPCTSTR szFilename) UINT ctBytesCompared; UINT nLength; + // Open file + if (lstrcmpi(szCurrentFilename,szFilename) == 0) + { + if (YesNoMessage(_T("Do you want to reload this document?")) == IDNO) + return TRUE; + } + SaveBackup(); ResetDocument(); - // Open file - if (lstrcmpi(szBackupFilename, szFilename)==0) - { - if (YesNoMessage(_T("Do you want to reload this document ?")) == IDNO) - goto restore; - } hFile = CreateFile(szFilename, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL); if (hFile == INVALID_HANDLE_VALUE) { @@ -1144,6 +1147,7 @@ BOOL SaveBackup(VOID) BackupChipset.Port2 = HeapAlloc(hHeap,0,Chipset.Port2Size*2048); CopyMemory(BackupChipset.Port2, Chipset.Port2, Chipset.Port2Size*2048); } + CreateBackupBreakpointList(); bBackup = TRUE; UpdateWindowStatus(); return TRUE; @@ -1151,7 +1155,11 @@ BOOL SaveBackup(VOID) BOOL RestoreBackup(VOID) { + BOOL bDbgOpen; + if (!bBackup) return FALSE; + + bDbgOpen = (nDbgState != DBG_OFF); // debugger window open? ResetDocument(); // need chipset for contrast setting in InitKML() Chipset.contrast = BackupChipset.contrast; @@ -1190,10 +1198,12 @@ BOOL RestoreBackup(VOID) MapPort2((nArgc < 3) ? szPort2Filename : ppArgv[2]); } } + Map(0x00,0xFF); SetWindowPathTitle(szCurrentFilename); // update window title line SetWindowLocation(hWnd,Chipset.nPosX,Chipset.nPosY); + RestoreBackupBreakpointList(); // restore the debugger breakpoint list + if (bDbgOpen) OnToolDebug(); // reopen the debugger UpdateWindowStatus(); - Map(0x00,0xFF); return TRUE; } @@ -1235,28 +1245,14 @@ BOOL GetOpenFilename(VOID) InitializeOFN(&ofn); ofn.lpstrFilter = - _T("Emu38 Document (*.E38)\0*.E38\0") - _T("Emu39 Document (*.E39)\0*.E39\0") - _T("Emu48 Document (*.E48)\0*.E48\0") - _T("Emu49 Document (*.E49)\0*.E49\0") - _T("Win48 Document (*.W48)\0*.W48\0"); - ofn.lpstrDefExt = _T("E48"); // HP48SX/GX - ofn.nFilterIndex = 3; - if (cCurrentRomType=='6' || cCurrentRomType=='A') // HP38G - { - ofn.lpstrDefExt = _T("E38"); - ofn.nFilterIndex = 1; - } - if (cCurrentRomType=='E' || cCurrentRomType=='P') // HP39/40G/HP49G+ // CdB for HP: add apples - { - ofn.lpstrDefExt = _T("E39"); - ofn.nFilterIndex = 2; - } - if (cCurrentRomType=='X' || cCurrentRomType=='2' || cCurrentRomType=='Q') // HP49G/HP48Gii/HP49G+ // CdB for HP: add apples - { - ofn.lpstrDefExt = _T("E49"); - ofn.nFilterIndex = 4; - } + _T("Emu48 Files (*.e38;*.e39;*.e48;*.e49)\0") + _T("*.e38;*.e39;*.e48;*.e49\0") + _T("HP-38 Files (*.e38)\0*.e38\0") + _T("HP-39 Files (*.e39)\0*.e39\0") + _T("HP-48 Files (*.e48)\0*.e48\0") + _T("HP-49 Files (*.e49)\0*.e49\0") + _T("Win48 Files (*.w48)\0*.w48\0"); + ofn.nFilterIndex = 1; ofn.lpstrFile = szBuffer; ofn.lpstrFile[0] = 0; ofn.nMaxFile = ARRAYSIZEOF(szBuffer); @@ -1274,25 +1270,25 @@ BOOL GetSaveAsFilename(VOID) InitializeOFN(&ofn); ofn.lpstrFilter = - _T("Emu38 Document (*.E38)\0*.E38\0") - _T("Emu39 Document (*.E39)\0*.E39\0") - _T("Emu48 Document (*.E48)\0*.E48\0") - _T("Emu49 Document (*.E49)\0*.E49\0"); - ofn.lpstrDefExt = _T("E48"); // HP48SX/GX + _T("HP-38 Files (*.e38)\0*.e38\0") + _T("HP-39 Files (*.e39)\0*.e39\0") + _T("HP-48 Files (*.e48)\0*.e48\0") + _T("HP-49 Files (*.e49)\0*.e49\0"); + ofn.lpstrDefExt = _T("e48"); // HP48SX/GX ofn.nFilterIndex = 3; if (cCurrentRomType=='6' || cCurrentRomType=='A') // HP38G { - ofn.lpstrDefExt = _T("E38"); + ofn.lpstrDefExt = _T("e38"); ofn.nFilterIndex = 1; } if (cCurrentRomType=='E' || cCurrentRomType=='P') // HP39/40G/hp439G+ // CdB for HP: add apples { - ofn.lpstrDefExt = _T("E39"); + ofn.lpstrDefExt = _T("e39"); ofn.nFilterIndex = 2; } if (cCurrentRomType=='X' || cCurrentRomType=='2' || cCurrentRomType=='Q') // HP49G/HP48Gii/HP49G+ // CdB for HP: add apples { - ofn.lpstrDefExt = _T("E49"); + ofn.lpstrDefExt = _T("e49"); ofn.nFilterIndex = 4; } ofn.lpstrFile = szBuffer; @@ -1486,6 +1482,15 @@ BOOL SaveObject(LPCTSTR szFilename) // separated stack reading part //# //################ +#define WIDTHBYTES(bits) ((((bits) + 31) / 32) * 4) + +typedef struct _BmpFile +{ + DWORD dwPos; // actual reading pos + DWORD dwFileSize; // file size + LPBYTE pbyFile; // buffer +} BMPFILE, FAR *LPBMPFILE, *PBMPFILE; + static __inline UINT DibNumColors(BITMAPINFOHEADER CONST *lpbi) { if (lpbi->biClrUsed != 0) return (UINT)lpbi->biClrUsed; @@ -1512,14 +1517,15 @@ static HPALETTE CreateBIPalette(BITMAPINFOHEADER CONST *lpbi) return NULL; // Get a pointer to the color table and the number of colors in it - pRgb = (RGBQUAD *)((LPBYTE)lpbi + (WORD)lpbi->biSize); + pRgb = (RGBQUAD FAR *)((LPBYTE)lpbi + (WORD)lpbi->biSize); nNumColors = DibNumColors(lpbi); if (nNumColors) { // Allocate for the logical palette structure - pPal = HeapAlloc(hHeap,0,sizeof(LOGPALETTE) + nNumColors * sizeof(PALETTEENTRY)); - if (!pPal) return NULL; + pPal = HeapAlloc(hHeap,HEAP_ZERO_MEMORY,sizeof(LOGPALETTE) + nNumColors * sizeof(PALETTEENTRY)); + if (!pPal) + return NULL; pPal->palNumEntries = nNumColors; pPal->palVersion = 0x300; @@ -1531,7 +1537,7 @@ static HPALETTE CreateBIPalette(BITMAPINFOHEADER CONST *lpbi) pPal->palPalEntry[i].peRed = pRgb[i].rgbRed; pPal->palPalEntry[i].peGreen = pRgb[i].rgbGreen; pPal->palPalEntry[i].peBlue = pRgb[i].rgbBlue; - pPal->palPalEntry[i].peFlags = 0; + pPal->palPalEntry[i].peFlags = (BYTE)0; } hpal = CreatePalette(pPal); HeapFree(hHeap,0,pPal); @@ -1570,55 +1576,613 @@ static HPALETTE CreateBIPalette(BITMAPINFOHEADER CONST *lpbi) return hpal; } +static HBITMAP DecodeBmp(LPBMPFILE pBmp) +{ + LPBITMAPFILEHEADER pBmfh; + LPBITMAPINFO pBmi; + HBITMAP hBitmap; + DWORD dwFileSize; + + hBitmap = NULL; + + // size of bitmap header information + dwFileSize = sizeof(BITMAPFILEHEADER) + sizeof(BITMAPINFOHEADER); + if (pBmp->dwFileSize < dwFileSize) return NULL; + + // check for bitmap + pBmfh = (LPBITMAPFILEHEADER) pBmp->pbyFile; + if (pBmfh->bfType != 0x4D42) return NULL; // "BM" + + pBmi = (LPBITMAPINFO) (pBmp->pbyFile + sizeof(BITMAPFILEHEADER)); + + // size with color table + if (pBmi->bmiHeader.biCompression == BI_BITFIELDS) + { + dwFileSize += 3 * sizeof(DWORD); + } + else + { + dwFileSize += DibNumColors(&pBmi->bmiHeader) * sizeof(RGBQUAD); + } + if (dwFileSize != pBmfh->bfOffBits) return NULL; + + // size with bitmap data + if (pBmi->bmiHeader.biCompression != BI_RGB) + { + dwFileSize += pBmi->bmiHeader.biSizeImage; + } + else + { + dwFileSize += WIDTHBYTES(pBmi->bmiHeader.biWidth * pBmi->bmiHeader.biBitCount) + * labs(pBmi->bmiHeader.biHeight); + } + if (pBmp->dwFileSize < dwFileSize) return NULL; + + VERIFY(hBitmap = CreateDIBitmap( + hWindowDC, + &pBmi->bmiHeader, + CBM_INIT, + pBmp->pbyFile + pBmfh->bfOffBits, + pBmi, DIB_RGB_COLORS)); + if (hBitmap == NULL) return NULL; + + _ASSERT(hPalette == NULL); // resource free + hPalette = CreateBIPalette(&pBmi->bmiHeader); + // save old palette + hOldPalette = SelectPalette(hWindowDC, hPalette, FALSE); + RealizePalette(hWindowDC); + + return hBitmap; +} + +static BOOL ReadGifByte(LPBMPFILE pGif, INT *n) +{ + // outside GIF file + if (pGif->dwPos >= pGif->dwFileSize) + return TRUE; + + *n = pGif->pbyFile[pGif->dwPos++]; + return FALSE; +} + +static BOOL ReadGifWord(LPBMPFILE pGif, INT *n) +{ + // outside GIF file + if (pGif->dwPos + 1 >= pGif->dwFileSize) + return TRUE; + + *n = pGif->pbyFile[pGif->dwPos++]; + *n |= (pGif->pbyFile[pGif->dwPos++] << 8); + return FALSE; +} + +static HBITMAP DecodeGif(LPBMPFILE pBmp) +{ + // this implementation base on the GIF image file + // decoder engine of Free42 (c) by Thomas Okken + + HBITMAP hBitmap; + + typedef struct cmap + { + WORD biBitCount; // bits used in color map + DWORD biClrUsed; // no of colors in color map + RGBQUAD bmiColors[256]; // color map + } CMAP; + + BOOL bHasGlobalCmap; + CMAP sGlb; // data of global color map + + INT nWidth,nHeight,nInfo,nBackground,nZero; + LONG lBytesPerLine; + + LPBYTE pbyPixels; + + BITMAPINFO bmi; // global bitmap info + + BOOL bDecoding = TRUE; + + hBitmap = NULL; + + pBmp->dwPos = 6; // position behind GIF header + + /* Bits 6..4 of info contain one less than the "color resolution", + * defined as the number of significant bits per RGB component in + * the source image's color palette. If the source image (from + * which the GIF was generated) was 24-bit true color, the color + * resolution is 8, so the value in bits 6..4 is 7. If the source + * image had an EGA color cube (2x2x2), the color resolution would + * be 2, etc. + * Bit 3 of info must be zero in GIF87a; in GIF89a, if it is set, + * it indicates that the global colormap is sorted, the most + * important entries being first. In PseudoColor environments this + * can be used to make sure to get the most important colors from + * the X server first, to optimize the image's appearance in the + * event that not all the colors from the colormap can actually be + * obtained at the same time. + * The 'zero' field is always 0 in GIF87a; in GIF89a, it indicates + * the pixel aspect ratio, as (PAR + 15) : 64. If PAR is zero, + * this means no aspect ratio information is given, PAR = 1 means + * 1:4 (narrow), PAR = 49 means 1:1 (square), PAR = 255 means + * slightly over 4:1 (wide), etc. + */ + + if ( ReadGifWord(pBmp,&nWidth) + || ReadGifWord(pBmp,&nHeight) + || ReadGifByte(pBmp,&nInfo) + || ReadGifByte(pBmp,&nBackground) + || ReadGifByte(pBmp,&nZero) + || nZero != 0) + goto quit; + + ZeroMemory(&bmi,sizeof(bmi)); // init bitmap info + bmi.bmiHeader.biSize = sizeof(BITMAPINFOHEADER); + bmi.bmiHeader.biWidth = nWidth; + bmi.bmiHeader.biHeight = nHeight; + bmi.bmiHeader.biPlanes = 1; + bmi.bmiHeader.biBitCount = 24; // create a true color DIB + bmi.bmiHeader.biCompression = BI_RGB; + + ZeroMemory(&sGlb,sizeof(sGlb)); // init global color map + bHasGlobalCmap = (nInfo & 0x80) != 0; + + sGlb.biBitCount = (nInfo & 7) + 1; // bits used in global color map + sGlb.biClrUsed = (1 << sGlb.biBitCount); // no of colors in global color map + + // color table should not exceed 256 colors + _ASSERT(sGlb.biClrUsed <= ARRAYSIZEOF(sGlb.bmiColors)); + + if (bHasGlobalCmap) // global color map + { + DWORD i; + + for (i = 0; i < sGlb.biClrUsed; ++i) + { + int r, g, b; + + if (ReadGifByte(pBmp,&r) || ReadGifByte(pBmp,&g) || ReadGifByte(pBmp,&b)) + goto quit; + + sGlb.bmiColors[i].rgbRed = r; + sGlb.bmiColors[i].rgbGreen = g; + sGlb.bmiColors[i].rgbBlue = b; + } + } + else // no color map + { + DWORD i; + + for (i = 0; i < sGlb.biClrUsed; ++i) + { + BYTE k = (BYTE) ((i * sGlb.biClrUsed) / (sGlb.biClrUsed - 1)); + + sGlb.bmiColors[i].rgbRed = k; + sGlb.bmiColors[i].rgbGreen = k; + sGlb.bmiColors[i].rgbBlue = k; + } + } + + // bitmap dimensions + lBytesPerLine = WIDTHBYTES(bmi.bmiHeader.biWidth * bmi.bmiHeader.biBitCount); + bmi.bmiHeader.biSizeImage = lBytesPerLine * bmi.bmiHeader.biHeight; + + // create top-down DIB + bmi.bmiHeader.biHeight = -bmi.bmiHeader.biHeight; + + // allocate buffer for pixels + VERIFY(hBitmap = CreateDIBSection(hWindowDC, + (LPBITMAPINFO)&bmi, + DIB_RGB_COLORS, + (VOID **)&pbyPixels, + NULL, + 0)); + if (hBitmap == NULL) goto quit; + + // fill pixel buffer with background color + for (nHeight = 0; nHeight < labs(bmi.bmiHeader.biHeight); ++nHeight) + { + LPBYTE pbyLine = pbyPixels + nHeight * lBytesPerLine; + + for (nWidth = 0; nWidth < bmi.bmiHeader.biWidth; ++nWidth) + { + *pbyLine++ = sGlb.bmiColors[nBackground].rgbBlue; + *pbyLine++ = sGlb.bmiColors[nBackground].rgbGreen; + *pbyLine++ = sGlb.bmiColors[nBackground].rgbRed; + } + + _ASSERT((DWORD) (pbyLine - pbyPixels) <= bmi.bmiHeader.biSizeImage); + } + + while (bDecoding) + { + INT nBlockType; + + if (ReadGifByte(pBmp,&nBlockType)) goto quit; + + switch (nBlockType) + { + case ',': // image + { + CMAP sAct; // data of actual color map + + INT nLeft,nTop,nWidth,nHeight; + INT i,nInfo; + + BOOL bInterlaced; + INT h,v; + INT nCodesize; // LZW codesize in bits + INT nBytecount; + + SHORT prefix_table[4096]; + SHORT code_table[4096]; + + INT nMaxcode; + INT nClearCode; + INT nEndCode; + + INT nCurrCodesize; + INT nCurrCode; + INT nOldCode; + INT nBitsNeeded; + BOOL bEndCodeSeen; + + // read image dimensions + if ( ReadGifWord(pBmp,&nLeft) + || ReadGifWord(pBmp,&nTop) + || ReadGifWord(pBmp,&nWidth) + || ReadGifWord(pBmp,&nHeight) + || ReadGifByte(pBmp,&nInfo)) + goto quit; + + if ( nTop + nHeight > labs(bmi.bmiHeader.biHeight) + || nLeft + nWidth > bmi.bmiHeader.biWidth) + goto quit; + + /* Bit 3 of info must be zero in GIF87a; in GIF89a, if it + * is set, it indicates that the local colormap is sorted, + * the most important entries being first. In PseudoColor + * environments this can be used to make sure to get the + * most important colors from the X server first, to + * optimize the image's appearance in the event that not + * all the colors from the colormap can actually be + * obtained at the same time. + */ + + if ((nInfo & 0x80) == 0) // using global color map + { + sAct = sGlb; + } + else // using local color map + { + DWORD i; + + sAct.biBitCount = (nInfo & 7) + 1; // bits used in color map + sAct.biClrUsed = (1 << sAct.biBitCount); // no of colors in color map + + for (i = 0; i < sAct.biClrUsed; ++i) + { + int r, g, b; + + if (ReadGifByte(pBmp,&r) || ReadGifByte(pBmp,&g) || ReadGifByte(pBmp,&b)) + goto quit; + + sAct.bmiColors[i].rgbRed = r; + sAct.bmiColors[i].rgbGreen = g; + sAct.bmiColors[i].rgbBlue = b; + } + } + + // interlaced image + bInterlaced = (nInfo & 0x40) != 0; + + h = 0; + v = 0; + if ( ReadGifByte(pBmp,&nCodesize) + || ReadGifByte(pBmp,&nBytecount)) + goto quit; + + nMaxcode = (1 << nCodesize); + + // preset LZW table + for (i = 0; i < nMaxcode + 2; ++i) + { + prefix_table[i] = -1; + code_table[i] = i; + } + nClearCode = nMaxcode++; + nEndCode = nMaxcode++; + + nCurrCodesize = nCodesize + 1; + nCurrCode = 0; + nOldCode = -1; + nBitsNeeded = nCurrCodesize; + bEndCodeSeen = FALSE; + + while (nBytecount != 0) + { + for (i = 0; i < nBytecount; ++i) + { + INT nCurrByte; + INT nBitsAvailable; + + if (ReadGifByte(pBmp,&nCurrByte)) + goto quit; + + if (bEndCodeSeen) continue; + + nBitsAvailable = 8; + while (nBitsAvailable != 0) + { + INT nBitsCopied = (nBitsNeeded < nBitsAvailable) + ? nBitsNeeded + : nBitsAvailable; + + INT nBits = nCurrByte >> (8 - nBitsAvailable); + + nBits &= 0xFF >> (8 - nBitsCopied); + nCurrCode |= nBits << (nCurrCodesize - nBitsNeeded); + nBitsAvailable -= nBitsCopied; + nBitsNeeded -= nBitsCopied; + + if (nBitsNeeded == 0) + { + BYTE byExpanded[4096]; + INT nExplen; + + do + { + if (nCurrCode == nEndCode) + { + bEndCodeSeen = TRUE; + break; + } + + if (nCurrCode == nClearCode) + { + nMaxcode = (1 << nCodesize) + 2; + nCurrCodesize = nCodesize + 1; + nOldCode = -1; + break; + } + + if (nCurrCode < nMaxcode) + { + if (nMaxcode < 4096 && nOldCode != -1) + { + INT c = nCurrCode; + while (prefix_table[c] != -1) + c = prefix_table[c]; + c = code_table[c]; + prefix_table[nMaxcode] = nOldCode; + code_table[nMaxcode] = c; + nMaxcode++; + if (nMaxcode == (1 << nCurrCodesize) && nCurrCodesize < 12) + nCurrCodesize++; + } + } + else + { + INT c; + + if (nCurrCode > nMaxcode || nOldCode == -1) goto quit; + + _ASSERT(nCurrCode == nMaxcode); + + /* Once maxcode == 4096, we can't get here + * any more, because we refuse to raise + * nCurrCodeSize above 12 -- so we can + * never read a bigger code than 4095. + */ + + c = nOldCode; + while (prefix_table[c] != -1) + c = prefix_table[c]; + c = code_table[c]; + prefix_table[nMaxcode] = nOldCode; + code_table[nMaxcode] = c; + nMaxcode++; + + if (nMaxcode == (1 << nCurrCodesize) && nCurrCodesize < 12) + nCurrCodesize++; + } + nOldCode = nCurrCode; + + // output nCurrCode! + nExplen = 0; + while (nCurrCode != -1) + { + _ASSERT(nExplen < ARRAYSIZEOF(byExpanded)); + byExpanded[nExplen++] = (BYTE) code_table[nCurrCode]; + nCurrCode = prefix_table[nCurrCode]; + } + _ASSERT(nExplen > 0); + + while (--nExplen >= 0) + { + // get color map index + BYTE byColIndex = byExpanded[nExplen]; + + LPBYTE pbyRgbr = pbyPixels + (lBytesPerLine * (nTop + v) + 3 * (nLeft + h)); + + _ASSERT(pbyRgbr + 2 < pbyPixels + bmi.bmiHeader.biSizeImage); + _ASSERT(byColIndex < sAct.biClrUsed); + + *pbyRgbr++ = sAct.bmiColors[byColIndex].rgbBlue; + *pbyRgbr++ = sAct.bmiColors[byColIndex].rgbGreen; + *pbyRgbr = sAct.bmiColors[byColIndex].rgbRed; + + if (++h == nWidth) + { + h = 0; + if (bInterlaced) + { + switch (v & 7) + { + case 0: + v += 8; + if (v < nHeight) + break; + /* Some GIF en/decoders go + * straight from the '0' + * pass to the '4' pass + * without checking the + * height, and blow up on + * 2/3/4 pixel high + * interlaced images. + */ + if (nHeight > 4) + v = 4; + else + if (nHeight > 2) + v = 2; + else + if (nHeight > 1) + v = 1; + else + bEndCodeSeen = TRUE; + break; + case 4: + v += 8; + if (v >= nHeight) + v = 2; + break; + case 2: + case 6: + v += 4; + if (v >= nHeight) + v = 1; + break; + case 1: + case 3: + case 5: + case 7: + v += 2; + if (v >= nHeight) + bEndCodeSeen = TRUE; + break; + } + if (bEndCodeSeen) + break; // while (--nExplen >= 0) + } + else // non interlaced + { + if (++v == nHeight) + { + bEndCodeSeen = TRUE; + break; // while (--nExplen >= 0) + } + } + } + } + } + while (FALSE); + + nCurrCode = 0; + nBitsNeeded = nCurrCodesize; + } + } + } + + if (ReadGifByte(pBmp,&nBytecount)) + goto quit; + } + } + break; + + case '!': // extension block + { + INT i,nFunctionCode,nByteCount,nDummy; + + if (ReadGifByte(pBmp,&nFunctionCode)) goto quit; + if (ReadGifByte(pBmp,&nByteCount)) goto quit; + + while (nByteCount != 0) + { + for (i = 0; i < nByteCount; ++i) + { + if (ReadGifByte(pBmp,&nDummy)) goto quit; + } + + if (ReadGifByte(pBmp,&nByteCount)) goto quit; + } + } + break; + + case ';': // terminator + bDecoding = FALSE; + break; + + default: goto quit; + } + } + + _ASSERT(bDecoding == FALSE); // decoding successful + + // normal decoding exit + _ASSERT(hPalette == NULL); // resource free + hPalette = CreateBIPalette((PBITMAPINFOHEADER) &bmi); + // save old palette + hOldPalette = SelectPalette(hWindowDC, hPalette, FALSE); + RealizePalette(hWindowDC); + +quit: + if (hBitmap != NULL && bDecoding) // creation failed + { + DeleteObject(hBitmap); // delete bitmap + hBitmap = NULL; + } + return hBitmap; +} + HBITMAP LoadBitmapFile(LPCTSTR szFilename) { HANDLE hFile; HANDLE hMap; - LPBYTE pbyFile; + BMPFILE Bmp; HBITMAP hBitmap; - LPBITMAPFILEHEADER pBmfh; - LPBITMAPINFO pBmi; SetCurrentDirectory(szEmuDirectory); hFile = CreateFile(szFilename, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL); SetCurrentDirectory(szCurrentDirectory); - // opened with GENERIC_READ -> PAGE_READONLY + if (hFile == INVALID_HANDLE_VALUE) return NULL; + Bmp.dwFileSize = GetFileSize(hFile, NULL); hMap = CreateFileMapping(hFile, NULL, PAGE_READONLY, 0, 0, NULL); if (hMap == NULL) { CloseHandle(hFile); return NULL; } - // opened with GENERIC_READ -> PAGE_READONLY -> FILE_MAP_READ - pbyFile = MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, 0); - if (pbyFile == NULL) + Bmp.pbyFile = MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, 0); + if (Bmp.pbyFile == NULL) { CloseHandle(hMap); CloseHandle(hFile); return NULL; } - hBitmap = NULL; - pBmfh = (LPBITMAPFILEHEADER)pbyFile; - if (pBmfh->bfType != 0x4D42) goto quit; // "BM" - pBmi = (LPBITMAPINFO)(pbyFile+sizeof(BITMAPFILEHEADER)); + do + { + // check for bitmap file header "BM" + if (Bmp.dwFileSize >= 2 && *(WORD *) Bmp.pbyFile == 0x4D42) + { + hBitmap = DecodeBmp(&Bmp); + break; + } - _ASSERT(hPalette == NULL); // resource free - hPalette = CreateBIPalette(&pBmi->bmiHeader); - // save old palette - hOldPalette = SelectPalette(hWindowDC, hPalette, FALSE); - RealizePalette(hWindowDC); + // check for GIF file header + if ( Bmp.dwFileSize >= 6 + && (memcmp(Bmp.pbyFile,"GIF87a",6) == 0 || memcmp(Bmp.pbyFile,"GIF89a",6) == 0)) + { + hBitmap = DecodeGif(&Bmp); + break; + } - hBitmap = CreateDIBitmap( - hWindowDC, - &pBmi->bmiHeader, - CBM_INIT, - pbyFile + pBmfh->bfOffBits, - pBmi, DIB_RGB_COLORS); - _ASSERT(hBitmap != NULL); + // unknown file type + hBitmap = NULL; + } + while (FALSE); -quit: - UnmapViewOfFile(pbyFile); + UnmapViewOfFile(Bmp.pbyFile); CloseHandle(hMap); CloseHandle(hFile); return hBitmap; diff --git a/source/KML.C b/source/KML.C index 192be45..44f43b8 100644 --- a/source/KML.C +++ b/source/KML.C @@ -11,7 +11,6 @@ #include "Emu48.h" #include "kml.h" -static VOID FatalError(VOID); static VOID InitLex(LPCTSTR szScript); static VOID CleanLex(VOID); static VOID SkipWhite(UINT nMode); @@ -91,6 +90,7 @@ static KmlToken pLexToken[] = {TOK_MODEL, 000002, 5,_T("Model")}, {TOK_CLASS, 000001, 5,_T("Class")}, {TOK_PRESS, 000001, 5,_T("Press")}, +// {TOK_IFMEM, 000111, 5,_T("IfMem")}, {TOK_TYPE, 000001, 4,_T("Type")}, {TOK_SIZE, 000011, 4,_T("Size")}, {TOK_ZOOM, 000001, 4,_T("Zoom")}, @@ -118,6 +118,7 @@ static CONST TokenId eIsBlock[] = { TOK_IFFLAG, TOK_IFPRESSED, + TOK_IFMEM, TOK_ONDOWN, TOK_ONUP }; @@ -125,8 +126,8 @@ static CONST TokenId eIsBlock[] = static BOOL bClicking = FALSE; static UINT uButtonClicked = 0; -static BOOL bPressed = FALSE; // no key pressed -static UINT uLastPressedKey = 0; // var for last pressed key +static BOOL bKeyPressed = FALSE; // no key pressed +static UINT uLastKeyPressed = 0; // var for last pressed key //################ //# @@ -381,6 +382,38 @@ static VOID BrowseFolder(HWND hDlg) return; } +static VOID UpdateScriptList(HWND hDlg) +{ + HWND hList; + KmlScript* pList; + UINT nIndex,nEntries; + DWORD dwActId = CB_ERR; + + // add all script titles to combo box + hList = GetDlgItem(hDlg,IDC_KMLSCRIPT); + SendMessage(hList, CB_RESETCONTENT, 0, 0); + for (nEntries = 0, pList = pKmlList; pList; pList = pList->pNext) + { + nIndex = (UINT) SendMessage(hList, CB_ADDSTRING, 0, (LPARAM)pList->szTitle); + SendMessage(hList, CB_SETITEMDATA, nIndex, (LPARAM) pList->nId); + + // this has the same filename like the actual KML script + if (lstrcmpi(szCurrentKml, pList->szFilename) == 0) + dwActId = pList->nId; + + nEntries++; + } + + while (--nEntries > 0) // scan all combo box items + { + // found ID of actual KML script + if ((DWORD) SendMessage(hList, CB_GETITEMDATA, nEntries, 0) == dwActId) + break; + } + SendMessage(hList, CB_SETCURSEL, nEntries, 0); + return; +} + static INT_PTR CALLBACK ChooseKMLProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { HWND hList; @@ -391,16 +424,7 @@ static INT_PTR CALLBACK ChooseKMLProc(HWND hDlg, UINT message, WPARAM wParam, LP { case WM_INITDIALOG: SetDlgItemText(hDlg,IDC_EMUDIR,szEmuDirectory); - hList = GetDlgItem(hDlg,IDC_KMLSCRIPT); - SendMessage(hList, CB_RESETCONTENT, 0, 0); - pList = pKmlList; - while (pList) - { - nIndex = (UINT) SendMessage(hList, CB_ADDSTRING, 0, (LPARAM)pList->szTitle); - SendMessage(hList, CB_SETITEMDATA, nIndex, (LPARAM)pList->nId); - pList = pList->pNext; - } - SendMessage(hList, CB_SETCURSEL, 0, 0); + UpdateScriptList(hDlg); // update combo box with script titles return TRUE; case WM_COMMAND: switch (LOWORD(wParam)) @@ -412,24 +436,14 @@ static INT_PTR CALLBACK ChooseKMLProc(HWND hDlg, UINT message, WPARAM wParam, LP DestroyKmlList(); GetDlgItemText(hDlg,IDC_EMUDIR,szEmuDirectory,ARRAYSIZEOF(szEmuDirectory)); CreateKmlList(); - hList = GetDlgItem(hDlg,IDC_KMLSCRIPT); - SendMessage(hList, CB_RESETCONTENT, 0, 0); - pList = pKmlList; - while (pList) - { - nIndex = (UINT) SendMessage(hList, CB_ADDSTRING, 0, (LPARAM)pList->szTitle); - SendMessage(hList, CB_SETITEMDATA, nIndex, (LPARAM)pList->nId); - pList = pList->pNext; - } - SendMessage(hList, CB_SETCURSEL, 0, 0); + UpdateScriptList(hDlg); // update combo box with script titles return TRUE; case IDOK: GetDlgItemText(hDlg,IDC_EMUDIR,szEmuDirectory,ARRAYSIZEOF(szEmuDirectory)); hList = GetDlgItem(hDlg,IDC_KMLSCRIPT); nIndex = (UINT) SendMessage(hList, CB_GETCURSEL, 0, 0); nIndex = (UINT) SendMessage(hList, CB_GETITEMDATA, nIndex, 0); - pList = pKmlList; - while (pList) + for (pList = pKmlList; pList; pList = pList->pNext) { if (pList->nId == nIndex) { @@ -437,7 +451,6 @@ static INT_PTR CALLBACK ChooseKMLProc(HWND hDlg, UINT message, WPARAM wParam, LP EndDialog(hDlg, IDOK); break; } - pList = pList->pNext; } return TRUE; case IDCANCEL: @@ -521,12 +534,6 @@ fail: //# //################ -static VOID FatalError(VOID) -{ - PrintfToLog(_T("Fatal Error at line %i"), nLexLine); - return; -} - static VOID InitLex(LPCTSTR szScript) { nLexLine = 1; @@ -664,11 +671,12 @@ static LPTSTR ParseString(VOID) lpszString = HeapReAlloc(hHeap,0,lpszString,nBlock * sizeof(lpszString[0])); } - if (*szText == _T('\\')) szText++; // skip '\' escape char + if (*szText == _T('\\')) szText++; // skip '\' escape char to decode \" if (*szText == 0) // EOS found inside string { + lpszString[nLength] = 0; // set EOS + PrintfToLog(_T("%i: Invalid string %s."), nLexLine, lpszString); HeapFree(hHeap,0,lpszString); - FatalError(); return NULL; } lpszString[nLength++] = *szText++; // save char @@ -803,12 +811,10 @@ static KmlLine* IncludeLines(LPCTSTR szFilename) if (hFile == INVALID_HANDLE_VALUE) { PrintfToLog(_T("Error while opening include file %s."), szFilename); - FatalError(); return NULL; } if ((lpbyBuf = MapKMLFile(hFile)) == NULL) { - FatalError(); return NULL; } @@ -851,13 +857,12 @@ static KmlLine* ParseLines(VOID) if (eToken != TOK_STRING) // not a string (token don't begin with ") { AddToLog(_T("Include: string expected as parameter.")); - FatalError(); goto abort; } szFilename = szLexString; // save pointer to allocated memory if (pFirst) { - pLine->pNext = IncludeLines(szLexString); + pLine = pLine->pNext = IncludeLines(szLexString); } else { @@ -907,51 +912,45 @@ abort: static KmlBlock* ParseBlock(TokenId eType) { - UINT u1; + UINT i; KmlBlock* pBlock; TokenId eToken; nLinesIncludeLevel = 0; - pBlock = HeapAlloc(hHeap,HEAP_ZERO_MEMORY,sizeof(KmlBlock)); + VERIFY(pBlock = HeapAlloc(hHeap,HEAP_ZERO_MEMORY,sizeof(KmlBlock))); pBlock->eType = eType; - u1 = 0; - while (pLexToken[u1].nLen) + for (i = 0; pLexToken[i].nLen; ++i) // search for token { - if (pLexToken[u1].eId == eType) break; - u1++; + if (pLexToken[i].eId == eType) break; } - if (pLexToken[u1].nParams) + + if (pLexToken[i].nParams) // has block command arguments { - eToken = Lex(LEX_COMMAND); - switch (eToken) + // block command parser accept only one integer argument + _ASSERT(pLexToken[i].nParams == TYPE_INTEGER); + + eToken = Lex(LEX_PARAM); // decode argument + if (eToken != TOK_INTEGER) { - case TOK_NONE: - AddToLog(_T("Open Block at End Of File.")); + PrintfToLog(_T("%i: Block %s parameter must be an integer."), nLexLine, pLexToken[i].szName); HeapFree(hHeap,0,pBlock); - FatalError(); - return NULL; - case TOK_INTEGER: - if ((pLexToken[u1].nParams&7)!=TYPE_INTEGER) - { - AddToLog(_T("Wrong block argument.")); - HeapFree(hHeap,0,pBlock); - FatalError(); - return NULL; - } - pBlock->nId = nLexInteger; - break; - default: - AddToLog(_T("Wrong block argument.")); - HeapFree(hHeap,0,pBlock); - FatalError(); return NULL; } + + pBlock->nId = nLexInteger; // remember block no. + } + + eToken = Lex(LEX_PARAM); // decode argument + if (eToken != TOK_EOL) + { + PrintfToLog(_T("%i: Too many parameters for block %s."), nLexLine, pLexToken[i].szName); + HeapFree(hHeap,0,pBlock); + return NULL; } pBlock->pFirstLine = ParseLines(); - if (pBlock->pFirstLine == NULL) // break on ParseLines error { HeapFree(hHeap,0,pBlock); @@ -981,12 +980,10 @@ static KmlBlock* IncludeBlocks(LPCTSTR szFilename) if (hFile == INVALID_HANDLE_VALUE) { PrintfToLog(_T("Error while opening include file %s."), szFilename); - FatalError(); return NULL; } if ((lpbyBuf = MapKMLFile(hFile)) == NULL) { - FatalError(); return NULL; } @@ -1022,7 +1019,6 @@ static KmlBlock* ParseBlocks(VOID) if (eToken != TOK_STRING) // not a string (token don't begin with ") { AddToLog(_T("Include: string expected as parameter.")); - FatalError(); goto abort; } szFilename = szLexString; // save pointer to allocated memory @@ -1039,28 +1035,24 @@ static KmlBlock* ParseBlocks(VOID) if (!IsGlobalBlock(eToken)) // check for valid block commands { PrintfToLog(_T("%i: Invalid Block %s."), nLexLine, GetStringOf(eToken)); - FatalError(); goto abort; } if (pFirst) pBlock = pBlock->pNext = ParseBlock(eToken); else pBlock = pFirst = ParseBlock(eToken); - if (pBlock == NULL) - { - AddToLog(_T("Invalid block.")); - FatalError(); - goto abort; - } + + if (pBlock == NULL) goto abort; } - if (pFirst) pBlock->pNext = NULL; + if (pBlock) pBlock->pNext = NULL; if (*szText != 0) // still KML text left { - FatalError(); // error unknown block token goto abort; } return pFirst; + abort: + PrintfToLog(_T("Fatal Error at line %i."), nLexLine); if (pFirst) FreeBlocks(pFirst); return NULL; } @@ -1107,16 +1099,16 @@ static VOID InitGlobal(KmlBlock* pBlock) case TOK_ROM: if (pbyRom != NULL) { - PrintfToLog(_T("Rom %s Ignored."), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Rom %s ignored."), (LPTSTR)pLine->nParam[0]); AddToLog(_T("Please put only one Rom command in the Global block.")); break; } if (!MapRom((LPTSTR)pLine->nParam[0])) { - PrintfToLog(_T("Cannot open Rom %s"), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Cannot open Rom %s."), (LPTSTR)pLine->nParam[0]); break; } - PrintfToLog(_T("Rom %s Loaded."), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Rom %s loaded."), (LPTSTR)pLine->nParam[0]); break; case TOK_PATCH: if (pbyRom == NULL) @@ -1126,23 +1118,23 @@ static VOID InitGlobal(KmlBlock* pBlock) break; } if (PatchRom((LPTSTR)pLine->nParam[0]) == TRUE) - PrintfToLog(_T("Patch %s Loaded"), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Patch %s loaded."), (LPTSTR)pLine->nParam[0]); else - PrintfToLog(_T("Patch %s is Wrong or Missing"), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Patch %s is Wrong or Missing."), (LPTSTR)pLine->nParam[0]); break; case TOK_BITMAP: if (hMainDC != NULL) { - PrintfToLog(_T("Bitmap %s Ignored."), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Bitmap %s ignored."), (LPTSTR)pLine->nParam[0]); AddToLog(_T("Please put only one Bitmap command in the Global block.")); break; } if (!CreateMainBitmap((LPTSTR)pLine->nParam[0])) { - PrintfToLog(_T("Cannot Load Bitmap %s."), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Cannot load Bitmap %s."), (LPTSTR)pLine->nParam[0]); break; } - PrintfToLog(_T("Bitmap %s Loaded."), (LPTSTR)pLine->nParam[0]); + PrintfToLog(_T("Bitmap %s loaded."), (LPTSTR)pLine->nParam[0]); break; default: PrintfToLog(_T("Command %s Ignored in Block %s"), GetStringOf(pLine->eCommand), GetStringOf(pBlock->eType)); @@ -1247,14 +1239,16 @@ static VOID InitButton(KmlBlock* pBlock) { KmlLine* pLine = pBlock->pFirstLine; UINT nLevel = 0; - if (nButtons>=256) + + _ASSERT(ARRAYSIZEOF(pButton) == 256); // adjust warning message + if (nButtons >= ARRAYSIZEOF(pButton)) { AddToLog(_T("Only the first 256 buttons will be defined.")); return; } pButton[nButtons].nId = pBlock->nId; pButton[nButtons].bDown = FALSE; - pButton[nButtons].nType = 0; // default : user defined button + pButton[nButtons].nType = 0; // default: user defined button while (pLine) { if (nLevel) @@ -1379,6 +1373,8 @@ static KmlLine* If(KmlLine* pLine, BOOL bCondition) static KmlLine* RunLine(KmlLine* pLine) { + BYTE byVal; + switch (pLine->eCommand) { case TOK_MAP: @@ -1407,9 +1403,11 @@ static KmlLine* RunLine(KmlLine* pLine) break; case TOK_IFPRESSED: return If(pLine,byVKeyMap[pLine->nParam[0]&0xFF]); - break; case TOK_IFFLAG: return If(pLine,(nKMLFlags>>(pLine->nParam[0]&0x1F))&1); + case TOK_IFMEM: + Npeek(&byVal,pLine->nParam[0],1); + return If(pLine,(byVal & pLine->nParam[1]) == pLine->nParam[2]); default: break; } @@ -1825,7 +1823,7 @@ static VOID ReleaseAllButtons(VOID) // release all buttons ReleaseButton(i); // release button } - bPressed = FALSE; // key not pressed + bKeyPressed = FALSE; // key not pressed bClicking = FALSE; // var uButtonClicked not valid (no virtual or nohold key) uButtonClicked = 0; // set var to default } @@ -1839,6 +1837,9 @@ VOID ReloadButtons(BYTE *Keyboard_Row, UINT nSize) { // get state of button from keyboard matrix pButton[i].bDown = ((Keyboard_Row[pButton[i].nOut] & pButton[i].nIn) != 0); + + // any key pressed? + bKeyPressed = bKeyPressed || pButton[i].bDown; } } } @@ -1953,8 +1954,8 @@ VOID MouseButtonDownAt(UINT nFlags, DWORD x, DWORD y) bClicking = TRUE; uButtonClicked = i; } - bPressed = TRUE; // key pressed - uLastPressedKey = i; // save pressed key + bKeyPressed = TRUE; // key pressed + uLastKeyPressed = i; // save pressed key PressButton(i); return; } @@ -1964,7 +1965,7 @@ VOID MouseButtonDownAt(UINT nFlags, DWORD x, DWORD y) VOID MouseButtonUpAt(UINT nFlags, DWORD x, DWORD y) { UINT i; - if (bPressed) // emulator key pressed + if (bKeyPressed) // emulator key pressed { ReleaseAllButtons(); // release all buttons return; @@ -2010,7 +2011,7 @@ VOID MouseMovesTo(UINT nFlags, DWORD x, DWORD y) SetCursor(hCursor); if (!(nFlags&MK_LBUTTON)) return; // left mouse key not pressed -> quit - if ((bPressed) && !(ClipButton(x,y,uLastPressedKey))) // not on last pressed key + if (bKeyPressed && !ClipButton(x,y,uLastKeyPressed)) // not on last pressed key ReleaseAllButtons(); // release all buttons if (!bClicking) return; // normal emulation key -> quit diff --git a/source/KML.H b/source/KML.H index c797f87..54c062a 100644 --- a/source/KML.H +++ b/source/KML.H @@ -45,19 +45,20 @@ typedef enum eTokenId TOK_MODEL, //29 TOK_CLASS, //30 TOK_PRESS, //31 - TOK_TYPE, //32 - TOK_SIZE, //33 - TOK_DOWN, //34 - TOK_ZOOM, //35 - TOK_ELSE, //36 - TOK_ONUP, //37 - TOK_EOL, //38 - TOK_MAP, //39 - TOK_ROM, //40 - TOK_VGA, //41 - TOK_LCD, //42 - TOK_NOTFLAG, //43 - TOK_END //44 + TOK_IFMEM, //32 + TOK_TYPE, //33 + TOK_SIZE, //34 + TOK_DOWN, //35 + TOK_ZOOM, //36 + TOK_ELSE, //37 + TOK_ONUP, //38 + TOK_EOL, //39 + TOK_MAP, //34 + TOK_ROM, //41 + TOK_VGA, //42 + TOK_LCD, //43 + TOK_NOTFLAG, //44 + TOK_END //45 } TokenId; #define TYPE_NONE 00 diff --git a/source/MRU.C b/source/MRU.C new file mode 100644 index 0000000..9e388ef --- /dev/null +++ b/source/MRU.C @@ -0,0 +1,320 @@ +/* + * mru.c + * + * This file is part of Emu48 + * + * Copyright (C) 2007 Christoph Gießelink + * + */ +#include "pch.h" +#include "resource.h" +#include "Emu48.h" + +static TCHAR szOriginal[MAX_PATH] = _T(""); + +static LPTSTR *ppszFiles = NULL; // pointer to MRU table +static INT nEntry = 0; // no. of MRU entries + +static HMENU hMruMenu = NULL; // menu handle for MRU list +static INT nMruPos; // insert position for MRU list + +static BOOL GetMenuPosForId(HMENU hMenu, UINT nItem) +{ + HMENU hSubMenu; + UINT nID; + INT i,nMaxID; + + nMaxID = GetMenuItemCount(hMenu); + for (i = 0; i < nMaxID; ++i) + { + nID = GetMenuItemID(hMenu,i); // get ID + + if (nID == 0) continue; // separator or invalid command + + if (nID == (UINT)-1) // possibly a popup menu + { + hSubMenu = GetSubMenu(hMenu,i); // try to get handle to popup menu + if (hSubMenu != NULL) // it's a popup menu + { + // recursive search + if (GetMenuPosForId(hSubMenu,nItem)) + return TRUE; + } + continue; + } + + if (nID == nItem) // found ID + { + hMruMenu = hMenu; // remember menu and position + nMruPos = i; + return TRUE; + } + } + return FALSE; +} + +BOOL MruInit(INT nNum) +{ + HMENU hMenu = GetMenu(hWnd); // main menu + + _ASSERT(ppszFiles == NULL); // MRU already initialized + + if (*szOriginal == 0) // get orginal value of first MRU entry + { + VERIFY(GetMenuString(hMenu,ID_FILE_MRU_FILE1,szOriginal,ARRAYSIZEOF(szOriginal),MF_BYCOMMAND)); + } + + // no. of files in MRU list + nEntry = ReadSettingsInt(_T("MRU"),_T("FileCount"),nNum); + + // look for menu position of ID_FILE_MRU_FILE1 + VERIFY(GetMenuPosForId(hMenu,ID_FILE_MRU_FILE1)); + + if (nEntry > 0) // allocate MRU table + { + // create MRU table + if ((ppszFiles = HeapAlloc(hHeap,0,nEntry * sizeof(*ppszFiles))) == NULL) + return TRUE; + + // fill each entry + for (nNum = 0; nNum < nEntry; ++nNum) + ppszFiles[nNum] = NULL; + + MruReadList(); // read actual MRU list + MruUpdateMenu(); // update menu + } + else // kill MRU menu entries + { + // delete MRU menu + DeleteMenu(hMruMenu,nMruPos,MF_BYPOSITION); + + // delete following separator + _ASSERT((GetMenuState(hMruMenu,nMruPos,MF_BYPOSITION) & MF_SEPARATOR) != 0); + DeleteMenu(hMruMenu,nMruPos,MF_BYPOSITION); + } + return FALSE; +} + +VOID MruCleanup(VOID) +{ + INT i; + + MruWriteList(); // write actual MRU list + + for (i = 0; i < nEntry; ++i) // cleanup each entry + { + if (ppszFiles[i] != NULL) + HeapFree(hHeap,0,ppszFiles[i]); // cleanup entry + } + + if (ppszFiles != NULL) // table defined + { + HeapFree(hHeap,0,ppszFiles); // free table + ppszFiles = NULL; + } + return; +} + +VOID MruAdd(LPCTSTR lpszEntry) +{ + TCHAR szFilename[MAX_PATH]; + LPTSTR lpFilePart; + INT i; + + if (nEntry == 0) return; // no entries + + // get full path name + GetFullPathName(lpszEntry,ARRAYSIZEOF(szFilename),szFilename,&lpFilePart); + + // look if entry is already in table + for (i = 0; i < nEntry; ++i) + { + // already in table -> quit + if ( ppszFiles[i] != NULL + && lstrcmpi(ppszFiles[i],szFilename) == 0) + { + MruUpdateMenu(); // update menu + return; + } + } + + i = nEntry - 1; // last index + if (ppszFiles[i] != NULL) + HeapFree(hHeap,0,ppszFiles[i]); // free oldest entry + + for (; i > 0; --i) // move old entries 1 line down + { + ppszFiles[i] = ppszFiles[i-1]; + } + + // add new entry to top + ppszFiles[0] = DuplicateString(szFilename); + + MruUpdateMenu(); // update menu + return; +} + +VOID MruRemove(INT nIndex) +{ + HeapFree(hHeap,0,ppszFiles[nIndex]); // free entry + + for (; nIndex < nEntry - 1; ++nIndex) // move old entries 1 line up + { + ppszFiles[nIndex] = ppszFiles[nIndex+1]; + } + + ppszFiles[nIndex] = NULL; // clear last line + + MruUpdateMenu(); // update menu + return; +} + +INT MruEntries(VOID) +{ + return nEntry; +} + +LPCTSTR MruFilename(INT nIndex) +{ + _ASSERT(ppszFiles != NULL); // MRU not initialized + _ASSERT(nIndex >= 0 && nIndex < nEntry); // inside range + return ppszFiles[nIndex]; +} + +VOID MruUpdateMenu(VOID) +{ + TCHAR szCurPath[MAX_PATH]; + HANDLE hMenu; + BOOL bEmpty; + INT i; + + if (nEntry == 0) return; // no entries + + _ASSERT(ppszFiles != NULL); // MRU not initialized + _ASSERT(hWnd != NULL); + VERIFY(hMenu = GetMenu(hWnd)); // main menu + + bEmpty = TRUE; // MRU list empty + for (i = 0; i < nEntry; ++i) // delete all menu entries + { + DeleteMenu(hMenu,ID_FILE_MRU_FILE1+i,MF_BYCOMMAND); + + if (ppszFiles[i] != NULL) // valid entry + bEmpty = FALSE; // MRU list not empty + } + + if (bEmpty) // empty MRU list + { + // fill with orginal string + VERIFY(InsertMenu(hMruMenu,nMruPos,MF_STRING|MF_BYPOSITION|MF_GRAYED,ID_FILE_MRU_FILE1,szOriginal)); + return; + } + + // current directory + GetCurrentDirectory(ARRAYSIZEOF(szCurPath),szCurPath); + + for (i = 0; i < nEntry; ++i) // add menu entries + { + if (ppszFiles[i] != NULL) // valid entry + { + TCHAR szMenuname[2*MAX_PATH+3]; + TCHAR szFilename[MAX_PATH]; + LPTSTR lpFilePart,lpszPtr; + + // check if file path and current path is identical + if (GetFullPathName(ppszFiles[i],ARRAYSIZEOF(szFilename),szFilename,&lpFilePart)) + { + TCHAR szCutname[MAX_PATH]; + + *(lpFilePart-1) = 0; // devide path and name + + // name is current directory -> use only name + if (lstrcmpi(szCurPath,szFilename) == 0) + { + // short name view + } + else + { + // full name view + lpFilePart = ppszFiles[i]; + } + + // cut filename to fit into menu + GetCutPathName(lpFilePart,szCutname,ARRAYSIZEOF(szCutname),36); + lpFilePart = szCutname; + + lpszPtr = szMenuname; // adding accelerator key + *lpszPtr++ = _T('&'); + *lpszPtr++ = _T('0') + ((i + 1) % 10); + *lpszPtr++ = _T(' '); + + // copy file to view buffer and expand & to && + while (*lpFilePart != 0) + { + if (*lpFilePart == _T('&')) + { + *lpszPtr++ = *lpFilePart; + } + *lpszPtr++ = *lpFilePart++; + } + *lpszPtr = 0; + + VERIFY(InsertMenu(hMruMenu,nMruPos+i,MF_STRING|MF_BYPOSITION,ID_FILE_MRU_FILE1+i,szMenuname)); + } + } + } + return; +} + +VOID MruWriteList(VOID) +{ + TCHAR szItemname[32]; + INT i; + + // no. of files in MRU list + WriteSettingsInt(_T("MRU"),_T("FileCount"),nEntry); + + for (i = 0; i < nEntry; ++i) // add menu entries + { + _ASSERT(ppszFiles != NULL); // MRU not initialized + wsprintf(szItemname,_T("File%d"),i+1); + if (ppszFiles[i] != NULL) + { + WriteSettingsString(_T("MRU"),szItemname,ppszFiles[i]); + } + else + { + DelSettingsKey(_T("MRU"),szItemname); + } + } + return; +} + +VOID MruReadList(VOID) +{ + TCHAR szFilename[MAX_PATH]; + TCHAR szItemname[32]; + LPTSTR lpszValue; + INT i; + + _ASSERT(ppszFiles != NULL); // MRU not initialized + + for (i = 0; i < nEntry; ++i) // add menu entries + { + wsprintf(szItemname,_T("File%d"),i+1); + ReadSettingsString(_T("MRU"),szItemname,_T(""),szFilename,ARRAYSIZEOF(szFilename)); + + if (ppszFiles[i] != NULL) // already filled + { + HeapFree(hHeap,0,ppszFiles[i]); // free entry + ppszFiles[i] = NULL; // clear last line + lpszValue = _T(""); + } + + if (*szFilename) // read a valid entry + { + ppszFiles[i] = DuplicateString(szFilename); + } + } + return; +} diff --git a/source/PCH.H b/source/PCH.H index 8e5f784..468233b 100644 --- a/source/PCH.H +++ b/source/PCH.H @@ -26,6 +26,10 @@ #endif // _DEBUG #endif // _VERIFY +#if !defined INVALID_SET_FILE_POINTER +#define INVALID_SET_FILE_POINTER ((DWORD)-1) +#endif + #if !defined IDC_HAND // Win2k specific definition #define IDC_HAND MAKEINTRESOURCE(32649) #endif diff --git a/source/RESOURCE.H b/source/RESOURCE.H index c40a2e2..10dcaf7 100644 --- a/source/RESOURCE.H +++ b/source/RESOURCE.H @@ -2,6 +2,7 @@ // Microsoft Developer Studio generated include file. // Used by Emu48.rc // +#define IDM_DEBUG_SETTINGS 0x0010 #define IDI_EMU48 100 #define IDR_MENU 101 #define IDR_DEBUG 102 @@ -25,6 +26,7 @@ #define IDD_FIND 120 #define IDD_PROFILE 121 #define IDD_MACROSET 122 +#define IDD_DEBUG_SETTINGS 123 #define IDC_REALSPEED 1000 #define IDC_GRAYSCALE 1001 #define IDC_ALWAYSONTOP 1002 @@ -150,6 +152,10 @@ #define IDC_SOUND_SLIDER 1122 #define IDC_SOUND_SPEAKER 1123 #define IDC_SOUND_WAVE 1124 +#define IDC_DEBUG_SET_SYMB 1125 +#define IDC_DEBUG_SET_MODEL 1126 +#define IDC_DEBUG_SET_FILE 1227 +#define IDC_DEBUG_SET_BROWSE 1228 #define ID_FILE_NEW 40001 #define ID_FILE_OPEN 40002 #define ID_FILE_SAVE 40003 @@ -220,9 +226,9 @@ // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 123 +#define _APS_NEXT_RESOURCE_VALUE 124 #define _APS_NEXT_COMMAND_VALUE 40067 -#define _APS_NEXT_CONTROL_VALUE 1125 +#define _APS_NEXT_CONTROL_VALUE 1129 #define _APS_NEXT_SYMED_VALUE 108 #endif #endif diff --git a/source/RPL.C b/source/RPL.C index bbb752f..88c7e5e 100644 --- a/source/RPL.C +++ b/source/RPL.C @@ -40,7 +40,7 @@ #define DOMINIFONT 0x026FE // Mini Font (HP49G) #define DOBINT 0x02911 // System Binary #define DOREAL 0x02933 // Real -#define DOEREAL 0x02955 // Long Real +#define DOEREL 0x02955 // Long Real #define DOCMP 0x02977 // Complex #define DOECMP 0x0299D // Long Complex #define DOCHAR 0x029BF // Character @@ -154,7 +154,7 @@ DWORD RPL_SkipOb(DWORD d) case DOFLASHP: l = (cCurrentRomType!='X' && cCurrentRomType!='2' && cCurrentRomType!='Q') ? 5 : 12; break; // Flash PTR (HP49G) // CdB for HP: add apples case DOBINT: l = 10; break; // System Binary case DOREAL: l = 21; break; // Real - case DOEREAL: l = 26; break; // Long Real + case DOEREL: l = 26; break; // Long Real case DOCMP: l = 37; break; // Complex case DOECMP: l = 47; break; // Long Complex case DOCHAR: l = 7; break; // Character @@ -260,7 +260,7 @@ DWORD RPL_ObjectSize(BYTE *o,DWORD s) case DOFLASHP: l = (SERIES49) ? 12 : 5; break; // Flash PTR (HP49G) case DOBINT: l = 10; break; // System Binary case DOREAL: l = 21; break; // Real - case DOEREAL: l = 26; break; // Long Real + case DOEREL: l = 26; break; // Long Real case DOCMP: l = 37; break; // Complex case DOECMP: l = 47; break; // Long Complex case DOCHAR: l = 7; break; // Character diff --git a/source/SETTINGS.C b/source/SETTINGS.C index 014e606..a323e92 100644 --- a/source/SETTINGS.C +++ b/source/SETTINGS.C @@ -176,6 +176,7 @@ VOID ReadSettings(VOID) bAlwaysDisplayLog = ReadInt(_T("KML"),_T("AlwaysDisplayLog"),bAlwaysDisplayLog); // Disassembler disassembler_mode = ReadInt(_T("Disassembler"),_T("Mnemonics"),disassembler_mode); + disassembler_symb = ReadInt(_T("Disassembler"),_T("Symbolic"),disassembler_symb); // Emulator bAlwaysOnTop = ReadInt(_T("Emulator"),_T("AlwaysOnTop"),bAlwaysOnTop); bActFollowsMouse = ReadInt(_T("Emulator"),_T("ActivationFollowsMouse"),bActFollowsMouse); @@ -216,6 +217,7 @@ VOID WriteSettings(VOID) WriteInt(_T("KML"),_T("AlwaysDisplayLog"),bAlwaysDisplayLog); // Disassembler WriteInt(_T("Disassembler"),_T("Mnemonics"),disassembler_mode); + WriteInt(_T("Disassembler"),_T("Symbolic"),disassembler_symb); // Emulator WriteInt(_T("Emulator"),_T("AlwaysOnTop"),bAlwaysOnTop); WriteInt(_T("Emulator"),_T("ActivationFollowsMouse"),bActFollowsMouse); diff --git a/source/STACK.C b/source/STACK.C index 06f2222..28c605a 100644 --- a/source/STACK.C +++ b/source/STACK.C @@ -527,10 +527,11 @@ LRESULT OnStackPaste(VOID) // paste data to stack if (!(Chipset.IORam[BITOFFSET]&DON)) { KeyboardEvent(TRUE,0,0x8000); + Sleep(200); KeyboardEvent(FALSE,0,0x8000); // wait for sleep mode - while(Chipset.Shutdn == FALSE) Sleep(0); + while (Chipset.Shutdn == FALSE) Sleep(0); } _ASSERT(nState == SM_RUN); // emulator must be in RUN state