Emu28 ist ein HP-18C und HP-28C Taschenrechner Emulator für Windows.
Emu28 is a HP-18C and HP-28C calculator Emulator for Windows.
Zitat: Emu28 v1.14
DDESERV.C
- bugfix in function DdeCallback(), decoding of the item name wasn´t
UNICODE compatible
DEBUGGER.C
- added new function OnSetCursor(), message handler for
"Activation Follows Mouse" implementation
- changed function Debugger(), added "Always On Top" and
"Activation Follows Mouse" handling
- bugfix in function OnToolDebug(), argument for owner window handle
was wrong, but over the years I has liked this debugger dialog
behavior so I put in the correct argument for this behavior
DISPLAY.C
- changed function ResizeWindow(), added "Always on top" feature
EMU28.C
- moved CF_HPOBJ definition to EMU28.H
- removed global variable bClassicCursor
- added function ForceForegroundWindow() forcing window to
foreground
- changed function SettingsProc(), added "Always On Top" and
"Activation Follows Mouse" handling
- changed function OnMouseMove(), added "Activation follows mouse"
feature
- added function OnNcMouseMove() for "Activation follows mouse"
feature in non client area
- changed function MainWndProc(), added WM_NCMOUSEMOVE message
handler
- bugfix in function WinMain(), moved additional DDE stuff just
behind DDE server initialization, adjusted length for cutted
filenames preventing negative values and call ShowWindow() before
asking for a new document preventing a KML script dialog without a
parent window
EMU28.H
- added CF_HPOBJ definition from EMU28.C
- removed declaration of bClassicCursor
- extern declaration of global variables and functions
EMU28.RC
- added item "Always On Top" and "Activation Follows Mouse" in
settings dialog
- changed version and copyright
FILES.C
- added global variable saving the patched ROM checksum
- changed function SetWindowPathTitle(), adjusted length for cutted
filename
- changed function CrcRom(), change function prototype, added
unpacked data check and made function public
- bugfix in function CrcRom(), hadn´t detected address content
changes at addresses ending with a 0x2 and 0x3 because only lower
16 bit of checksum was used -> modified function cause a warmstart
because of new checksum
- changed function UnmapRom(), added reset of ROM checksum variable
- new function IsDataPacked() for unpacked data check
- changed function OpenDocument(), use ROM checksum made in
InitKML() and added checks for packed memory data
- changed function SaveDocument(), adjusted to new prototype of
CrcRom()
KML.C
- bugfix in function KillKML(), class member variable wasn´t reset
- bugfix in function TransparentCircle(), there was no radius value
check for preventing division by 0 and color low adjust value
wasn´t reached because of wrong color offset divisor -> adjusted
LOWADJ definition to get similar output to buggy earlier version
- changed function MouseMovesTo(), removed bClassicCursor switch
for using arrow cursor over button
- changed function InitKML(), added full check for unpacked ROM
image and build checksum of patched ROM
MOPS.C
- bugfix in function WriteIO(), display sync error flag reset in the
DSPCTL (0x303) register hasn´t worked on CPU reset condition
OPCODES.C
- bugfix in function o807(), Chipset.in register must be refreshed
before checking for a pressed key
PCH.H
- added include stddef.h
- restricted DWORD_PTR type definition for MSVC6.0 and earlier
RESOURCE.H
- added some definitions
SETTINGS.C
- changed function ReadSettings() and WriteSettings(), added item
"ActFollowsMouse" and "AlwaysOnTop" in section [Emulator], removed
item "ClassicCursor" from [KML] section in the INI-File
TIMER.C
- changed function CalcT2(), in the case of a pending timer2
interrupt return always the timer2 value 0xFFFFFFFF
Related links:
[ Diverse / Misc Emus ]
|