Move some more code out of the blank segment to make space for static data.
This commit is contained in:
parent
ad31ecfcae
commit
ccd653ddb9
7
CGC.asm
7
CGC.asm
|
@ -8,7 +8,7 @@
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
CnvSX start
|
CnvSX start cg
|
||||||
rec equ 4 record containing values
|
rec equ 4 record containing values
|
||||||
rec_real equ 0 disp to real value
|
rec_real equ 0 disp to real value
|
||||||
rec_ext equ 8 disp to extended (SANE) value
|
rec_ext equ 8 disp to extended (SANE) value
|
||||||
|
@ -42,7 +42,7 @@ rec_ext equ 8 disp to extended (SANE) value
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
CnvSC start
|
CnvSC start cg
|
||||||
rec equ 4 record containing values
|
rec equ 4 record containing values
|
||||||
rec_real equ 0 disp to real value
|
rec_real equ 0 disp to real value
|
||||||
rec_ext equ 8 disp to extended (SANE) value
|
rec_ext equ 8 disp to extended (SANE) value
|
||||||
|
@ -85,6 +85,7 @@ rec_cmp equ 18 disp to comp (SANE) value
|
||||||
rtl
|
rtl
|
||||||
end
|
end
|
||||||
|
|
||||||
|
datachk off
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
* InitLabels - initialize the labels array
|
* InitLabels - initialize the labels array
|
||||||
|
@ -95,7 +96,7 @@ rec_cmp equ 18 disp to comp (SANE) value
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
InitLabels start
|
InitLabels start cg
|
||||||
maxLabel equ 3200
|
maxLabel equ 3200
|
||||||
|
|
||||||
! with labelTab[0] do begin
|
! with labelTab[0] do begin
|
||||||
|
|
2
CGC.pas
2
CGC.pas
|
@ -26,7 +26,7 @@ interface
|
||||||
|
|
||||||
uses CCommon, CGI;
|
uses CCommon, CGI;
|
||||||
|
|
||||||
{$segment 'cg'}
|
{$segment 'CG'}
|
||||||
|
|
||||||
type
|
type
|
||||||
{pcode code generation}
|
{pcode code generation}
|
||||||
|
|
2
CGI.pas
2
CGI.pas
|
@ -18,7 +18,7 @@ unit CodeGeneratorInterface;
|
||||||
|
|
||||||
interface
|
interface
|
||||||
|
|
||||||
{$segment 'cg'}
|
{$segment 'CG'}
|
||||||
|
|
||||||
{$LibPrefix '0/obj/'}
|
{$LibPrefix '0/obj/'}
|
||||||
|
|
||||||
|
|
2
DAG.pas
2
DAG.pas
|
@ -11,7 +11,7 @@ unit DAG;
|
||||||
|
|
||||||
interface
|
interface
|
||||||
|
|
||||||
{$segment 'cg'}
|
{$segment 'CG'}
|
||||||
|
|
||||||
{$LibPrefix '0/obj/'}
|
{$LibPrefix '0/obj/'}
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ interface
|
||||||
|
|
||||||
uses CCommon, MM, Scanner, Symbol, CGI;
|
uses CCommon, MM, Scanner, Symbol, CGI;
|
||||||
|
|
||||||
{$segment 'scanner'}
|
{$segment 'SCANNER'}
|
||||||
|
|
||||||
var
|
var
|
||||||
inhibitHeader: boolean; {should .sym includes be blocked?}
|
inhibitHeader: boolean; {should .sym includes be blocked?}
|
||||||
|
|
8
MM.asm
8
MM.asm
|
@ -13,7 +13,7 @@
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
Calloc start
|
Calloc start cc
|
||||||
|
|
||||||
ptr equ 0 pointer to reserved memory
|
ptr equ 0 pointer to reserved memory
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@ lb4 return 4:ptr return the pointer
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
GCalloc start
|
GCalloc start cc
|
||||||
|
|
||||||
ptr equ 0 pointer to reserved memory
|
ptr equ 0 pointer to reserved memory
|
||||||
|
|
||||||
|
@ -107,9 +107,9 @@ lb4 return 4:ptr return the pointer
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
Malloc start
|
Malloc start cc
|
||||||
|
|
||||||
lda useGlobalPool
|
lda |useGlobalPool
|
||||||
jne GMalloc
|
jne GMalloc
|
||||||
jmp LMalloc
|
jmp LMalloc
|
||||||
end
|
end
|
||||||
|
|
2
MM.pas
2
MM.pas
|
@ -39,6 +39,8 @@ interface
|
||||||
|
|
||||||
uses CCommon;
|
uses CCommon;
|
||||||
|
|
||||||
|
{$segment 'CC'}
|
||||||
|
|
||||||
var
|
var
|
||||||
localID,globalID: integer; {user ID's for the local & global pools}
|
localID,globalID: integer; {user ID's for the local & global pools}
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
mcopy native.macros
|
mcopy native.macros
|
||||||
|
datachk off
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
* Remove - remove an instruction from the peephole array
|
* Remove - remove an instruction from the peephole array
|
||||||
|
@ -8,7 +9,7 @@
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
Remove start
|
Remove start CodeGen
|
||||||
elSize equ 12 size of an element
|
elSize equ 12 size of an element
|
||||||
nPeepSize equ 128 size of array
|
nPeepSize equ 128 size of array
|
||||||
ns equ 4 array element
|
ns equ 4 array element
|
||||||
|
|
|
@ -30,7 +30,7 @@ interface
|
||||||
|
|
||||||
uses CCommon, CGI, CGC, ObjOut;
|
uses CCommon, CGI, CGC, ObjOut;
|
||||||
|
|
||||||
{$segment 'CodeGen'}
|
{$segment 'CODEGEN'}
|
||||||
|
|
||||||
type
|
type
|
||||||
labelptr = ^labelentry; {pointer to a forward ref node}
|
labelptr = ^labelentry; {pointer to a forward ref node}
|
||||||
|
|
15
ObjOut.asm
15
ObjOut.asm
|
@ -1,4 +1,5 @@
|
||||||
mcopy objout.macros
|
mcopy objout.macros
|
||||||
|
datachk off
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
* CnOut - write a byte to the constant buffer
|
* CnOut - write a byte to the constant buffer
|
||||||
|
@ -8,7 +9,7 @@
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
CnOut start
|
CnOut start CodeGen
|
||||||
maxCBuffLen equ 191 max index into the constant buffer
|
maxCBuffLen equ 191 max index into the constant buffer
|
||||||
|
|
||||||
lda cBuffLen if cBuffLen = maxCBuffLen then
|
lda cBuffLen if cBuffLen = maxCBuffLen then
|
||||||
|
@ -39,7 +40,7 @@ lb1 phb cBuff[cBuffLen] := i;
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
CnOut2 start
|
CnOut2 start CodeGen
|
||||||
maxCBuffLen equ 191 max index into the constant buffer
|
maxCBuffLen equ 191 max index into the constant buffer
|
||||||
|
|
||||||
lda cBuffLen if cBuffLen+1 >= maxCBuffLen then
|
lda cBuffLen if cBuffLen+1 >= maxCBuffLen then
|
||||||
|
@ -71,7 +72,7 @@ lb1 phb cBuff[cBuffLen] := i;
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
COut start
|
COut start CodeGen
|
||||||
|
|
||||||
phb OutByte(b);
|
phb OutByte(b);
|
||||||
pla
|
pla
|
||||||
|
@ -95,7 +96,7 @@ COut start
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
Out2 start
|
Out2 start CodeGen
|
||||||
|
|
||||||
phb OutWord(w);
|
phb OutWord(w);
|
||||||
pla
|
pla
|
||||||
|
@ -118,7 +119,7 @@ Out2 start
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
Out start
|
Out start CodeGen
|
||||||
|
|
||||||
phb OutByte(b);
|
phb OutByte(b);
|
||||||
pla
|
pla
|
||||||
|
@ -141,7 +142,7 @@ Out start
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
OutByte private
|
OutByte private CodeGen
|
||||||
|
|
||||||
lda objLen if objLen+segDisp = buffSize then
|
lda objLen if objLen+segDisp = buffSize then
|
||||||
clc
|
clc
|
||||||
|
@ -200,7 +201,7 @@ lb2a lda #$8000 handle a segment overflow
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
OutWord private
|
OutWord private CodeGen
|
||||||
|
|
||||||
lda objLen if objLen+segDisp+1 = buffSize then
|
lda objLen if objLen+segDisp+1 = buffSize then
|
||||||
sec
|
sec
|
||||||
|
|
|
@ -34,7 +34,7 @@ interface
|
||||||
|
|
||||||
uses CCommon, CGI, CGC;
|
uses CCommon, CGI, CGC;
|
||||||
|
|
||||||
{$segment 'CodeGen'}
|
{$segment 'CODEGEN'}
|
||||||
|
|
||||||
|
|
||||||
procedure CloseObj;
|
procedure CloseObj;
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
mcopy scanner.macros
|
mcopy scanner.macros
|
||||||
|
datachk off
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
* Convertsl - Convert a string to a long integer
|
* Convertsl - Convert a string to a long integer
|
||||||
|
@ -14,7 +15,7 @@
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
Convertsl start
|
Convertsl start scanner
|
||||||
|
|
||||||
val equ 0 return value
|
val equ 0 return value
|
||||||
|
|
||||||
|
@ -100,7 +101,7 @@ rkModifiers ds 2
|
||||||
*
|
*
|
||||||
****************************************************************
|
****************************************************************
|
||||||
*
|
*
|
||||||
NextCh start
|
NextCh start scanner
|
||||||
eofChar equ 0 end of file character
|
eofChar equ 0 end of file character
|
||||||
eolChar equ 13 end of line character
|
eolChar equ 13 end of line character
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ interface
|
||||||
|
|
||||||
uses CCommon, Table, CGI, MM;
|
uses CCommon, Table, CGI, MM;
|
||||||
|
|
||||||
{$segment 'scanner'}
|
{$segment 'SCANNER'}
|
||||||
|
|
||||||
type
|
type
|
||||||
pragmas = {kinds of pragmas}
|
pragmas = {kinds of pragmas}
|
||||||
|
|
Loading…
Reference in New Issue