HIGHSPEED Pascal: Difference between revisions

From Atari Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 177: Line 177:
 
</pre>
 
</pre>
   
[[Category:Programming languages]]
 
 
[[Category:Pascal]]
 
[[Category:Pascal]]

Revision as of 12:09, 13 October 2011

		    HIGHSPEED Pascal Version 1.5
		    ----------------------------

  This READ.ME file contains last minute information

  Before you use this disk, please make a backup copy of it


1  NEW IN THIS VERSION
----------------------

  o The version $Define variable is "VER15"

  o Knows about the MultiGEM environment

  o BYTE and WORD variables now only takes space according to there
    actual size.
    BYTE uses 1 byte, while word uses 2 bytes.

  o ABSOLUTE variables. Examples:
      MyBuffer: array [0..999] of integer ABSOLUTE inp;
      Bottom:   array [0..255] of pointer ABSOLUTE $00;

  o Typed constants
    Const
      MaxValue: Word        = 40000;
      FacS:     Single      = 4.1;
      Space:    Char        = ' ';
      Hello:    String[20]  = 'Hello World';
      HexDigits:Set of Char = ['0'..'9','a'..'f','A'..'F'];
      ArrayStr: Array[(North,South,East,West)] of integer = (0,180,90,270);

  o Big arrays. The limit on array on 32 KBytes has now been removed.
    Only the amount of memory now limits the size.
    There are still a 32 KB limit on records.
    BigArray: array[100..50000] of integer;

  o Fixed inline assembler problems with: BTST, BSET, LINK, NEG, MOVEQ
  o Fixed problems with: ADD.L #$10,D0. Also SUB, CMP, AND, OR and EOR

  o Writeln(True,' ',False) now writes correct text.

2  NEW SINCE FIRST VERSION
--------------------------

  o Inline Assembler. Enables you to write assembly language directly in
    your Pascal source code. See the HZ200 function in the UTILUNIT.PAS
    file for an example of how to use the IA.
    The words ASM and ASSEMBLER are reserved

  o Fixed the MOVE procedure. MOVE(x,y,n) sometimes moved one byte too much

  o Malloc, Mfree and Mshrink implemented in DOS unit

  o Fixed the problems with window #2

  o Assign and SetTextBuf has been implemented

  o Reset, Rewrite and Append does not take [,buffersize]
    Use SetTextBuf(File,Buffer[,Size]) instead

  o Windows are sized in steps of whole chars on screen

  o Ctrl-A not a hotkey

  o Minimum value of heap in $M is 0 KByte

  o Alt-T use both Include and Unit paths while searching for a file

  o The following procedures has been cleaned up to use "VAR xx" instead of
    "xx: pointer" in there declaration
    GEMAES:
      evnt_multi, appl_find, appl_trecord, appl_read, appl_write, appl_tplay,
      evnt_mesag, menu_text, menu_register, form_alert,
      scrp_read, scrp_write, fsel_input, fsel_exinput, rsrc_load,
      shel_read, shel_get, shel_put, shel_find, shel_envrn, shel_write
    GEMVDI:
      v_fillarea, vr_recfl, v_bar, v_rbox, v_rfbox, vs_color,
      vro_cpyfm, vrt_cpyfm, vr_trnfm, vrq_string, vsm_string, vsc_form,
      vq_cellarray, vqt_fontinfo, v_output_window, v_bit_image, vsp_state,
      v_write_meta,vs_clip, v_pline, v_pmarker, v_cellarray


  o FlopWr in BIOS works. Did not use the sector parameter

  o ReadKey function no longer returns LF after CR when return key pressed

  o Graph unit implemented

  o Dummy CRT unit implemented

  o SwapVectors and Exec implemented in the DOS unit

  o The help window can go backwards. Use the UNDO key

  o The HIDE has been optimized. Scrolls faster than before

  o The HIDE supports Ctrl-Y/Ctrl-Z for delete line

  o DOS and BIOS unit has been completely rewritten using the Inline Assembler

  o The BIOS.RsConf procedure has been changed to a function:
      Function RsConf(Scr, Tsr, Rsr, Ucr, Ctr, Speed : Integer) : LongInt;

  o The Cnt and Res parameters to BlockRead and BlockWrite has been
    changed from LongInt's to Integers


3  NEW UTILITIES
----------------

  o HighSpeed Help Accessory implemented. Please read the file HHA\HHA.DOC
    on disk #2.


4  FILES ON DISK #1
-------------------

  Information files
  -----------------
  READ    .ME   This file with latest news

  The compiler files
  ------------------
  HSPASCAL.PRG  The integrated compiler.

  PASCAL  .LIB  A collection of unit files in one library.
  PASCAL  .HLP  The help file for on-line help.
  PASCAL  .DAT  Default settings, made by the integrated version.

  Demonstration files
  -------------------
  DOSDEMO\*.*   Demonstration programs
  GRAFDEMO\*.*  Graphic demonstration programs without use of windows


5  FILES ON DISK #2
-------------------

  The compiler file
  -----------------
  HSPC    .TTP  The command line version of the compiler.

  Utility programs
  ----------------
  HHA\*.*             The HighSpeed Help Accessory.
  UNITS\LIBMAKER.TTP  The unit to library converter.
                      Generates the PASCAL.LIB file.
  UNITS\LIBMAKER.PAS  The unit to library converter source code.
                      You may change it if you need to move a lot of files.


  Unit Files
  ----------
  UNITS\GemDecl .UNI  Standard Gem declarations (and some utilities)
  UNITS\GemAES  .UNI  Standard Gem routines
  UNITS\GemVDI  .UNI  Standard Vdi routines
  UNITS\STPascal.UNI  Implementation of the routines from ST-Pascal
  UNITS\Dos     .UNI  A lot of routines for TOS interface
  UNITS\Bios    .UNI  Interface for the BIOS and XBIOS routines
  UNITS\Printer .UNI  Makes it easy to use a printer.
  UNITS\UtilUnit.PAS  A mixture of often used routines.
  UNITS\EasyGraf.PAS  A demonstration unit, using the VDI library.
  UNITS\STPascal.DOC  Some information about the STPascal unit.
  UNITS\Graph   .UNI  Unit for making PC graphics.
  UNITS\Crt     .UNI  Dummy CRT unit.

  DOS unit is build into the compiler.

  All other unit files are included in the PASCAL.LIB file.

  Demonstration files
  -------------------
  GEMDEMO\*.*   Gem demonstration programs
  MYCALC\*.*    An example of a calculator