EasyPtr

EasyPtr was created in 1991 by Albin Hesser. It was a major revolution when it came to programming the pointer environment. It combined some powerful new SuperBasic keywords with an actual WYSIWYG editor to design all the menus. I was around 12 at the time and I actually still remember the excitement I had about finally being able to write programs that made use of WMAN. In 2004 I had the honour of updating the suite to deal with all the new features I implemented for WMAN2. And now, for the first time ever, it’s available for free (announcement and history)! Enjoy:

Files: EasyPtr4.zip
Manual: EasyPtr4.pdf

EasyMenu
-=-=-=-=
4.00  Allows entry of high colour values. These are entered by their hex value
        and prepended by a $ character, i.e. "$020e".
      New menu elements default to their system palette colours
      Window sprite defaults to arrow system sprite
      Background and object colour chooser use SMSQ/E palette colours
      ... probably much more that I forgot

4.01  Implemented scaling flag handling. Scale flags are extracted on load and
        re-integrated on save. They can be manipulated in the list mode menu.
      Implemented GD2 sprite support. Max object size remains 32kb!
      Implemented system sprites support as pre-defined objects
      Allows values bigger than 999 in list mode
      Colour chooser now uses aurora hardware palette RGB colours
      Some minor fixes
      "Mode" button disabled in high colour mode

4.02  Application window item and arrow/bar colours now correctly default to
        the corresponding system palette colours.
      Full colour input now possible for appwin arrows/bars, too
      Scaling flags for the initial pointer position can now be specified at
        the origin values for the layout. Those do not use scaling anyway
      Object chooser window now bigger and resizable

4.03  Object chooser window now auto resizes to automatically accomodate bigger
        sprites
      Objects can now be larger than 32kb

4.04  Due to popular request EasyMenu main window size is now both configurable
        and resizeable
      Now disallows setting of pointer sprites bigger than 64x64
      Problem fixed when pointer sprite does not fit in window
      Fixed bug on systems with more than 16MB main memory
      Fixed memory corruption on application menu removal
      Does not create bars anymore if application menu dialog is left with OK
        instead of ESC after removing a menu
      Config block is now level 2

4.05  DO on resize icon maximises/restores window
      In high colour, MODE button now switches between the 4 system palettes
        and one inbuilt colour scheme
      Menu elements of application windows can now also be scaled. Scales can
        be entered by prepending the hit size/spacing values with "x:" where
        x is a value from 0 to 4, i.e. "4:100" for an 100 pixel wide menu
        element that will be scaled 1:1.
      Fixed grabbing of menu definitions from open channels on recent SMSQ/Es
      Fixed crash on information object text input (when inobj is too small)
      Loaded menus now default to the left side instead of the right
      Some minor fixes concerning application window menus
      Experimental: EM background colour now also affects EM loose items
      New default background colour

4.06  EM window moveable
      Fixed white colour scheme
      Selected system palette number now visible in mode button

4.07  New attributes window with many different colour selection modes
      AppWin: section numbers are not limited anymore if "only bars" is chosen
      Some minor fixes

4.08  Increased size of list menu to 8 lines
      Various fixes
      New "fixed" palette which equals the default SMSQ/E "pal" palette but
        results in fixed RGB values instead of variable pal indexes.
      Basic background can now be used even if EM does not cover this area

4.09  Minimum loose item size is 0x0 again
      Fixed size/origin change of layout in direct menu
      Fixed creation of new inf/app windows in direct menu
      Potential memory coruption on systems with more than 16MB fixed

4.10  When moving items in list mode, scaling flags were not correctly
        moved along

4.11  Fixed bug that caused long loading time on Q68

4.12  Fixed _msc sprite collection support


EasySprite
-=-=-=-=-=
4.00  GD2 compliant (but can still only design 4 and 8 colour sprites!)
      Supports both mode 4 and 8 sprites when running in a high colour mode

4.01  Disabled "cut out" menu in high colour mode
      Some minor fixes


Basic extension
-=-=-=-=-=-=-=-
4.00  MAWDRAW et al now accept GD2 sprites
      Fixed MWINDOW #x,-1
      Experimental: "WMOV -1" to use WMAN window move routine
      Fixed various colour problems
      Made MAWDRAW compatible with single-item array slices, ie array$(0 TO 0)

4.01  MCALLT does not return NOT COMPLETE anymore in case of a timeout
      New keyword WSIZE to allow standard menu resizing

4.02  Fixed MDRAW problem with scaling flags in window definition

4.03  MAWDRAW et al now limits start column/row to sane values
      MAWDRAW et al: some fixes for border cases
      MAWDRAW et al: fixes for array spacing lists
      MINPUT now accepts dimensioned strings (and thus can be used with Turbo)

4.04  WMOV#ch,-1 now doesn't reposition the ptr anymore
      MAWxxx,MWINDOW,MWLINK: '\' separator does not clear window anymore

4.05  MAWDRAW et al: Further fix for array spacing list (hope that was all now!)

4.06  One more minor MAWDRAW fix for single-item sliced string arrays
      MWINDOW/MWLINK now again sets the paper/strip/ink colour by default

4.07  MAWDRAW et al: YASF (yet another spacing fix). Will it ever end?

4.08  MAWDRAW: 2nd*3rd dimension may now be 64KB instead of just 32kb
      Fixed too fast auto-repeat on scroll bar in MCALLT
      MWINDOW#ch,0 sets window size to whole outline
      MOBJA#ch\inwin! returns address of info window definition

4.09  MCALLT returns 0 in event% in case of a timeout

4.10  Fixed PTOP keyboard stuffing


AppMan
-=-=-=
4.00  Fixed handling of configured default directory

4.01  Fixed memory corruption
      Sprite preview can handle big sprites (automatic resize)
      Some changes for really big objects

4.02  New high colour menus courtesy of Wolfgang Uhlig
      System palette used by new menus configurable
      Background colour configurable
      New default background colour (matches EasyMenu)
      Various fixes for handling big objects (limit: 16MB per object)
      Now also allows exchanging of extension file after an appendix has been
        loaded
      Remembers last used directory


EasySource
-=-=-=-=-=
4.00  Now writes extended sprite definitions as a dc.w block instead of crashing
      Disassembles scaling information for "Initial pointer position"
      Some changes in the generated code fragments