Dec 082017
Turbo C (and TASM) source code for Lharc version 1.13b. | |||
---|---|---|---|
File Name | File Size | Zip Size | Zip Type |
BATTY.COM | 19 | 19 | stored |
EXECUTE.C | 1784 | 491 | deflated |
HUF.ASM | 12191 | 2691 | deflated |
LHARC.C | 41549 | 11147 | deflated |
LZS.ASM | 19038 | 4149 | deflated |
MAKEFILE | 1100 | 379 | deflated |
PARA_TOB.YTE | 13 | 13 | stored |
READ.ME | 1992 | 1037 | deflated |
SFXBT.BAT | 176 | 136 | deflated |
SFXL.ASM | 19736 | 5603 | deflated |
SFXLBT.BAT | 176 | 136 | deflated |
SFXS.ASM | 13367 | 4033 | deflated |
USAGE.C | 3685 | 1385 | deflated |
UTIL.C | 2777 | 841 | deflated |
Download File LH113SRC.ZIP Here
Contents of the READ.ME file
NOTE -- The original source files were set up to use Opasm and
Symdeb. The changes indicated in this READ.ME file
have already been made.
The following are files which allow you to compile Lharc using
Masm or Tasm instead of Opasm, and debug instead of Symdeb.
There are a couple of changes you will need to make to SFX.ASM
and SFX2.ASM. The original source line in each looks like this:
_BSSsegmentpara public 'BSS';
In order to get it to work with Tasm or Masm change it to:
_BSSsegment at 1000h;
org 0h
This really makes it into something similar to a structure--it allows
the memory addresses to be referenced from a base, but doesn't
take up any memory in the obj file. Opasm is evidently smart
enough not to save space in the OBJ file. Anyway, this works.
With those changes you can assemble with either Masm or Tasm, but
you won't be able to link with Tlink unless you do a search and
replace for al for the 'DGROUP:' statements and change them to
'_BSS:'. This isn't necessary if you are using Microsoft's Link.
You will also need to change the ASSUME statements from ds:DGROUP
and es:DGROUP to ds:_BSS and es:_BSS to work with Tlink.
Also, in order to modify the SFX2BIN.OBJ and SFXBIN.OBJ so that
they are byte aligned instead of para aligned if you don't have
Symdeb (as the original make file requires) you may use Batty.com
and sfx2bt.bat and sfxbt.bat to do the same thing. However, you
can't run batty.com from a batch file, so don't put the make in a
batch file.
Turbo C 2.0 seems to work ok in making Lharc. I don't know about
Microsoft's C though.
I naturally can't claim any responsibility if these ideas don't
work or cause harm.
If you have any suggestions as to better ways to do this than
I've done, or questions, pleas drop me a note. My Genie address
is R.Clark20, and my phone number is (603) 827-3908.
Ralph W. Clark
P.O. Box 807
Harrisville, NH 03450
Symdeb. The changes indicated in this READ.ME file
have already been made.
The following are files which allow you to compile Lharc using
Masm or Tasm instead of Opasm, and debug instead of Symdeb.
There are a couple of changes you will need to make to SFX.ASM
and SFX2.ASM. The original source line in each looks like this:
_BSSsegmentpara public 'BSS';
In order to get it to work with Tasm or Masm change it to:
_BSSsegment at 1000h;
org 0h
This really makes it into something similar to a structure--it allows
the memory addresses to be referenced from a base, but doesn't
take up any memory in the obj file. Opasm is evidently smart
enough not to save space in the OBJ file. Anyway, this works.
With those changes you can assemble with either Masm or Tasm, but
you won't be able to link with Tlink unless you do a search and
replace for al for the 'DGROUP:' statements and change them to
'_BSS:'. This isn't necessary if you are using Microsoft's Link.
You will also need to change the ASSUME statements from ds:DGROUP
and es:DGROUP to ds:_BSS and es:_BSS to work with Tlink.
Also, in order to modify the SFX2BIN.OBJ and SFXBIN.OBJ so that
they are byte aligned instead of para aligned if you don't have
Symdeb (as the original make file requires) you may use Batty.com
and sfx2bt.bat and sfxbt.bat to do the same thing. However, you
can't run batty.com from a batch file, so don't put the make in a
batch file.
Turbo C 2.0 seems to work ok in making Lharc. I don't know about
Microsoft's C though.
I naturally can't claim any responsibility if these ideas don't
work or cause harm.
If you have any suggestions as to better ways to do this than
I've done, or questions, pleas drop me a note. My Genie address
is R.Clark20, and my phone number is (603) 827-3908.
Ralph W. Clark
P.O. Box 807
Harrisville, NH 03450
December 8, 2017
Add comments