mirror of
https://github.com/cc65/cc65.git
synced 2024-12-29 13:31:59 +00:00
Moved Apple EXEHDR to separate module (similiar to CBMs).
git-svn-id: svn://svn.cc65.org/cc65/trunk@5708 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
cf509a775d
commit
9cc99876b2
@ -72,6 +72,7 @@ S_OBJS= _scrsize.o \
|
|||||||
dosdetect.o \
|
dosdetect.o \
|
||||||
drives.o \
|
drives.o \
|
||||||
exec.o \
|
exec.o \
|
||||||
|
exehdr.o \
|
||||||
filedes.o \
|
filedes.o \
|
||||||
filename.o \
|
filename.o \
|
||||||
get_ostype.o \
|
get_ostype.o \
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; Oliver Schmidt, 15.09.2009
|
; Oliver Schmidt, 2009-09-15
|
||||||
;
|
;
|
||||||
; Startup code for cc65 (Apple2 version)
|
; Startup code for cc65 (Apple2 version)
|
||||||
;
|
;
|
||||||
@ -9,25 +9,14 @@
|
|||||||
.import zerobss
|
.import zerobss
|
||||||
.import initlib, donelib
|
.import initlib, donelib
|
||||||
.import callmain, callirq
|
.import callmain, callirq
|
||||||
.import __RAM_START__ , __RAM_LAST__ ; Linker generated
|
.import __RAM_LAST__, __ZPSAVE_RUN__ ; Linker generated
|
||||||
.import __MOVE_START__, __MOVE_LAST__ ; Linker generated
|
.import __LC_START__, __LC_LAST__ ; Linker generated
|
||||||
.import __LC_START__ , __LC_LAST__ ; Linker generated
|
.import __INIT_SIZE__ ; Linker generated
|
||||||
.import __ZPSAVE_RUN__, __INIT_SIZE__ ; Linker generated
|
|
||||||
.import __INTERRUPTOR_COUNT__ ; Linker generated
|
.import __INTERRUPTOR_COUNT__ ; Linker generated
|
||||||
|
|
||||||
.include "zeropage.inc"
|
.include "zeropage.inc"
|
||||||
.include "apple2.inc"
|
.include "apple2.inc"
|
||||||
|
|
||||||
.linecont +
|
|
||||||
|
|
||||||
; ------------------------------------------------------------------------
|
|
||||||
|
|
||||||
.segment "EXEHDR"
|
|
||||||
|
|
||||||
.addr __RAM_START__ ; Start address
|
|
||||||
.word __ZPSAVE_RUN__ - __RAM_START__ + \
|
|
||||||
__MOVE_LAST__ - __MOVE_START__ ; Size
|
|
||||||
|
|
||||||
; ------------------------------------------------------------------------
|
; ------------------------------------------------------------------------
|
||||||
|
|
||||||
.segment "STARTUP"
|
.segment "STARTUP"
|
||||||
|
20
libsrc/apple2/exehdr.s
Normal file
20
libsrc/apple2/exehdr.s
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
;
|
||||||
|
; Oliver Schmidt, 2012-06-10
|
||||||
|
;
|
||||||
|
; This module supplies a 4 byte DOS 3.3 header
|
||||||
|
; containing the load address and load length.
|
||||||
|
;
|
||||||
|
|
||||||
|
.export __EXEHDR__ : absolute = 1 ; Linker referenced
|
||||||
|
.import __RAM_START__, __ZPSAVE_RUN__ ; Linker generated
|
||||||
|
.import __MOVE_START__, __MOVE_LAST__ ; Linker generated
|
||||||
|
|
||||||
|
.linecont +
|
||||||
|
|
||||||
|
; ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
.segment "EXEHDR"
|
||||||
|
|
||||||
|
.addr __RAM_START__ ; Start address
|
||||||
|
.word __ZPSAVE_RUN__ - __RAM_START__ + \
|
||||||
|
__MOVE_LAST__ - __MOVE_START__ ; Size
|
@ -75,6 +75,7 @@ S_OBJS= _scrsize.o \
|
|||||||
dosdetect.o \
|
dosdetect.o \
|
||||||
drives.o \
|
drives.o \
|
||||||
exec.o \
|
exec.o \
|
||||||
|
exehdr.o \
|
||||||
filedes.o \
|
filedes.o \
|
||||||
filename.o \
|
filename.o \
|
||||||
get_ostype.o \
|
get_ostype.o \
|
||||||
|
@ -4,6 +4,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0803;
|
STARTADDRESS: default = $0803;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -4,6 +4,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0800;
|
STARTADDRESS: default = $0800;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -5,6 +5,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0800;
|
STARTADDRESS: default = $0800;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
# Configuration for ProDOS 8 system programs (without the header)
|
# Configuration for ProDOS 8 system programs (without the header)
|
||||||
|
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -4,6 +4,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0803;
|
STARTADDRESS: default = $0803;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -4,6 +4,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0803;
|
STARTADDRESS: default = $0803;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -4,6 +4,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0800;
|
STARTADDRESS: default = $0800;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -5,6 +5,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0800;
|
STARTADDRESS: default = $0800;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
# Configuration for ProDOS 8 system programs (without the header)
|
# Configuration for ProDOS 8 system programs (without the header)
|
||||||
|
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
@ -4,6 +4,7 @@ FEATURES {
|
|||||||
STARTADDRESS: default = $0803;
|
STARTADDRESS: default = $0803;
|
||||||
}
|
}
|
||||||
SYMBOLS {
|
SYMBOLS {
|
||||||
|
__EXEHDR__: type = import;
|
||||||
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
__STACKSIZE__: type = weak, value = $0800; # 2k stack
|
||||||
}
|
}
|
||||||
MEMORY {
|
MEMORY {
|
||||||
|
Loading…
Reference in New Issue
Block a user