*** WARNING WARNING WARNING *** Uninstall of build 129 or earlier can remove all Windows Fonts!!! See note below under Build 129. Installing any version after 130 will fix the problem. Versions after build 132 may show an uninstall dialog for the older version, this is ok - the newer installer knows how to fix the bug. ======================================================================== == V 2.2 Build 168e ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 59+ ======================================================================== == V 2.2 Build 168d ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 58+ ======================================================================== == V 2.2 Build 168c ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 57+ ======================================================================== == V 2.2 Build 168b ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 56+ ======================================================================== == V 2.2 Build 168a ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 54+ ======================================================================== == V 2.2 Build 168 ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 53+ - - BUG FIXES - - -RPL Debugging Window The stack size is now correctly tested and does not halt if a pointer of 0 is found. ======================================================================== == V 2.2 Build 167 ===================================================== ======================================================================== - - BUG FIXES - - -Compression Compressing the very last xlib in a library could erroneously generate a "library number too large" error. ======================================================================== == V 2.2 Build 166 ===================================================== ======================================================================== -Editor Editor Options / Display and Editor Options / Highlighter now show the colors in the color selection boxes and not just the names of the colors. -EMU Updated to latest version of Service Pack 52+ This version has some provision for the HP82240B emulation. See http://hp.giesselink.com/hp82240b.htm for the emulator. - - BUG FIXES - - -EMU A problem with the Port 2 memory locking the calculator has been fixed. ======================================================================== == V 2.2 Build 164 ===================================================== ======================================================================== - - BUG FIXES - - -EMU Closing the EMU window and then restarting the EMU would hang the system. This bug had been introduced with the EMU v1.51+ release. ======================================================================== == V 2.2 Build 163 ===================================================== ======================================================================== -Project File open dialogs start with the project folder and then remember last folder opened. Starting with this version, the last folder is reset to the project folder whenever a project is opened. ======================================================================== == V 2.2 Build 162 ===================================================== ======================================================================== -Project The highest level compression information file is Cmprs.h. Many projects simply use the _Cmprs.h file alone. Programmers with multiple projects producing multiple libraries may find that each project needs a separate Cmprs.h file as well as the _Cmprs.h files. This is very unusual but it is now handled on the Project Tab with a Cmprs.h override file entry. -EMU Updated to latest version of Service Pack 51+ ======================================================================== == V 2.2 Build 161 ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 50+ - - BUG FIXES - - -Project Project Menu: "Reopen Last at Start" was not working when checked. ======================================================================== == V 2.2 Build 160 ===================================================== ======================================================================== -Conditional Compilation Two new variables have been added for conditional compiles (see the help article at Help - Index / "Conditional Compilation". CompressProj: 1 if compression is on, 0 if off; Rows80Proj: 1 if 80 row display is on, 0 if off. -EMU Updated to latest version of Service Pack 50+ - - BUG FIXES - - -Inform Editor Maximum length of message handlers and other code segments was 262,143 characters. It is now unlimited. Entering a field message handler and then selecting a different field would loose the message handler code. ======================================================================== == V 2.2 Build 159 ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 50+ - - BUG FIXES - - -HPToolsdll.dll MAKEROM had a long outstanding bug if an xName was 16 characters. This now works. -Inform Editor Accented characters (hex from 80-FF) were replace with "_" in all names. This is now allowed. Maximum length of message handlers and other code segments was 65,535 characters. It is now 262,143 characters. ======================================================================== == V 2.2 Build 158 ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 49+ -Editor Cut, Copy and Paste have been added to the right mouse menu. - - BUG FIXES - - -RPLDebugging Window / Bitmaps It was hard to view bitmaps so they are now scaled up 4x. The displayed bitmap was also being scaled to fit the window, this generally distorted the image. The bitmap part of the window is now automatically set to the right size. The entire bitmap window can grow or shrink under user control (shift-left mouse) to show more or less of the image. -Inform Editor If the title string was a long SysRPL string and then a new Inform file was created or opened with just a quoted string for a title an error message would be erroneously shown. -Compression xLib names containing "=" caused error messages in compression handling. NULLNAMEs are shortened by the compiler to 32 characters. This shows in the shortened names in the proj_def.h file. A similar 32 character limit will also be applied to any names in the _Cmprs.h file. xNAMEs are limited to 15 characters by MAKEROM. There is no automatic shortening of xNAMEs. This is the way HPTOOLS handles things! ======================================================================== == V 2.2 Build 156 ===================================================== ======================================================================== -Breakpoint Window Window can now be sized vertically to show more breakpoints. -New Icons Some new icons were added to the Project and Source Editor menus. Thanks to Jaime for the icons. - - BUG FIXES - - -Compression The compression operations were not case sensitive for xLib names. Compression error messages now follow compile and build messages. The earlier order was determined by the file names. ======================================================================== == V 2.2 Build 153 ===================================================== ======================================================================== -Compression ** WARNING ** The R command is now nnnLLL where LLL is the library number. This is consistent with ASM usage. Earlier beta versions had the LLL portion first. The S, U, E and N commands can take a 3 hex digit xLib number instead of a name. The xLib is always assummed part of the current library because that is the only library that can be compressed during the build. There are 3 help pages covering the revised way in which Cmprs.h and projectName_Cmprs.h files are used. PLEASE read them to understand all of the changes. See: Help\Project Window\Compressing Projects Help\Project Window\Compression File Help\Project Window\Compression Examples The "F" command which gives the name of the decompressor to use has a slight change. This command will NOT load the decompressor if there are no U or E xLib options specified. The loading is conditional. A new "L" command will force a load if that is what you want. The commands ignore everything after their argument. A "*" can also be used to begin a comment after any arguments. The L command, for example, without arguments would need an "*" to mark any comments. Debug4x will process Cmprs.h first then ProjectName_Cmprs.h. If an xLIB name appears in both, the last such name found will override earlier lines. F and R options may appear in either file but conflicts are handled by honoring the last occurence found. It may be a good idea to specify an R option in Cmprs.h if you are building multiple libraries that work together (i.e. multiple .hpp files residing in the same Windows folder). Then changes in the ROMPTR value only need to be done in one place. The BZ2 decompressor has been upgraded to UBZ2 2010 which is 708 nibbles long and slightly faster then the older BZ2 version. Added line to result file for xLibs not compressed because there was no memory saved. "S" for simple compression files are no longer encased in a :: ; structure, they are whatever you have coded (string, procedure, number etc.). - - BUG FIXES - - -Compression _DeCmPRss_ was added to the project_def.h file even when a ROMPTR was specified using the R option in the Cmprs.h file. Warning about breakpoints would occur over and over during a build of a compressed project if breakpoints were set. -Memory Windows There were a number of errors related to setting and clearing bookmarks. The cursor would also jump to and from the address area instead of remaining in the data areas. ======================================================================== == V 2.2 Build 149 ===================================================== ======================================================================== - - BUG FIXES - - -Libraries with more than 255 xLibs would hang or otherwise have problems during decompression. The ROMPTR calling the decompressor was inserted with a missing digit. ======================================================================== == V 2.2 Build 148 ===================================================== ======================================================================== -Highlighter did not show red for GOC GONC, RTNYES in CODEM sections. The key, AsmKeyWordList, will be deleted and corrected when Debug4x is first run. The key can be found under: HKCU\Software\Hewlett-Packard\Debug4x\SourceEdit\Highlight\ If you have any custom values, save them before running Debug4x. -EMU Updated to latest version of Service Pack 49+ -Compression Features (many thanks to Yann Collet for the code). A major revision to these features has been made. It is backwards compatible but read the help files under: Project Window\Compression File Summary of Compression Changes: Decompression will now work for HP-48 projects. You MUST use the DeComp_BZ2 decompressor ONLY!!!! This is the default for all projects. It is the only included decompressor that will work on an HP48. Decompress code is now a hidden entry in libraries and is only included once (for libraries only). "F" directive allows for selecting 1 of 2 Decompressors (a small one, DeComp_BZ, or a fast one, DeComp_BZ2). "R" directive prevents including decompression code and utilizes a user provided ROMPTR instead. If no "F" or "R" is specified, DeComp_BZ2 will be used. The added, generated ROMPTR value is listed in the error log. -Examples\Decompress\ The source code and project files for the new Decompressors are provided in this new example project. If you make changes to the examples, copy the decompressor object code to Debug4x\Include\ by double clicking the command line file CopyDeCompToInclude.bat in this folder. -Eliminate the 5 nibble EVAL in each xLib: Specifying the "E" option causes an EVAL command (5 nibbles) to be added after the call to the decompress ROMPTR. This extra 5 nibbles can be eliminated by doing the following: 1. Specify the command "F DeComp_eBZ2" in the project's ..Cmprs.h file. This invokes a decompressor which always does an EVAL after unpacking. 2. In the project's ..Cmprs.h file, use the "U" option instead of "E". This will force Debug4x to skip the inserting of EVAL after each xLib. This saves 5 nibbles/xLib. 3. If you do the above, remember that there will not be any U, unpack, option available for the project since the "U" command will be invoking an automatic EVAL in the decompressor. - - BUG FIXES - - -Divide by zero error would occur when compressing non-libraries. -Long path names (over 80 characters) would not be handled properly in HPTools when building libraries. ======================================================================== == V 2.2 Build 145 ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 48+ -Debugger ASM Window This form can now be sized vertically. The Memory Window will adjust to match. -Debugger ASM Window - Memory Area; Memory Window Page_Up, Page_Down, Home and End keys now work. Press Home once to go to top left corner, twice to go to address 00000. End key works in a similar fashion. Bookmarks: ctrl-shift with 1-9 will memorize a position in the memory window. ctrl with 1-9 will return to that position. A memorized line will be preceded by [x] where x=the key number. Bookmarks are SHARED between the Debugger ASM and the Memory windows. - - BUG FIXES - - -File Name Problems If a project folder or path to a file contained folders with "." in their name, files could be misnamed or placed in the wrong folders. File names of the form name.xxx.s would not be recognized properly. Windows 7, XPMode and some network situations have path names which begin with "\\", these were not handled properly and caused errors. Typically the root path would be duplicated in the error message as: \\root\folder\root\folder\... could not be found. ======================================================================== == V 2.2 Build 141 ===================================================== ======================================================================== -Editor Changed the font for the row numbers in left gutter to "Courier New". Old font was "Terminal" which many people did not have. ======================================================================== == V 2.2 Build 140 ===================================================== ======================================================================== -EMU Updated to latest version of Service Pack 47+ - - BUG FIXES - - - The editor was previously restricted to line lengths of 180 characters. This restriction was not rigorously enforced and caused problems when the functions TabsToSpaces or SpacesToTabs expanded line lengths beyond 180 characters. The line length has been extended to 1024 characters maximum. Lines beyond this size may create problems when SpacesToTabs are used or UNDO is invoked for those portions beyond 1024 characters. ======================================================================== == V 2.2 Build 138 ===================================================== ======================================================================== -EMU Adjusted .kml files screen colors. Should be closer to real calculator. Updated to Service Pack 47+ -SUPROM49.a A new entry point list updated and corrected to ROM 2.15 was included. ======================================================================== == V 2.2 Build 138 ===================================================== ======================================================================== -EMU Problem The 49G+ .kml files refer to ROM 2.09 (ROMG+.49G). The 50g .kml files refer to ROM 2.15 (ROMG+.50G). The above .kml files share a common calculator model in the MODEL statement (MODEL "Q"). If an EMU session is started with one ROM (like 50g) and then a different .kml is selected pointing to the other ROM (like switching to the 49G+), EMU will not detect the change in ROMs. This will cause the emulation to crash or hang or fail because the ROM change is not detected and the next instruction will have been switched to something different when the ROM changed. If you need to change between these models without first closing the EMU, edit the .kml files and use the same ROM (either one) for both .kml files. I have left the .kml alone so users may test with the older 2.09 ROM for the 49G+ versions. ======================================================================== == V 2.2 Build 137 ===================================================== ======================================================================== -EMU Updated with latest patches to Service Pack 46+ Added ROMG+.50G Version 2.15+ ROM for EMU 50G. Left ROMG+.49G for the 49G+ kml scripts. Changed R50g800.kml and R50g1024.kml to refer to the new 2.15+ ROM. ======================================================================== == V 2.2 Build 136 ===================================================== ======================================================================== -HP48.ttf Changed HP48.ttf font. Now works properly on Vista. -Service Pack 46+ for Emu48 Version 1.0 Added Most Recently Used File registry Entries ======================================================================== == V 2.2 Build 135 ===================================================== ======================================================================== -Editor Syntax highlighting for certain MASD commands have been added to ASMKEYS. To Get the new highlights, reset the highlighter by: Click View Editor Options in an RPL or saturn file (not user rpl). Click "Highlighter" tab. Press "RestoreDefaults: button. The new highlights include ->{, SKIPC, SKIPNC. -DDE48 The EMU DDE48.exe has been revised. The new command line can be seen in the DDE48.txt file in the EMU Program folder. -Service Pack 45+ for Emu48 Version 1.0 added BUSCC 00 (opcode 80B00) implementation added BUSCC 03 (opcode 80B30) implementation added BUSCC 04 (opcode 80B40) implementation added BUSCC 06 (opcode 80B60) implementation added BUSCC 07 (opcode 80B70) implementation added BUSCC 08 (opcode 80B80) implementation added BUSCC 09 (opcode 80B90) implementation added BUSCC 7F (opcode 80BF7) implementation but not called so far -Project Project Menu / Reopen Project / clear this List This is a new menu item to clear the list of projects. The current project, if one is open, will be added to the list when Debug4x is closed. - - BUG FIXES - - -Text Execution Shift Tab would fault on empty lines. ======================================================================== == V 2.2 Build 134 ===================================================== ======================================================================== -New Installer The installer is now a .exe file instead of a .zip file. The installer has been completely recoded and I hope this will improve Vista issues. -Name change In Add/Remove Programs and the Start Menu folder, the old name was Debug4x, it is now "HP 50,49,48 Development Kit". The main folder names under "My Documents" and Program Files is still Debug4x ("My Documents") and Hewlett-Packard\Debug4x (Program Files). - FILES AND FOLDERS HAVE BEEN MOVED * Default folder for new projects is under "My Documents\Hewlett-Packard\Debug4x\Projects" EMU is under "My Documents\Hewlett-Packard\Debug4x\EMU". You may have old files that you want to move to this folder. Old files are in C:\Program Files\Hewlett-Packard\Debug4x\EMU Include (Suprom etc) is under "My Documents\Hewlett-Packard\Debug4x\Include" These are the proper locations for Windows user files. Debug4x.exe, Emu48.exe and other .exe utilities are in ..\Program Files..\Debug4x\.." Just click "My Documents" and then "Debug4x". Existing Projects will have to be changed on their Emulator tab in the Project Window so they point to the new folders. -Projects Debug Data \ Binary File Name The standard file suffix of .hp' will be added to this name unless the entered name has a "." as the last character or some other (.x) suffix. ======================================================================== == V 2.2 Build 131 ===================================================== ======================================================================== *** WARNING WARNING WARNING *** Uninstall of build 129 or earlier can remove all Windows Fonts!!! See note below under Build 129 - - BUG FIXES - - -Projects Sometimes the source file was not found when double clicking a definition or address. The above bug is fixed but it is required that the .o and .l file be in the same folder (Debug4x will always do this). ======================================================================== == V 2.2 Build 130 ===================================================== ======================================================================== -EMU Emu has a minor update. Version is 43+ -Projects Default folder for new projects is under "My Documents\Hewlett-Packard\Debug4x\Projects" In the future, the "..\Emu", "..\Include" and "..\Examples" folders will be moved to that parent folder. This is the proper location for Windows user files and for Vista issues. Emu48.exe and other emu .exe utilities will stay in ..\Program Files..\Debug4x\Emu" - - BUG FIXES - - *** WARNING WARNING WARNING *** Uninstall of build 129 or earlier deletes the registry key: HKLM\Software\Microsoft\Windows NT\Current Version\Fonts Windows will then use only little squares, circles and arrows after the next system reboot. A fix is posted on the web. You must use the System Restore to recover but this is difficult to see with the fonts all damaged. Install this build or later ON TOP OF the old builds and the problem will not occur again. If this happens to you, the following may help: 1. Type [Windows Key] R - this opens the RUN box. 2. Type cmd - this gives a DOS command window. 3. Type \Windows\system32\restore\rstrui.exe to open System Restore It may be hard to see what the buttons are showing. The fix on the Debug4x web can help if you can open Internet Explorer and download the fix. ======================================================================== == V 2.2 Build 129 ===================================================== ======================================================================== - - BUG FIXES - - -Compression Warning The message "Warning: Breakpoints will not function when compressed files are used." can be a little repetitive. The message will now only appear when the compression option is first selected or when a breakpoint is actually set. -Inform Editor When the Quote Box is not checked for a title or label, the last character would not be displayed in the editor's example window. When the Quote Box is not checked for a title or label, double clicking opens the edit window and then adds a CR-LF to the end of the text. This shows as little square boxes after the text. The extra CR-LF would space the words "Source Code" from line 2 to line 3 of the generated source to a separate line causing error messages during build. The form title will no longer appear in line 2 if the Quote Box is not checked. Also the final CR-LF will be removed after the edit. Existing code will continue to show the final 2 square boxes until edited. This will do no harm. Select menu Edit / Save to clear the Build errors. ======================================================================== == V 2.2 Build 128 ===================================================== ======================================================================== -Inform Editor Now uses menus instead of fixed buttons. Changed screen styles to match rest of program. Edit / Set Creation Order menu will arrange order of fields and/or labels in generated source code. This is the order used by the calc when drawing and tabbling through the inform box. -EMU Emu is now at change level 43. - - BUG FIXES - - -Saturn Some of the new commands generated the wrong op-codes. This included: A=-A-1, B=-B-1, C=-C-1 and D=-D-1 ======================================================================== == V 2.2 Build 126 ===================================================== ======================================================================== UNINSTALL old versions using control panel before installing this one. Because we have dropped the .msi installer files. - - BUG FIXES - - -Installer No longer using .msi files. Too many problems. Installshield is back. Shortcuts were not properly added to the Start Menu folders for Japanese Language systems. This has not been tested but maybe is fixed. -Text Execution Now spaces the stack correctly in window. ======================================================================== == V 2.2 Build 125 ===================================================== ======================================================================== - - BUG FIXES - - Fixed font problem in Editor. ======================================================================== == V 2.2 Build 124 ===================================================== ======================================================================== When Debug4x is minimized to the Window's Taskbar, the name will now start with [ProjectName] Icons have been added to many of the menus. Menu style now includes the XP style shadows. New install package using Windows .msi type installation. -Source Editor User RPL Highlighter has added a new list of "Structures" words to the highlight types. Structures are shown in RED, while Reserved Words are still shown in BOLD RED. Structures are any of the following: IF THEN ELSE END CASE IFERR IFT IFTE FOR NEXT START STEP DO UNTIL WHILE REPEAT DIR Debug4x will delete the old "RPLKeyWordList" if it sees a registry from a build before 124. This prevents an overlap of the old RPLKeyWordList with the new RPLKeyWordList and the Structures list. -Project New Menu item Project / "Reopen Last At Start". This enables opening the last project when Debug4x starts, if Debug4x.exe is opened instead of opening a project file. - - BUG FIXES - - Fixed font problem in Editor \ View \ HP Character Table. If you see a different font, open a USer RPL file and then Edit \ View Options \ Highlight \ and set FONT to HP48. Fixed problems typing tri-graphs manually. ======================================================================== == V 2.2 Build 122 ===================================================== ======================================================================== -Project Window Project Data Tab / CONFIG Typing "=0" will prevent an automatic CONFIG routine from being added. Coding a name will use that name as the CONFIG entry. Leaving empty will result in an automatic CONFIG routine being added. Project Files File Names can be dragged and dropped to rearrange the order of the files. This changes the ROMPTR numbers for the items. The HPTools MAKEROM still forces xNAMES before other entries. Files can be selected one at a time, in groups by using shift+click, or scattered by using ctrl+click. - - BUG FIXES - - Project Files Tab Project files are no longer sorted. This allows the user to set the file order. The file order determines the ROMPTR # assigned during the MAKEROM pass in building a library. Drag and Drop feature has been added to make arrangement easier. There were several bugs in saving and prompting for saving project files. Sometimes the open source files would not reappear when the project was reopened. ======================================================================== == V 2.2 Build 121 ===================================================== ======================================================================== -Windows XP Styles Debug4x has been adjusted to follow the Windows XP Themes when available. Let me know if this causes a problem for you. -Project Window Building a project compiles (and loads as required) the SysRPL sections. After the SysRPL has been built, if Project Data / "Build Sends User RPL" is checked, then any User RPL files listed on the Project Files tab will be sent to the Emulator. This is a change to the order in which UserRPl was handled in prior versions. Window caption now shows a short file name as [name] followed by the full file path. The main Debug4x window and the DebugRPL, DebugASM and Text Execution windows will also change their title when the project changes. This helps identify the project when running more than 1 copy of Debug4x simulataneously. -Source Editor User RPL Breakpoints can now be set. This will cause a "41 MENU HALT \010" to be inserted in front of that line before uploading to the EMU. Clearing these breakpoints in the Editor does NOT clear them in the EMU unless the file is uploaded (F9 or F10) again. Window caption now shows a short file name as [name] followed by the full file path. File / Save As... can now save as a rich text format (rtf) file. If *.rtf is selected, the file is saved but the original name remains in the editor and the project. Cut/Copy to clipboard now includes 3 formats simultaneously: text: which will be pasted by most text editors RTF: (rich text format) which includes coloring and font information. Microsoft Word and some other prohrams can handle this format. Debug4x: internal format which can include column format (i.e. hold alt key while selecting). This format is used when pasting into Debug4x. Added menus Format / UnComment lines and Format / Comment Lines. Added menus Format / Set Right Edge to Cursor Added menus Format / Comments to Right Edge. Added menu Edit / Insert Date/Time Added new function to editor: "Show Verbs Containing", alt+ctrl+space. This is like ctrl+space (shows verbs that start like the text). New function will show any berbs containing the text so "DUP" will show "#+DUP" and many others. Right Mouse Click now moves the cursor. Status line shows column # instead of line # on left side. Improved Format / SpacesToTabs. The highlighting is now checked and spaces are NOT converted to tabs inside of strings or comments. Format Menu Format menus which will do the entire file are marked as " (file)". If some text is selected, the menu will change to " (select)". Other format menus will work for individual characters or lines unless a group of characters or lines is selected. HP Chars The HP Chars window has been reorganized into two panes. The \>> character has been repeated so it can appear next to \<<. -KEYHANDLING View / Keystrokes Clicking on the column headers will change the sort order in the keystroke editor windows. Fixed TAB and shift-TAB for Indent, unindent commands (work when a line is selected). Command type must be "Tab" and "ShiftTab" in the key window because these are sometimes commands and sometimes characters. Settings of the Keystrokes are now saved to the registry and reloaded at start. I will be making more commands available for changes by the user in the future. -Text Execution Window Both the command and the result window now use color highlighting. Highlighter options are copied from the Source Editor Window. The command window is always User RPL. The result window can be changed between User and Sys RPL by the View menu. The lower, command, window can be changed in size by using the bar between the two windows. In the lower command window, multiple lines can be used for commands by typing shift-ENTER or ctrl-ENTER. ENTER, by itself, sends the commands to the EMU. The HP Character Table can be shown in this window (View Menu). Added menu History \ Last Command which copies the last command sent into the command box. History Items just copy to the command area, they do not execute until ENTER. Commands which make errors now return the error message to the stack area. Stack area can be saved as a text file or as a Rich Text File (*.rtf). - - BUG FIXES - - -Run Debug4x.exe twice and get bad error message. -Inform Editor Little square boxes would sometimes appear in form titles and in the label names. It was also possible to exceed the length allowed by the calculator for strings in these items under some circumstances. The calculator would then not show the text. This bug has been fixed. When first loading a form, some of the little edit windows would appear in the User RPL font. These windows could also be easily corrupted. Loading the form into the editor will clear any of these problems. -Text Execution Window DEL cleared the Results window and would not function in the command window. DEL now just deletes a single character. -Verb, Stack Windows Fixed scrolling size problems. Windows are no longer movable but Template and Verb windows can be resized. -New OpCodes New op codes caused error messages because the -P3 option was not properly given to SASM. ======================================================================== == V 2.2 Build 117 ===================================================== ======================================================================== A thank you to Jaime Fernando Meza Meza for his many ideas and submissions. -Project Window EMU Tab now has a check box to disable warning when EMU RAM file is changed by the EMU window. -Source Editor Templates: A new right-click menu item has been added: Show Templates (alt-ins). This causes a popup to show the code templates that may be inserted. These are the same templates that were available with alt-ins before. Now there is a selection list shown. To see all templates just make sure there is a space to the left of the cursor. If there are characters to the left of cursor then only templates beginning with those characters will be shown. Ctrl-ins also works for template insert (does same as alt-ins). There are now 3 popup information windows: ctrl-space Verb Name Completion (lists) ctrl-J Stack Pictures ctrl-ins Template Insertion View Options / Highlighter / Fonts will now allow any font to be selected. Fixed pitch fonts work the best. User RPL Highlighting reserved word list was changed slightly. You may want to View Options \ Highlighter \ Restore Defaults in a User RPL file. Send RPL to Emulator now has the F10 key as a shortcut. -NEW OP CODES (SASM) All of the new op codes are now available when the project is set to the HP49. CAUTION - I do not know if these work in EMU.Some will crash the EMU for sure. DO NOT ask me what these do! Check the web or comp.sys.hp48. There are two documents that I like on HPCalc.org: http://www.hpcalc.org/hp48/docs/programming/asm-pdf.zip http://www.hpcalc.org/hp49/docs/programming/newopcodes.zip - - BUG FIXES - - -Tri-graphs and the View HP Character Table For SysRPL, the RPL compiler does not accept tri-graphs. Valid tri-graphs will now be converted by the HP Character Table window to \xx xx=hex format. -HP48.ttf A new version is supplied with this release. Characters 142 and 158 now fixed. Thank you Jaime Fernando Meza Meza for the font fixes! -Inform Box Editor Placing a ")" in the title of a form caused a bug. -Source Editor File / CloseAll now closes all files (except "scratch") but leaves the editor window open. Character table buttons would error if button 0xFF were pressed. Buttons 0x1E and 0x1F did not make the \1E or \1F codes. Changing Reserved words in the View Options \ Highlighter window are saved immediately. Starting a second copy of Debug4x will have these options available. ======================================================================== == V 2.2 Build 115 ===================================================== ======================================================================== -HP48.ttf A new version is supplied with this release. Characters 28-31d now available. -Build If a name is undefined, an error will show. The calculator entry $_Undefined will be linked in place of the missing name. This will cause an "Undefined" string on the calculator stack if the project is run and the bad code is executed. In previous versions this led to a calculator crash. INCLOB file.hp now works. The file minus the HPHPxx-C header is inserted. You must be very careful what objects are inserted or you will crash the calculator. -Source Editor User RPL Highlighter has changed again! Please open a User RPL file and then select Editor \ View Options \ Highlighter then click "Restore Defaults" to adjust the colors. New menu: "View / Refresh / Redraw Highlighter" will refresh the highlighter and draw the editor window again. If the %%HP line for a UserRPL is added or removed, the highlighter needs to be changed to/from SysRPL - UserRPL. Switching from one source file to another will also do this. New menu: "Format / Toggle Comments"` (with a shortcut of ctrl+/) will toggle lines to/from comments. An "*", "@" or "%" will be set into column 1 as required by the type of highlight attribute (RPL, UserRPL, SASM or Asm). Comments will be undone if the first line of the selected text is already a comment, otherwise lines will be made into comments. The right mouse popup menu has been extended with many of the "Format" menu items. This menu is also now available in the various boxes of the Inform Editor that contain code. -NEW OP CODES (SASM) The following new op codes are available when the project is set to the HP49. CAUTION - I do not know if these work in EMU.Some will crash the EMU for sure. DO NOT ask me what these do! Check the web or comp.sys.hp48 INCLOB Strip the HPHP48-x, HPHP49-x header and insert the remaining object code. This works in both SASM and SysRPL modes. RPL2 ( 80B00 ) OFF ( 80B01 ) CONFIGD ( 80B03 ) ok emu REMON ( 80B05 ) ACCESSSD ( 80B06 ) GETTIME ( 80B11 ) UNCNFGD ( 80B13 ) ok emu REMOFF ( 80B15 ) PORTTAG? ( 80B16 ) SETTIME ( 80B21 ) REFRESHD ( 80B23 ) RESETOS ( 80B31 ) SETLNED ( 80B33 ) ok emu AUTOTEST ( 80B41 ) SETOFFD ( 80B43 ) BEEP2 ( 80B50 ) NATIVE? ( 80B51 ) MOVEDN ( 80B60 ) OUTBYT ( 80B65 ) MOVEUP ( 80B70 ) SERIAL ( 80B71 ) CRTMP ( 80B80 ) HSCREEN ( 80B92 ) KEYDN ( 80BA0 ) WSCREEN ( 80BA2 ) GOSLOW ( 80BB0 ) MIDAPP? ( 80BB2 ) BIGAPP? ( 80BC2 ) ARMSYS ( 80BFE ) ARMSAT ( 80BFF ) - - BUG FIXES - - -Starting The timing of the splash screen (about box) during startup has been changed to prevent a problem when the EMU could not load (maybe second time Debug4x starts with the same EMU). Clicking on a *.s file opens in a "No Project" and ctrl-space, ctrl-j would not work properly (SysRPL). -Source Editor The ctrl-j did not properly break down verbs when they were followed by a ) or ]. Highlighter for User RPL did not look at first line (%%HP: T(0)A(D)F(.);) to decide how to show numbers. Now highlighter will check these values when file is loaded or when user switches files. -Project, EMU The order of loading a project is now .hpp file, source files and then Emu. When Emu came before source files, the project load was incomplete when EMU dialog showed. -EMU Some of the .e49 Emu files start in USR mode. This causes errors when pressing some of the keys. The reference to USR mode has been removed from the VAR named START. -SLOAD Errors Undefined name errors did not show when building simple (not library) projects. ======================================================================== == V 2.2 Build 114 ===================================================== ======================================================================== -Inform Edit Message Rule CHANGE The rules for the message handler fields for the Inform editor have changed. The new rules for coding message handlers for the form or for a field are: 1. If the message handler area is blank, then 'DROPFALSE will be inserted as a default. 2. If the message handler area starts with "= " (the space is required), the message handler box will be placed into a NULLNAME xxxFieldHandler and all the characters after the "= " will be copied to the NULLNAME handler. The message handler should be like: = :: IfMsgAnything #=case ... ; 3. For all other cases, the message handler will be exactly what is written. Typically this will look like: ' :: IfMsgAnything #=case ... ; To convert old code: If your message handler begins with ' or is blank, no changes are needed. If your message handler begins with anything else, insert a ' or a "= " in front of your code. -Inform Edit Added right mouse menu in the edit windows. Ctl-j now works reliably for pop-up stacks. Cursor position is transferred when double clicking the code windows. -Multiple copies of Debug4x.exe Clicking on a *.s or *.h file will open that source file in any currently running Debug4x programs. Clicking on a *.hpp file will open a second copy of Debug4x, the Main form will be slightly offset. I do not encourage multiple copies because of possible conflicts when the same source file is open several times. I am also certain that crashes are possible if multiple builds were run at the same time. Multiple copies of the EMU will have conflicts if the same .e48 or .e49 files are used. However, with care, multiple copies of Debug4x and the EMU can be used and are no longer prevented by the code. -Project Window New Option on Project Data tab: "Build sends User RPL". When F9 (Build) is pressed in the Project Window, the project files are "built" one after the other. When a User RPL file is found, it is sent to the EMU immediately. If this item is not checked, then User RPL files are skipped during the project build. -Source Editor F9 HAS CHANGED in the Source Editor. F9 no longer sends a single file to the EMU when in a User RPL file. F9 acts the same as F9 in the Project Window (see above). There is a separate, new menu under Compilation to send a single User RPL file to the EMU. This provides a more consistent user interface and removes a source of confusion. Edit Source Templates has moved to the File menu. The source templates will be available for use after they are saved (file can stay open if desired). Added "Toggle Case" to Format menu. Many changes have been made to the closing and saving of files. Please let me know if you find a bug! Pop-up ctrl-space, ctrl-j now have titles. "Replace All" button added to first replace dialog box. No more prompting if "Replace All" is selected. Undo will undo all changes in one step from a replace operation. -User RPL Highlighting The "Algebraic" attribute has been removed. The ' is now a red punctuation mark and things inside '...' will be colored. This means algebraic things like 'A+D*89' will have identifier color for A and D as well as number colors for 89 and reserved word color for the operators. This is much better than setting the entore string to "algebraic". There is a bug, the calculator will not accept 32 A+ with no space between "A" and "+". The highlighter will process this as legal. There are many cases like this. - - BUG FIXES - - -Project Recently Used file List (Project / Reopen...) Past projects did not always appear when reopended then return to first project. ======================================================================== == V 2.2 Build 113 ===================================================== ======================================================================== -Source Editor Updated TemplateUserRPL - thanks to Jaime Meza Meza. Right-click on tabs brings a "Close" popup menu. Default colors for UserRPL have changed, new "Punctuation" attribute added for {} [] [[]] , \<) (). Click View / Options / Highlighter then the "Restore Defaults" button. View / Options / Highlighter tab: some attributes (like RPLKey or UserRPL-Reserved Word) show a box with the reserved words. The user may now add or delete words and the changes will be saved in the registry. Entries can be added anywhere and the next time the box is updated (by changing the selected file or closing Debug4x) the words will be place in the proper alphabetical order. Added menu File / Close All. Added menu File / Exit Debug4x Moved several formatting items to new menu: Format. Added Format / Lower Case Added Format / Upper Case Added Format / Convert Tabs to Spaces Added Format / Convert Spaces to Tabs The above items will work with the entire file or just the selected text. ctrl-space and ctrl-j popups for verbs and stacks are now moveable windows. Double clicking .s, .h files when Debug4x is already open will add the clicked file to the current SourceEdit window. -Project Added Load and Copy Emu values to/from the registry. These values are normally saved in the project file. These buttons enable setting values for use by Emu outside the Debug4x environment (stand alone emu48.exe). -Text Execution Changed the format for the History Display. - - BUG FIXES - - -HP48.ttf This font was not being installed or updated. A new version is supplied with this release. -Project Default Emu ram, e48, and e49 files were not set properly for new projects. Starting without any project caused a prompt to save the project even if nothing had been changed. There was no way to avoid saving the new project. -Source Editor UserRPL HP Character buttons would give an error if character #255 was pressed. Characters #127, #160 and #170 were not giving the proper results on some systems. Fixed bug in popup windows for verbs with lead = sign (=SAVPTR). ======================================================================== == V 2.2 Build 112 ===================================================== ======================================================================== -..\Include\TemplateSysRPL.inc and TemplateUserRPL.inc These are the code templates used by the ALT-INS key in the editor. In previous versions, they were saved in the registry. Now they are in files. During Installation, the old registry values will be copied and saved under ..\Include\OldRegisTemplateSysRPL.inc. -NEW User RPL Code Templates under alt-ins. Thanks to nice work by Jaime Meza Meza. -Main form Added View / Keep On Top to menu. Main form will stay on top of all other forms if checked. -Source Editor and Main Form Added "Restore Defaults" button to View\Editor Options\ Highlighter tab. Added "Check for Updates" to help menu. Added "save As..." to file menu. When a file is "Saved As...", the file text is saved in the new file name, the new file name replaces the old file name on the source editor tabs and in the Project Window's file list. The old file is left intact on the disk and may be opened if desired, but it is no longer part of the project. "Scratch" file may be saved using "Save As...". The scratch file tab and editor text will remain but a new file will be added. "Scratch" file contents are now saved in the users local settings folder. This is Documents and Settings\username\Local Settings\ Application Data\Hewlett-Packard\Debug4x\scratch.s The same \scratch.s file contents are loaded / saved for all projects. Scratch.s is now a file common to all projects. It might be used to copy information between projects or to keep a common set of notes. Debug4x will not allow any user files to be saved or loaded using the "scratch" name because it would conflict with Debug4x's file usage. "scratch" is now a reserved file name for Debug4x. Added "Open Calculator Stack File" to Edit menu. This will open either the SysRPL or UserRPL stack file ...\Include\xxx.stk file depending on the type of file currently showing in the editor window. -About Added 49g+ and 50g images to splash and about screens. - - BUG FIXES - - -Source Editor A bug prevented the color "clNONE" from showing in the Highlight tab's list of color attributes. This left the last color used in the box and gives the wrong idea to the user. -Project Use the Emu to load a new Emu image then Project Data/Load no longer works. Use any operation that changes directory will disable the "Load" button. Reopen Project (most recently used) list did not show projects in chronological order. ======================================================================== == V 2.2 Build 110 ===================================================== ======================================================================== - - BUG FIXES - - -120 DPI fixed many bugs for display sizes that are not 96 DPI. -EMU If the .e48 or .e49 files do not exist, Debug4x would cancel the emulation with a warning. Now Emu48 will be started and Emu48 will ask for a KML and then create the .e48 or .e49 file. -Source Editor Edit / Split Lines had many bugs. UserRPL highlighter had problems when a "..." was split across lines. The state of the Options tab (Display, Caret, Highlighter...) is now saved in the registry. There were bugs when some files had CR+LF and some did not. Also to change the type of line ending, it is required to use File / Save for each file to be changed. The View / Options / Display / CR+LF must be changed for each file. ======================================================================== == V 2.2 Build 108 ===================================================== ======================================================================== -Project Window Emulator Data tab has an "Emu Home Directory" box. The directory used for Emu files, kml, and ROM can be changed. This affects both Emu.exe and the embedded Emu in Debug4x. Typing is not allowed in the box but a "Browse" and a "Default" button can set the values. To find the Emu directory, Debug4x's EMU48.exe checks the registry key: HKCU\Software\Hewlett-Packard\Debug4x\Emu\Files\Emu48Directory Other versions of Emu may use C:\Windows\Win.ini. This is frequently used but an obsolete way of handling the Emu settings. Users can force the other versions of the Emu48.exe to use a registry setting and to ignore Win.ini by creating a registry key: HKLM\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Emu48.ini Set the default value of the above to @USR:Software\Hewlett-Packard\\Debug4x\Emu or change for your Emu folder. The ..\Debug4x\Emu folder now has a NoWinIni.reg program that will do this for you. This is NOT required by Debug4x or the supplied Emu48.exe but you may want to do this if you use other versions of Emu48 and want them all to use the same folder. -EMU Emulator dll file has been moved from ...\Debug4x\Emu to ...\Debug4x. -Source Editor Cut, Copy, Paste, Select All added to Edit menu. Message Window animation during resize has been improved. UserRPL: Added highlighter for algebraics ('x+y'). Algebraics may cover multiple lines. HP Character Table: a new row has been added. Almost all of the symbolic characters are now included (except @ because we wanted rows of 16 characters). Tooltips (Mouse Hints) now give the trigraph, decimal and hex value for each character in the table. -Main Window Ctrl-A (ASM Debug Window) removed from menu shortcuts. This allows ctrl-A to be used for "Select All" in editor windows. - - BUG FIXES - - -Source Editor Keyboard: using the numeric keypad and the ALT key to make non-standard characters would sometimes fail. Debug4x has better code now. UserRPL: second lines for a quoted strings were not highlighted as strings. Character \255 was missing from the HP Characters window. ======================================================================== == V 2.2 Build 107 ===================================================== ======================================================================== - - BUG FIXES - - -Source Editor Error messages during library builds could be shown twice. Library entry names ending in "=" were not properly handled. ======================================================================== == V 2.2 Build 106 ===================================================== ======================================================================== -Source Editor HOME key now goes to first non-space character on line, 2nd press goes to line beginning. Lower left status panel now shows the type of highlighter field (Rpl, ASM, Comment etc). -New menu: Edit / "Split Lines at Right Edge" will split all lines at the gray right edge marker. (See the Edit / View / Options / Right Edge setting). If there is a selection, the selected lines will be split. The new line is indented the same as its parent. Lines are only split at space or tab characters. If there is not a space or tab at the right edge, the line will be split further to the left at the first space or tab to the left of the edge marker. SysRPL: only highlighter Rpl, Rpl Key or Null lines will be split. SASM, ASM lines, comments or quoted strings will not be split. UserRPL: highlighter comments and strings will not be split. -Projects New projects will default emulator to "Default 50g.e49". -UserRPL Verb Completion Reserved UserRPL variable names are now included in the ctrl-space verb lists. A red "RESERVED" will follow the name in the list. -Start Menu Folder An Uninstall Debug4x icon has been added. Icon emu-48 has been renamed emu-48GX. Icon emu-49 has been renamed emu-49G. -EMU Updates to version 1.42+ - - BUG FIXES - - -Win98 Windows 98 Systems would generate an error message during install if the HP48.ttf is already in \Windows\Fonts. This can occur during a reinstall of Debug4x. Debug4x will no longer try to overwrite HP48.ttf during installations. Also a Windows 98 system requires a reboot before the HP48.ttf font will properly display User RPL in the Editor. ======================================================================== == V 2.2 Build 105 ===================================================== ======================================================================== -Source Editor UserRPL48.stk now added to ...\Include files. Now User RPL stacks and verbs are tracked separately for the two models. ======================================================================== == V 2.2 Build 104 ===================================================== ======================================================================== -Project Has a "Reopen Project" menu item which shows recently opened projects. -Source Editor UserRPL can do code completion. Type a few characters and press ctrl-space for the popup window. UserRPL can show stacks. Type a word and then press ctrl-J for the popup window. Code completion and stack picture fonts are now the same font as used in each editor (UserRPL or SysRPL). UserRPL now has its own source templates for use with the ALT-INS key. Edit / View Source Templates shows the templates. There is a set for SysRPL and a set for UserRPL. Fonts, tabs and "Extra Line Spacing" now have settings for SysRPL and UserRPL that are separate. The default "Extra Line Spacing" has been set to 3 for User RPL. This seems to make the SysRPL and UserRPL windows about the same. - - BUG FIXES - - Project_def.h would not be built unless compression was on. Compression "bytes saved" changed to "nibbles saved" in messages. -EMU Updated to version 1.42+ ======================================================================== == V 2.2 Build 102 ===================================================== ======================================================================== -Compression Libraries would not load properly into calculator when the number of nibbles in lib was odd, this caused a badly formatted library. -TextExec A number of timing issues in Text Execution, User RPL loading and compilation of System RPL files for the different calculator models was adjusted and fixed (I hope!). ======================================================================== == V 2.2 Build 101 ===================================================== ======================================================================== -Source Editor Major NEW User RPL Features have been added. Please look at ..\Debug4x\Examples\UserRPL. 1. A User RPL File must have "%%HP: " at start of first line. Files can be added to the project. Files use *.s suffix. Debug4x looks at the first line and will not send UserRPL to the system RPL compiler. This means a project can have a few User RPL files for help in installing, testing or ?? File / New User RPL File will create a new file and add it to the project list. 2. User RPL Editors have the HP character set. SysRPL uses the Windows characters. Do not put HP characters into SysRPL files, use the tri-graphs for SysRPL. There is a View / HP Character Table menu. Click a button to insert a character. Typing a tri-graph into the UserRPL window will cause an automatic conversion to the HP character. The 3 keys must be pressed one after the other like \-> for this to work. If an arrow key or a mouse click occurs between any of the 3 characters, the translation will not happen. This is by design so you can include these kinds of strings if you like. The View / HP Character Table menu can be used in the SysRPL window. In a SysRPL window it inserts tri-graphs instead of the HP character. *** NOTE: the notation for \xx xx=hex numbers and \ddd ddd=decimal numbers is different for the SysRPL and UserRPL formats. This is historic so be careful. Use hex numbers for SysRPL and decimal for UserRPL. 3. Edit / Convert HP Chars to Tri-graphs and Edit / Convert Tri-graphs to HP Chars can be used to translate to/from older types of text files. 4. Editor status line (lower right side) now shows "SysRPL" or "User RPL". 5. User RPL has its own highlighter. Select View / Editor Options / Highlighter with a UserRPL file open to set UserRPL highlights. Notice that the words "User RPL" show in the middle of the option area. 6. UserRPL has its own tab setting on View / Editor Options / Display. 7. The F9 key will build a project in a SysRPL window. F9 will "send" a UserRPL file to the EMU in a UserRPL window. Editor will now reopen the window that was open when project was last saved. Status of "HP Characters" bar and "Editor Options" bar is remembered in the registry and will be returned to same status when Debug4x starts. The "HP Characters" bar has separate memories for SysRPL and UserRPL files. Selecting the Editor color now sets the background colors for all the syntax highlighters. All syntax highlighters now share a common background color. Fixed a bug in displaying the current background color in the selection box. -Compression The compression result message has been revised for files that do not save enough bytes during compression. -TEXTEXEC Remembers size and position of window when project is saved. EMU will automatically be started when displayed and the project is reloaded. Settings are now saved in the registry and not the .hpp file. Zoom size (right click menu) is saved in registry. Improved speed of command write to EMU using DDE48 instead of a file. Added options bar for stack type and display type, and variables for number of stack items displayed. Added Double Click for command editor window. The window uses HP characters and UserRPL highlighters. Right mouse menu in stack area now has Cut/Copy/Paste/Select All etc. User may edit, type and modify the stack area but any new command will replace the entire area with the stack from the calculator. Zoom In/Out added to right click menu. Save to text file has been added. Many of these features have been added to assist document makers. Fixed bug in handling tri-graphs to the calculator (like \<<). Note the Flag 85 is NOT processed during decompilation. Only user RPL will be shown in the stack pictures. Fixed bug in handling strings with embeded \" sent to the calculator.