Next Page...

# Chapter 7 |  |
| # Version History |

##

## TNT Basic 1.31

Bug fixes:

- Fixed left control key not working with the 'pressed' command under OS X
- Fixed sounds not loading from .tbproj files
- Fixed image offsets presets not working for top left, top right, bottom left and bottom right corners
- Fixed 'file exists' command leaving files open and making them undeletable
- Fixed memory leak in map loading
- Fixed 'as string' command not working when a precision is passed
- Corrected misleading error message that resulted from trying to build an app from a project containing resources with ids lower than 128

## Hieroglyph 2.31

New features:

Moved to a new version of the WASTE text editing library - now using 2.1b1

Bug fixes:

Fixed disappearing sound resources when using the .tbproj project file format
Fixed errors if quitting without saving and then choosing save in the resultant dialog box
Beginning sound or image bank names with a '(' no longer disables them in the popup menu

## TNT Basic 1.3

New features:

- Added window graphics mode allowing for non fullscreen games
- New project and built application file format that removes the 16Mb maximum size imposed by the Macintosh resource file format used previously
- First open source release

New commands:

- Window Mode and Window Mode Hardware
  Like the existing graphics mode command, except runs the game in a window rather than in fullscreen mode

Bug fixes:

- Fixed option, control and command keys not working with the 'pressed' command under OS X
- Fixed crash when loading 256 colour images
- Fixed key release events being lost if released when a file open dialogue box was on screen (OS X)
- Fixed 'frame oval' crash if using a transparent pen and drawing off the edge off a canvas

## Hieroglyph 2.3

New features:

- Now supports the new .tbproj resource file format, removing the 16Mb file size limit. Includes options to convert old projects to new format.
- New application and project file icons (thanks to Danny Martin for those!)

## TNT Basic 1.2

New features:

- Added full keyboard access, including easy ways to have users input strings of text (eg for high score entries)
- Many new commands, including bit manipulation commands
- Now saves the 'Show FPS' option across launches of TNT Basic
- Improved documentation in many areas
- Major work on Hieroglyph file system preparing way for moving away from Mac OS resource files and so removing the current 16Mb file limit
- Removed legacy networking commands

New commands:

- Sprite Exists
  Tells if a sprite is currently in existence
- Bit Shift, Bit Test, Bit Set, Bit And, Bit Or, Bit Xor
  Mathematical bit manipulation commands
- Keyboard Raw Key, Raw Key Ascii, Raw Key Char, Raw Key Scancode, Keyboard Repeat, Clear Keyboard Wait Key Press, Raw Key Modifier, Raw Key Filter
  Keyboard access commands
- String Editor Contents, Set String Editor Contents, String Editor Cursor, Set String Editor Cursor, String Editor Input
  String input and editing commands
- Char to Ascii, Ascii to Char
  Commands to assist working with ascii codes
- Map Line Col, Map Object Name
  Tests if a line of tiles contains specified tiles. Gets the name of a map object.
- Point in Rect
  Tells if a point is inside a rectangular region
- Calculate Angle, Angle Difference
  Easy manipulation of angles between points

Bug fixes:

- Fixed hardware graphics mode not resuming properly after pausing
- Fixed 'Set Sprite Colour' command under hardware mode
- Fixed 'Fill Poly' command
- Fixed 'Set Pixel Colour' command when using transparency
- Fixed Genesis window resizing
- Fixed bug in 'Sqrt' command
- Fixed potential crash in 'Open Canvas' command
- Fixed crash with 'End Proc' statements which had () but no return value
- Fixed crash in 'Delete Image' command when deleting non-existant image
- Fixed crash in for loops if using an undeclared variable in the 'next' statement
- Now clears the contents of an image bank before loading new images with 'Load Images'
- Added workaround for 'Pressed' command now working properly under Mac OS X 10.2
- Fixed menus items not getting unchecked in TNT Basics menus
- Fixed 'mResolvedProc' error and improved error reporting for malformed if, while, repeat constructs
- Fixed 'Map Polygon Name' and 'In Map Polygon' crash if referencing non-existant polygon

## Hieroglyph 2.2

Bug fixes:

- Fixed source code printing
- Fixed Genesis window resizing

## TNT Basic 1.12

New features:

- Now selects highest scan rate res when 2 reses with the same dimensions are found
- Improved debug logging to the "Consoles" folder inside your "Preferences" folder

New commands:

- Added 'left str' 'right str' and 'mid str' string accessor commands

Bug fixes:

- Fixed crashing bug when unpausing TNT Basic on Mac OS X
- Fixed 'Set Sound Volume' which had never worked
- Fixed 'Disable Break' which had never worked on OS X
- Errors while starting up no longer have the potential to cause a crash
- Fixed colour constants 'red', 'green', 'blue' etc which were all broken in software graphics mode
- Fixed fps font for hardware mode to use right res id; you can now use PICT 128 in built applications again
- Fixed some pretty major memory leaks - out of memory errors should now be minimised
- Fixed error handling with the 'Load Input' command on Mac OS 9 where keyboard and mouse could be disabled until restart if your input resource was empty
- Fixed startup crash relating to the 'Load Sounds' command
- Fixed long 'spinning beachball' delay when quitting TNT Basic games on Mac OS X

