mirror of
https://github.com/zeldaret/mm.git
synced 2024-11-23 12:59:44 +00:00
a04f1b8e05
* Add addresses for makerom and boot segments * Mark entrypoint as the entry of the elf * Add extra labels to macro.inc * Use dlabel, jlabel and endlabel in disassembly * Make jlabel global * git subrepo pull tools/asm-processor subrepo: subdir: "tools/asm-processor" merged: "92b9ec72f" upstream: origin: "git@github.com:simonlindholm/asm-processor.git" branch: "main" commit: "92b9ec72f" git-subrepo: version: "0.4.3" origin: "https://github.com/ingydotnet/git-subrepo.git" commit: "2f68596" * Use `dlabel`s for non-functions in .text * Add linker asserts * Move framebuffer_lo to before the makerom segment to avoid `dot moved backwards` warnings * fix * Improve assert message * fix * Third fix * Fix four * Move undefined_syms to linker_script folder * Make second linker script file to avoid abusing undefined_syms * Update Makefile Co-authored-by: Derek Hensley <hensley.derek58@gmail.com> * Rename to extra.ld * Use entrypoint symbol on ROM header --------- Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
93 lines
1.9 KiB
GAS
93 lines
1.9 KiB
GAS
.macro glabel label
|
|
.global \label
|
|
.ent \label
|
|
.type \label, @function
|
|
\label:
|
|
.endm
|
|
|
|
.macro endlabel label
|
|
.end \label
|
|
.size \label, . - \label
|
|
.endm
|
|
|
|
.macro dlabel label
|
|
.global \label
|
|
\label:
|
|
.endm
|
|
|
|
.macro jlabel label
|
|
.global \label
|
|
\label:
|
|
.endm
|
|
|
|
# COP0 register aliases
|
|
|
|
.set Index, $0
|
|
.set Random, $1
|
|
.set EntryLo0, $2
|
|
.set EntryLo1, $3
|
|
.set Context, $4
|
|
.set PageMask, $5
|
|
.set Wired, $6
|
|
.set Reserved07, $7
|
|
.set BadVaddr, $8
|
|
.set Count, $9
|
|
.set EntryHi, $10
|
|
.set Compare, $11
|
|
.set Status, $12
|
|
.set Cause, $13
|
|
.set EPC, $14
|
|
.set PRevID, $15
|
|
.set Config, $16
|
|
.set LLAddr, $17
|
|
.set WatchLo, $18
|
|
.set WatchHi, $19
|
|
.set XContext, $20
|
|
.set Reserved21, $21
|
|
.set Reserved22, $22
|
|
.set Reserved23, $23
|
|
.set Reserved24, $24
|
|
.set Reserved25, $25
|
|
.set PErr, $26
|
|
.set CacheErr, $27
|
|
.set TagLo, $28
|
|
.set TagHi, $29
|
|
.set ErrorEPC, $30
|
|
.set Reserved31, $31
|
|
|
|
|
|
# Float register aliases (o32 ABI, odd ones are rarely used)
|
|
|
|
.set $fv0, $f0
|
|
.set $fv0f, $f1
|
|
.set $fv1, $f2
|
|
.set $fv1f, $f3
|
|
.set $ft0, $f4
|
|
.set $ft0f, $f5
|
|
.set $ft1, $f6
|
|
.set $ft1f, $f7
|
|
.set $ft2, $f8
|
|
.set $ft2f, $f9
|
|
.set $ft3, $f10
|
|
.set $ft3f, $f11
|
|
.set $fa0, $f12
|
|
.set $fa0f, $f13
|
|
.set $fa1, $f14
|
|
.set $fa1f, $f15
|
|
.set $ft4, $f16
|
|
.set $ft4f, $f17
|
|
.set $ft5, $f18
|
|
.set $ft5f, $f19
|
|
.set $fs0, $f20
|
|
.set $fs0f, $f21
|
|
.set $fs1, $f22
|
|
.set $fs1f, $f23
|
|
.set $fs2, $f24
|
|
.set $fs2f, $f25
|
|
.set $fs3, $f26
|
|
.set $fs3f, $f27
|
|
.set $fs4, $f28
|
|
.set $fs4f, $f29
|
|
.set $fs5, $f30
|
|
.set $fs5f, $f31
|