Hugo Change Log --------------- To do: ------ - BeOS - odd spacing with fixed-width input (overwriting some letters) (although may be due to the font itself) - BeOS and wxWindows should not clip italic text followed by a font change (due to buffered text output) - look in 'res' subdirectory of game directory for resource files v3.0.01c/v2.5.03c ----------------- - BeOS - changed "right-click" behavior for one-button mousers - push MOUSE_CLICK even when Hugo isn't explicitly waiting for a key, and queue the mouse position for retrieval with MOUSE_CLICK - tweaked text renderer to fix odd linebreaks with bold/italic fonts - "local n = true" was initializing n = 0 - debugger's 'system' token output was improperly terminated - added additional misusage compiler warnings - better PromptMore() "[MORE...]" for BeOS, Win32, wxWindows - compiler was dropping trailing ':' from multi-line strings - fixed font/style changes getting lost across linebreaks - compiler does better warning of illegal characters in source - ports without Latin-1 charsets (DOS, curses, etc.) handle Latin-1 characters better now - compiler has better handling of unterminated strings in SeparateWords() - fixed resolution of explicit 'parent' objects in MatchWord() and Available() - 'resource' blocks can now specify more than one filename per line - fixed compiler overflow on very long 'case' statements - fixed potential STRINGDATA_T overflow in GetToken() - BeOS - added sample_thread guard using sample_deleted - a number of enhancements to the debugging library hugofix.h - DOS - fixed handling of text style colors - MAXUNDO can now vary between ports; only ports with the same MAXUNDO can restore undo data from save files - Context menu commands ending in "..." now add a trailing space - changed hemisc.c SpecialChar() constants to constant hex values - Kent's ports: right mouse button during input is the same as left button (i.e., for a context menu) - Kent's ports: compilers now all updated to v3.0 - fixed heobject.c GetProp() so that display.hasvideo works properly - Perform's queue argument is now set if "all" is used to refer to only one object - Fixed problem with replacing objects/routines containing labels v3.0.01b/v2.5.03b (12-Dec-00) ----------------- - Glk - disabled PAUSE_100TH_SECOND - hc - Fix nested case problem - wxWindows - included optional SDL-based modifications by Torbjorn Andersson to hesound.cpp v3.0.01a/v2.5.03a (12-Oct-00) ----------------- - Unix - changed Alt+a for debugger menu to Alt+Space - Unix - added "make clean" option to Makefile - hc - fixed problem with inheriting complex properties - BeOS - tweaked updating before/after video playback, and on 'pause' - BeOS/Win32 - audited tempfile management--better usage and cleanup of resource cache tempfiles - BeOS - fixed video.cpp and sound.cpp to use SubsetIO - GetResourceParameters() in heres.c now calls strupr() on filename if it's a resource file (since these are forced to all-caps in the compiler) v3.0.01/v2.5.03 (25-Jul-00) --------------- - Consolidated v3.0/v2.5 code bases to remove v3.0's beta status - he - "object.property #n is not attribute" caused runtime crash - BeOS - stopped audible playback of MODs even when audio is disabled - updated library to 2.5.03.1 - Compiler can now optionally produce an objectfile even with errors v2.5.02a (6-May-00) -------- - Win32 - now recognizes VK_APPS (the application menu key) - Unix/BeOS - Compiler now properly parses @resource=... paths - Better handling for command-line #settings; both case-sensitivity (in CompilerSet) and presets (ParseCommand) - Fixed non-error on illegal use of 'number' token - Fixed superfluous "...needs more than one parameter" compiler error - Squashed elusive dropped letters in some printed strings - Win32 - Alt+F4, and the close box verify before closing the engine - Win32 - Last non-looping sample doesn't play when focus returns - Safer array writing (and property values, object numbers, etc.) - Built hes.exe (simple text-based 16-bit DOS engine) for use with speech software - Win32 - fixed stray cursor behavior v3.0 beta (May-June): - Added background argument to 'video' statement to play a video clip in the background (looping, if desired) - Also added volume argument to hugo_playvideo() - Upgraded BeOS package to v3.0 - Win32 - fixed improper sizing of video frames v2.5.02 (22-Feb-00) ------- - Compiler's DefEnum() caused errors on explicit "enumerate globals" or "enumerate constants" - BeOS - Added character-encoding selection option and full-screen mode - In Kent's ports, a mouse-click now passes keycode=1 to hugo_keywaiting(); also sets display.cursor_column and display.cursor_row - Also in Kent's ports, fixed hugo_getline() so that it doesn't call hugo_scrollwindowup() unless we're at the window bottom - Glk - Half-fixed hugo_settextpos putting things off-screen with positioning based on display.screenheight and screenwidth - Removed usage of global 'z' from both heheader.h and hcheader.h (meaning a fairly thorough rewrite of some sections) - Rewrote heheader.h and hcheader.h for brevity and clarity - Added better compile-time checking to property value syntax - Occasional usage of a local __selectvar in compiling select-case for proper working of random(), ++, etc. - Tweaked the debugger's runaway-loop watchdog to reset on 'pause' statements - Snazzy new icons for BeOS, Win32, Unix, and whoever else wants them - Fixed an array-element parsing problem in heexpr.c (with inobj) - Fix so that positioning on the lowest line in a window clears the "MORE" prompt count - Better compiler label checking in DefOther() - Better compiler argument checking for built-ins (such as string() and dict()) in CodeLine() - Fixed compiler error exit code reporting (for front-ends like hcwin.exe) - wxWindows - Now links dynamically to libmikmod instead of statically - Win32 - Context menus now track either mouse button - "text to " printing now always appends a terminating zero (without advancing the textto index) - Win32 - v2.5 now uses old non-DirectSound audio; v3.0 currently and inexplicably needs a debug-built libmik.lib to overcome hissy DirectSound playback v2.5.01f (9-Feb-00) -------- (Released only for the Win32 package of Guilty Bastards) v2.5.01e (7-Jan-00) -------- - Fixed a bug in the linker that would overflow when reading the text bank (because performaddr was getting missed) - Added "'move' requires 'to'" compiler error - Win32 - fixed LCC-Win32 makefiles and source to allow compiling of v2.5 with LCC-Win32 as well as MSVC++ - Fixed a disambiguation problem where, on a "Which...do you mean?" parser question, a parser error message might be printed before proper processing - wxWindows - Torbjorn Andersson fixed where the file selector dialogs were displaying only directories - Unix - removed drv_raw loading from MikMod to avoid massive music.raw file dumps when the sound device is unavailable v2.5.01d (4-Dec-99) -------- - Retooled 'notheld' and 'held' object disambiguation; released accompanying library 2.5.01.4 (and also changed the library so that the banner now contains the version) - Win32 - v3.0 media now pay attention to audio/graphics menu settings - Win32 - my brother Dean added the program icon to the scrollback window and made it resizable v2.5.01c (29-Oct-99) -------- - fixed bleeding text formatting at end/start of line (only noticeable on Win32?) - more fixes to non-Latin character handling - added BeOS compile option to heheader.h v2.5.01b (9-Aug-99) -------- - fixed glitch where saved games wouldn't restore if byte 0 or 1 of the game header is zero - pressing '+' at the [MORE...] prompt during command playback skips further prompting - Win32 - fixed/uglified the sound factory for better NT support and performance - Win32 - fixed save/restore of user colors v2.5.01a -------- - bug in translation of >128 non-Latin characters - heres.c incorrectly identified some MP3s as MOD-type mods - fixed command playback in (at least Win/DOS) Glk port - Win32 - added option to override automatic Latin-1 translation - fixed RunRestore to avoid a warning on default unsigned char compilers - Win32 - fixed script selection in ChooseFont dialog - Win32 - padded temporary image bitmaps to align on word boundaries, hopefully fixing distorted images with some video cards - Unix/Linux - first debugger port - Win32 - enabled custom color selection of default colors - Win32 - extended compiler user interface, allowing saving of compile sessions, redo last compile, changes to output font v2.5.01 and v3.0 beta (26-Apr-99) --------------------- - consolidation of v2.5 and v3.0 beta base-level functionality