## Hieroglyph 2.12

Bug fixes:

- Fixed open document AppleEvent, you can now double click documents to open them again on OS X
- Fixed minor cosmetic glitches on Mac OS 9 and minor syntax highlighting issues

## TNT Basic 1.11

Bug fixes:

- Fixed flickering sprites bug that affected certain video cards in TNT Basic's software graphics mode under MacOS X
- Fixed hardware accelerated graphics sprite collision bug
- Fixed 'Unload Images' crash if there were buttons existing using the bank being unloaded

## TNT Basic 1.1

New Features:

- Hardware accelerated graphics
  TNT Basic can now use OpenGL to accelerate its sprite drawing. This allows many more sprites on screen without slowdown.
  Hardware graphics mode also allows sprites to be rotated and scaled (complete with realtime smoothing) and allows more levels of transparency.
- New networking system
  TNT Basic 1.1 has a new system of shared 'network global variables' for handling networking. Values stored in these variables are automatically updated on all machines in the game, greatly simplifying the process of transferring data and keeping the games on the network synchronised.
- Improved moan
  Moan's move commands and others now allow speeds to be passed as floats, so it is much easier to set up movements with speeds of less than 1 pixel per frame.
- Improved file access
  TNT Basic can now read and write plain text files.

New commands:

- Disable Break
  Stops TNT Basic's default behaviour of pausing the program with the Esc key, and stops cmd-. quitting the program.
- Text Width, Text Height, Text Descent
  Returns the dimensions that a string would take if drawn with the current font settings with the 'Draw Text' command.
- Graphics Mode Hardware
  Enables OpenGL hardware acceleration for sprite drawing.
- Set Sprite Rotation, Sprite Rotation
  Gets and sets the rotation of a sprite when in hardware graphics mode.
- Set Sprite X Scale, Set Sprite Y Scale, Sprite X Scale, Sprite Y Scale
  Gets and sets the scaling of a sprite when in hardware graphics mode.
- Set Sprite X Flip, Set Sprite Y Flip, Sprite X Flip, Sprite Y Flip
  Flips the sprite about an axis when in hardware graphics mode.
- Scale Sprite, Rotate Sprite, Sprite Scaling, Sprite Rotating
  Allows asynchronous 'fire and forget' use of the new scaling and rotating commands.
- 'S'cale, 'R'otate
  Scale and rotate commands for programmable moan channels.
- Unload Sounds
  Unloads the currently loaded sound bank, freeing up memory for other uses.
- Set Net Data, Update Net Data, Network Global
  Networking commands for the new networking engine.
- Set Directory Game
  Changes the current directory for accessing files to the directory of the game/project.

Bug Fixes:

- Fixed bug with screenshots not working under certain circumstances.
- The 'As String' command now works properly with floats, and supports specifying the number of decimal places to use when converting the number.
- Fixed misaligned data bug that was causing error messages when copying and drawing sprites (fix from 1.03M1).
- Numerous other small bug fixes and improvements.

## Hieroglyph 2.1

New Features:

- Printing support
  Can now print from the code pane. Options to print in colour and to only print the selected text.
- Editing preferences
  Can now changes the font settings and syntax highlighting colours for the code editor.
- Live window dragging and resizing under Mac OS X
- Improved file importing
  Can now import multiple files at a time in the 'import' dialogs for Music, Graphics and Sounds.
  Drag and drop of files from the Finder now also works.

Bug Fixes:

- Better error handling when starting up
  Will hopefully be more friendly when running on systems that don't been the minimum requirements.
- Fixed multiple reporting of 'Cannot import Mac's clipboard'
  This error message is now only reported once per session.
- Windows can no longer be dragged under the menu bar on Mac OS X
- Hopefully eliminated the -600 error message that sometimes occurred when auto-launching TNT Basic from Hieroglyph on Mac OS X

Known Limitations:

- Sprites flicker on certain video cards under Mac OS X
  This is currently under investigation and any occurrences should be reported to us via the community forums along with the version of Mac OS X you are using, and the graphics card and Mac that the problem occurred on.
  This bug is not currently thought to affect hardware graphics mode.
- Configurable controls are not currently supported on Mac OS X

## TNT Basic 1.03

New Features:

- New commands:
  sprite accessors: 'sprite x', 'sprite y', 'sprite image' and 'image bank' for getting the location, current image and current bank of a sprite
  'Set Networking Normal' and 'Set Networking Registered' commands to turn on more fault tolerant networking
- Moan: A new asynchronous movement and animation system for sprites and viewports
  Allows sprites and viewports to be individually programmed and then left to their own devices, greatly simplying some games.
- Map viewports, viewports that automatically do tile scrolling, meaning huge maps can be opened in very little memory and behave exactly the same as if the map was drawn in its entirity

