From 69fbcb30fd393277c93eade43737a52d20582c47 Mon Sep 17 00:00:00 2001
From: Oliver Schmidt
Date: Mon, 7 Mar 2016 01:44:19 +0100
Subject: [PATCH] Use AX paradigm for stack initalization.
---
libsrc/atari5200/crt0.s | 4 ++--
libsrc/gamate/crt0.s | 4 ++--
libsrc/nes/crt0.s | 4 ++--
libsrc/pce/crt0.s | 17 ++++++++---------
4 files changed, 14 insertions(+), 15 deletions(-)
diff --git a/libsrc/atari5200/crt0.s b/libsrc/atari5200/crt0.s
index 7073bb2a7..ee3d0de4f 100644
--- a/libsrc/atari5200/crt0.s
+++ b/libsrc/atari5200/crt0.s
@@ -27,9 +27,9 @@ start:
; Set up the stack.
lda #<(__RAM_START__ + __RAM_SIZE__ - __RESERVED_MEMORY__)
+ ldx #>(__RAM_START__ + __RAM_SIZE__ - __RESERVED_MEMORY__)
sta sp
- lda #>(__RAM_START__ + __RAM_SIZE__ - __RESERVED_MEMORY__)
- sta sp+1 ; Set argument stack ptr
+ stx sp+1 ; Set argument stack ptr
; Call the module constructors.
diff --git a/libsrc/gamate/crt0.s b/libsrc/gamate/crt0.s
index 99af9b2d9..5a5bb3aa0 100644
--- a/libsrc/gamate/crt0.s
+++ b/libsrc/gamate/crt0.s
@@ -20,7 +20,7 @@ Start:
ldx #0
stx ZP_IRQ_CTRL ; disable calling cartridge IRQ/NMI handler
- ; Setup stack and memory mapping
+ ; Set up stack and memory mapping
;ldx #$FF ; Stack top ($01FF)
dex
txs
@@ -31,7 +31,7 @@ Start:
; Copy the .data segment to RAM
jsr copydata
- ; setup the stack
+ ; Set up the stack
lda #<(__RAM_START__+__RAM_SIZE__)
ldx #>(__RAM_START__+__RAM_SIZE__)
sta sp
diff --git a/libsrc/nes/crt0.s b/libsrc/nes/crt0.s
index de874d363..4d258ff9e 100644
--- a/libsrc/nes/crt0.s
+++ b/libsrc/nes/crt0.s
@@ -100,9 +100,9 @@ start:
; Set up the stack.
lda #<(__SRAM_START__ + __SRAM_SIZE__)
+ ldx #>(__SRAM_START__ + __SRAM_SIZE__)
sta sp
- lda #>(__SRAM_START__ + __SRAM_SIZE__)
- sta sp+1 ; Set argument stack ptr
+ stx sp+1 ; Set argument stack ptr
; Call the module constructors.
diff --git a/libsrc/pce/crt0.s b/libsrc/pce/crt0.s
index e92e9eca3..80b32c089 100644
--- a/libsrc/pce/crt0.s
+++ b/libsrc/pce/crt0.s
@@ -39,22 +39,21 @@
start:
- ; setup the CPU and System-IRQ
+ ; Set up the CPU and System-IRQ
; Initialize CPU
-
sei
nop
- csh ; set high speed CPU mode
+ csh ; Set high speed CPU mode
nop
cld
nop
- ; Setup stack and memory mapping
+ ; Set up stack and memory mapping
ldx #$FF ; Stack top ($21FF)
txs
- ; at startup all MPRs are set to 0, so init them
+ ; At startup all MPRs are set to 0, so init them
lda #$ff
tam #%00000001 ; 0000-1FFF = Hardware page
lda #$F8
@@ -98,11 +97,11 @@ start:
; Copy the .data segment to RAM
tii __DATA_LOAD__, __DATA_RUN__, __DATA_SIZE__
- ; setup the stack
+ ; Set up the stack
lda #<(__RAM_START__+__RAM_SIZE__)
+ ldx #>(__RAM_START__+__RAM_SIZE__)
sta sp
- lda #>(__RAM_START__+__RAM_SIZE__)
- sta sp + 1
+ stx sp + 1
; Call module constructors
jsr initlib
@@ -114,7 +113,7 @@ start:
jsr push0 ; argv
ldy #4 ; Argument size
- jsr _main ; call the users code
+ jsr _main ; Call the users code
; Call module destructors. This is also the _exit entry.
_exit:
--
2.39.5