Recent

Author Topic: Hisoft pascal plus 3 compiler  (Read 2319 times)

alanwestlake

  • Newbie
  • Posts: 5
Hisoft pascal plus 3 compiler
« on: April 07, 2025, 02:48:31 pm »
Hi,
Please forgive me if I'm slightly off topic. Been using freepascal for a while but decided to find Hisoft Pascal for the ZX spectrum plus 3, my first ever pascal compiler!

It's all working (on an emulator) but I can't remember how to create a standalone object file. I've looked everywhere but there is no plus 3 manual on the internet. I've got a plus 2 manual but no cigar. That mentions using 'T' for translate. But on the plus 3 compiler 'T' is for trash.

Just wondering if anyone remembers how to do this, or knows of a plus 3 manual.

Many thanks in advance.

MarkMLl

  • Hero Member
  • *****
  • Posts: 8572
Re: Hisoft pascal plus 3 compiler
« Reply #1 on: April 07, 2025, 04:20:07 pm »
I'm sure we can claim that this is on topic because you're looking at the compatibility between the two compilers :-)

I didn't use that specific compiler, although it might possibly ring a bell for somebody else. I /did/ use the Modula-2 compiler that was distributed by Hisoft, but my recollection is that that was driven from the commandline rather than having an IDE.

Now, the M2 was actually the FTL compiler written by (IIRC) somebody in Australia (Hisoft was fairly good, but not really up to writing a compiler from scratch).

Which suggests that you could usefully research who originated the compiler+IDE that you're running, and look for a manual either using its original name or by looking for who distributed it in the USA for the Timex computer which I think was a licensed  Spectrum clone.

MarkMLl
MT+86 & Turbo Pascal v1 on CCP/M-86, multitasking with LAN & graphics in 128Kb.
Logitech, TopSpeed & FTL Modula-2 on bare metal (Z80, '286 protected mode).
Pet hate: people who boast about the size and sophistication of their computer.
GitHub repositories: https://github.com/MarkMLl?tab=repositories

alanwestlake

  • Newbie
  • Posts: 5
Re: Hisoft pascal plus 3 compiler
« Reply #2 on: April 07, 2025, 10:55:21 pm »
Hi,

Many thanks for the suggestions.

I used to use the FTL Modula 2 compiler on the Atari :)
It was a lot of fun.

Alan

Zoran

  • Hero Member
  • *****
  • Posts: 1988
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: Hisoft pascal plus 3 compiler
« Reply #3 on: April 08, 2025, 08:26:02 pm »
Try asking in Spectrum computing forum. By searching the term "hisoft", I got many results, some quite recent -- from 2025!
So it seems you might find active users there who are still interested in this product.

Indeed, the only Hisoft Pascal manual I could find online has Spectrum 48K, 128 & Spectrum Plus 2 printed on the front page.
If you are sure that another different manual for +3 model existed, try asking there...
« Last Edit: April 08, 2025, 08:32:11 pm by Zoran »
Swan, ZX Spectrum emulator https://github.com/zoran-vucenovic/swan

alanwestlake

  • Newbie
  • Posts: 5
Re: Hisoft pascal plus 3 compiler
« Reply #4 on: April 09, 2025, 10:09:11 pm »
I'll try there.
Many thanks for checking it out.  :)

munair

  • Hero Member
  • *****
  • Posts: 887
  • compiler developer @SharpBASIC
    • SharpBASIC
Re: Hisoft pascal plus 3 compiler
« Reply #5 on: April 10, 2025, 09:07:09 am »
Since this is considered on topic, I'll provide the answer generated by Grok:

In the editor, after writing your program, invoke the compiler by typing RUN and pressing ENTER. The compiler processes the code and generates machine code in memory. By default, this code is linked with a small runtime environment that handles I/O and basic operations, making it executable immediately within HiSoft Pascal.

Set Compiler Options for Standalone Output:
To make the program standalone, you need to ensure it doesn’t rely on the HiSoft Pascal editor or loader being present. HiSoft Pascal allows some control over this:

- Disable Debugging Checks: Turn off options like integer overflow or array bounds checking (if enabled) to reduce dependencies and size. Use the OPTIONS directive if available in your version (e.g., OPTIONS NOCHECK) before the PROGRAM line.

- Specify Start Address: The compiled code typically starts at a fixed address (often around 32768 or higher, above the HiSoft Pascal system). You can sometimes set this explicitly with a directive like ORG (e.g., ORG 32768), though this depends on the version.

Save the Compiled Machine Code:
After compilation, the machine code resides in memory. To save it as a standalone object file:

- Use the SAVE command with a memory range. For example, if your compiled code starts at 32768 and is 1000 bytes long, you’d enter something like:
Code: Pascal  [Select][+][-]
  1. SAVE "MYPROG" CODE 32768, 1000

Test the Standalone File:
Load the saved file back into a fresh Spectrum (without HiSoft Pascal loaded) using:
Code: Pascal  [Select][+][-]
  1. LOAD "" CODE
Then start it with:
Code: Pascal  [Select][+][-]
  1. RANDOMIZE USR 32768
(Adjust the address if you used a different ORG.)
It's only logical.

d2010

  • Sr. Member
  • ****
  • Posts: 264
Re: Hisoft pascal plus 3 compiler
« Reply #6 on: April 10, 2025, 03:27:54 pm »
Hi,
Please forgive me if I'm slightly off topic. Been using freepascal for a while but decided to find Hisoft Pascal for the ZX spectrum plus 3, my first ever pascal compiler!
Already I have a Delphi-Emulator. How can share together Delphi-Emulator-of"Z80"?
Okai you have "PROGRAM PASCAL .z80" from "HiSoftCompiler", but main question =
 How to integrate "program.pascal.z80" to inside "Lazarus.Program.Exe?"
You import and export many sources.pascal.hisoft inside your "Delphi-Emulator-for "z80?"
How to develop a Team for HiSoft-Pascal?
https://youtu.be/pmGeBHU--fQ

Here List-of-Basic-codes with background images?
https://youtu.be/s2hD-TG0m8U?t=21
Can you transform, Delphi-Emulator-for "z80 to-inside "Lazarus4.4.verr"?

Thank you,
Thabnk you, click here Thank you got-click here.
« Last Edit: April 10, 2025, 03:33:56 pm by d2010 »

alanwestlake

  • Newbie
  • Posts: 5
Re: Hisoft pascal plus 3 compiler
« Reply #7 on: April 11, 2025, 11:31:04 am »
All,

I never expected such great answers. Thank you so much for taking the time.
I'd never heard of GROK but that answer looks awesome.
This is a great forum. :)
I'll try that solution from Munair this evening. I'll let you know if it works.

Thanks

Alan

Zoran

  • Hero Member
  • *****
  • Posts: 1988
    • http://wiki.lazarus.freepascal.org/User:Zoran
Re: Hisoft pascal plus 3 compiler
« Reply #8 on: April 11, 2025, 07:05:38 pm »

By the way, did you know that FPC from main branch can compile for Spectrum? See: https://wiki.freepascal.org/Z80. I haven't tried it myself though.
Swan, ZX Spectrum emulator https://github.com/zoran-vucenovic/swan

alanwestlake

  • Newbie
  • Posts: 5
Re: Hisoft pascal plus 3 compiler
« Reply #9 on: April 13, 2025, 08:24:08 pm »
I'll give that a try.  ;) ;)

 

TinyPortal © 2005-2018