• Print

Emu28 1.33

Description

Emu28 is an emulator for the Clamshell series calculators HP18C and HP28C. It base on the sources of the famous HP calculator emulator Emu48 and is published under the GPL. The emulator is running on all Win32 platforms. You may have a look onto the latest changes. Like all emulators Emu28 needs a ROM image to work. I have no license to publish them, so they aren't included in the emulator package. Sorry I will not answer any ROM image related questions. For further questions how to check ROM images read the Emu28 manual please. I want to thank Sébastien Carlier, Cyrille de Brebisson and Jean-François Garnier for there material I used for making this program.

 

Since Emu28 v1.19 of the Win32 version the saving location of the emulator settings changed from the Emu28.ini file to the registry at HKCUSoftwareEmu28. So when you update Emu28 from v1.18 and earlier to the latest version you will lose all your settings. The program E28INI2REG.exe is copying these settings automatically to the new location.

Changelog

Emu28 v1.33

 

DEBUGGER.C

  • added enum type, static variables and static function prototypes for trace implementation
  • removed all occurrences of UNREFERENCED_PARAMETER(wParam);
  • changed function NotifyDebugger(), added flush trace buffer
  • changed function Debugger(), added trace implementation in case WM_INITDIALOG, WM_DESTROY and WM_COMMAND
  • added functions StartTrace(), StopTrace(), FlushTrace(), PrintTrace(), OutTrace(), OnBrowseTraceSettings(), TraceSettings(), OnTraceSettings() and OnTraceEnable() for traceimplementation


DISPLAY.C

  • changed function CreateMainBitmap(), changed LoadBitmapFile() function call loading a bitmap with realizing a palette
  • changed function CreateAnnunBitmap(), changed LoadBitmapFile() function call loading a bitmap without realizing a palette
  • added function SetAnnunBitmap(), setting a created annunciator bitmap


EMU28.C

  • added variable bMouseButton saving if mouse button was pressed when mouse cursor was inside a virtual button hit area
  • removed function OnNcHitTest(), replaced by additional OnLButtonDown() implementation
  • changed function OnLButtonDown(), added part for windows movement when having no title bar prior done over the WM_NCHITTEST message handler which caused side effects
  • changed function OnLButtonUp() and OnKeyDown(), added reset of variable bMouseButton
  • changed function MainWndProc(), added WM_ENDSESSION handler for document saving, WM_CONTEXTMENU calls the context menu only when the right mouse button was not pressed over a virtual button hit area before, removed the WM_NCRBUTTONUP case and removed the WM_NCHITTEST message handler


EMU28.DSP

  • added definition for lodepng.c


EMU28.H

  • changed function prototype
  • extern declaration of global functions


EMU28.RC

  • added dialog IDD_TRACE
  • changed menu IDR_DEBUG, added ID_TRACE_SETTINGS and ID_TRACE_ENABLE menu items
  • changed version and copyright


ENGINE.C

  • changed function Debugger(), added function fnOutTrace() call


FILES.C

  • added function CheckForBeepPatch() looking for ROM beep patches at known positions
    bugfix in function NewDocument(), initialize the ROM fingerprint after loading the KML script
  • changed function DecodeBmp(), DecodeGif(), DecodePng() and LoadBitmapFile(), changed function prototype by adding an argument if a palette should realized


KML.C

  • changed function ResizeMainBitmap(), added annunciator resize handling for annunciator definitions inside main bitmap
  • changed function InitKML(), added warning for ROM beep patches


LODEPNG.C

  • changed implementation file to LodePNG version 20190824 with unmarked typecast patches for x64 compatibility, Copyright (c) 2005-2019 Lode Vandevenne


LODEPNG.H

  • changed header file to LodePNG version 20190824


RESOURCE.H

  • added definitions

Links

Christoph Giesselink Emu28 Page

Downloads

Gallery


 
 

Comments

blog comments powered by Disqus