I'll call this the "CPMUG10 file". It contains the LLL floating point code,
a LLL Tiny BASIC, and a monitor. It's described as an update to the version
in CPMUG02. Thanks to "Bill" for posting in comp.os.cpm that this was available.
On or about Sept 28th, I took time to compare CPMUG02 version and the LLNL document
in a rough fashion. I found that the LLNL listing included the square root routine; the CPMUG02 file did not. But there are OTHER differences between the two, but I don't
have time to make exhaustive checks. ON OCt 2nd, I made a rough check between the
CPMUG02 and CPMUG10 versions of the FP software.
4) The file LLLFPODT.ASM from Roche, his version of the LLNL listing with the
square root routine added and other changes not described to me.
So I've created the following files on my Web site:
1) The text heading of both files are the same, in terms of dates and changes
listed and names. The first "org", ORG 110000Q from the CPMUG002 code, is commented out in the CPMUG010 code. Before and after that ORG in the CPMUG010 code are tables, as follows below. The "euates for relocated packages" are new in CPMUG010, as is the "CPM EQU 5". The
commented out equates in CPMUG010 as below are originally in use in CPMUG002. MINCH and MAXCH are in use in both files.
[snip, code above common to both CPMUG02 and CPMUG10]
; ////OTHER CHANGES ARE NOTED BY **
; ////MODIFIED BY FRANK OLKEN 6/28/75
;
;
[following code from CPMUG010]
;###S
; EQUATES FOR RELOCATED PACKAGES
ORG 10DDH
INTERP: EQU 0100H
FPTBL: EQU 1774H
IOJUMP: EQU 1900H
CONIN: EQU IOJUMP+4
STATUS: EQU IOJUMP+0AH
INP: EQU FPTBL+33H
OUTR: EQU FPTBL+36H
OUTL: EQU INTERP+7D9H
INL: EQU INTERP+996H
; ORG 110000Q
;
CPM: EQU 5
;CONIN EQU 404Q ; JMP TABLE LOCATION OF CONSOLE INP.
;STATUS EQU 412Q ; JMP TABLE LOC. FOR STATUS PORT INPUT
;OUTR EQU 113775Q ;LINK TO BASIC
;OUTL EQU 103726Q
;INL EQU 104623Q
;INP EQU 113772Q ;LINK TO BASIC
;###E
[code the same in both afterward]
MINCH EQU 300Q ;MINIMUM CHARACTERISTIC WITH SIGN EXTENDED
MAXCH EQU 077Q ;MAXIMUM CHARACTERISTIC WITH SIGN EXTENDED
2) Most of the code appears to be unchanged between CPMUG02 and CPMUG10. This was ROUGHLY determined by visual examination to look for an added or deleted line of code.
Neither file has the square root routine from the LLNL PDF listing.
3) At the end of the both sets of code there is a JMP table, "linkages
to Floating Point Routines". In the CPMUG010 code, the ORG is 1774H; the
previous ORG of 113707Q is commented out.
------------------------------------------
Herb Johnson, Sept 29-30 2006
Comparison of CPMUG002 LLNL floating point code vs PDF copy of LLNL document of