Bug Fixes:

- Networking bug fixes
- Fixed image copying bug that sometimes omitted the last column of pixels in a 'copy' or 'scroll viewport' command
- Added workaround to a Mac OS X 10.1.3 bug that stopped cmd-. and escape working in game
- Added a more informative warning message for when 'end proc' statements are omitted
- Fixed bug with using \" to put a quotation mark in a string
- Checks the keys more often, can now detect very quick key presses
- Fixed bug with declaring globals inside procedures
- Fixed bug with playing MP3 files there were still open in Hieroglyph
- Fixed bug with FPS being displayed in last set font rather than system font
- Fixed failiure to detect missing 'End Proc' statements
- Better error reporting with mangled procedure definitions
- Fixed 'Array index out of bounds' being reported on the wrong line if used as part of an 'if ... then ...' statement

## TNT Basic 1.02

New Features:

- New commands:
  map tile width : Returns the width in pixels of the tiles on the current map
  map tile height : Returns the height in pixels of the tiles on the current map
  map polygon x : Returns the leftmost tile position of a polygon
  map polygon y : Returns the topmost tile position of a polygon
  map polygon width : Returns the width of a polygon
  map polygon height : Returns the height of a polygon
  map polygon name : Returns the name of a polygon
- OS X speed boost
  Framerates are several times higher and general execution speed is marginally improved

Bug Fixes:

- Fixed crash that occurred if you passed a negative value to 'sprite off'
- Improved efficiency of collision detections with non-existant sprites
- Use of custom blitter has speeded up 'copy canvas' and 'draw map' commands several fold
- Fixed collision detection between sprites in a viewport and sprites in canvas 0, this also allows the use of buttons in viewports
- Fixed parsing bug when one command could be misinterpretted as another, eg:
  sprite collisionId,x,y,i
  was being seen as a 'sprite col' command
- Fixed 'set map tile' command which was taking the wrong number of parameters
- Fixed small memory leak in 'file read' and 'get file type' commands
- Fixed spinning colour wheel under Mac OS X
- cmd-. and escape now work with the 'delay' command

## Hieroglyph 2.02

New Features:

- Genesis now allows tiles larger than 64x64

Bug fixes:

- Fixed update bug with cutting text
- Changed the 'Find selection' quick key from cmd-H to cmd-J as it conflicted with Mac OS X's 'Hide Application' command
- Fixed mouse wheel scrolling when multiple docuements are open
- Speeded up error bar sliding on and off under Mac OS X
- Genesis now enables the 'Save' menu item if items in the polygon window are changed

## TNT Basic 1.01

New Features:

- New commands:
  min : Returns the lesser of two numbers
  max : Returns the greater of two number
  wrap : Wraps a given number to be within a given range
  as number : Converts a string to a number
  ^ : Infix power operator
- Source code in built applications is now protected

Bug Fixes:

- Fixed crash that happened if you used a variable before you'd declared it
- Fixed corrupted about box text under OS 9
- Fixed "set image collision" type check, it now works as documented
- Added more error codes including resolution not available and input sprocket errors
- Preference is now given to non-stretched resolutions over stretched ones
- Corrected indexes are one too high when using "poll input" function. They are now indexed from zero as stated in the documentation
- Fixed signal that occurred if a label was used without being defined
- Fixed fast sprite collision, sprites now have to overlap before being registered as colliding, previously they only had to be touching
- Fixed "mouse x", "mouse y" and button commands returning bogus coordinates if the window was smaller than the screen size
- Fixed blanking window not being black if window was smaller than screen under OS X
- Fixed bug where registered users were being nagged about registering
- Changed screen shot key from cmd-F12 to cmd-F11 because F12 is the eject CD key under OS X

## Hieroglyph 2.01

New Features:

- Window positions are now saved and restored so they don't shuffle if your program changes rez
- More aqua compliant dialogs under OS X: alert boxes are bigger and use larger fonts, they are movable, and display Hieroglyph's icon. Other dialogs throughout Hieroglyph now have the correct aqua background
- Multiple undo in the code editor
- Mouse wheel is supported in the code editor

Bug Fixes:

- Projects with saved window dimensions larger than the screen are shrunk to fit on the display
- The input editor now numbers its input elements from 0 to match the "poll input" function
- Updated cosmetic glitch in the input editor where text could be displayed incorrectly
- Fixed lack of default button in alerts
- More debug logging to let us track down any problems with Hieroglyph on our end users' machines
- Fixed bug where windows sometimes wouldn't be deactivated when switching to another app
- Changed the "Redo" menu item's command key to shift-cmd-z to match CodeWarrior's
- Eliminated weird random styles in dropped/pasted/copied text in the code editor
- Hieroglyph is now much better a finding a copy of TNT Basic to launch under OS X
- Fixed i-beam cursor not appearing in code editor
- Fixed undo bug in Genesis and makes use of window changed "dot" under OS X

Next Page...