source files for Mieyen port

This commit is contained in:
4am 2025-01-17 19:42:14 -05:00
parent d709cc1dcd
commit 2f0ce1fb73
5 changed files with 106 additions and 0 deletions

51
res/ports/mieyen/Makefile Normal file
View File

@ -0,0 +1,51 @@
# https://sourceforge.net/projects/acme-crossass/
ACME=acme
# https://github.com/mach-kernel/cadius
CADIUS=cadius
EXOMIZER=exomizer mem -lnone -P23 -f -q
BUILDDIR=build
DISKVOLUME=MIEYEN
LOADER=$(BUILDDIR)/LOADER.SYSTEM\#FF2000
EXE=$(BUILDDIR)/MIEYEN\#0643E4
COMPRESSED=src/OBJ.X
SOURCES=$(wildcard src/*.a) $(COMPRESSED)
RES=$(wildcard res/*) $(wildcard ../common/res/*)
BUILDDISK=$(BUILDDIR)/$(DISKVOLUME).po
.PHONY: clean mount all
$(BUILDDISK): $(EXE) $(LOADER) $(RES)
$(LOADER): $(SOURCES) | $(BUILDDIR)
$(ACME) src/loader.a
$(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$(LOADER)" -C
@touch "$@"
$(EXE): $(SOURCES) $(COMPRESSED) | $(BUILDDIR)
$(ACME) src/mieyen.a
$(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$(EXE)" -C
@touch "$@"
$(RES): $(BUILDDIR)
$(CADIUS) REPLACEFILE "$(BUILDDISK)" "/$(DISKVOLUME)/" "$@" -C
@touch "$@"
$(COMPRESSED):
$(EXOMIZER) src/OBJ@0x6000 -o "$@"
mount: $(BUILDDISK)
@open "$(BUILDDISK)"
clean:
rm -rf "$(BUILDDIR)"
$(BUILDDIR):
mkdir -p "$@"
$(CADIUS) CREATEVOLUME "$(BUILDDISK)" "$(DISKVOLUME)" 140KB -C
all: clean mount
.NOTPARALLEL:

BIN
res/ports/mieyen/src/OBJ Normal file

Binary file not shown.

BIN
res/ports/mieyen/src/OBJ.X Normal file

Binary file not shown.

View File

@ -0,0 +1,25 @@
!cpu 6502
*=$2000
!to "build/LOADER.SYSTEM#FF2000",plain
!src "../common/src/constants.a"
!src "../common/src/macros.a"
+READ_ENTIRE_FILE parm_boot_open, parm_boot_read
jmp (entry)
parm_boot_open
!byte 3
!word filename
!word $2100
!byte 0
parm_boot_read
!byte 4
!byte 1
entry !word $43E4
!word $FFFF
!word 0
filename
!text 6,"MIEYEN"

View File

@ -0,0 +1,30 @@
!cpu 6502
*=$43E4
!to "build/MIEYEN#0643E4",plain
!src "../common/src/constants.a"
!src "../common/src/macros.a"
jmp start
compressed_data
!bin "src/OBJ.X"
FORWARD_DECRUNCHING = 1
SHOW_PROGRESS_DURING_DECRUNCH = 1
kExoProgressWidth = 7 ; depends on total size, max 38
!src "../common/src/exodecrunch.a"
start
+INIT_MACHINE
!if * != $5FEE {
!serious "Adjust prelaunch to patch JSR at ", *, " to JMP"
}
jsr decrunch ; compressed data contains target address
jmp $6000
get_crunched_byte
lda compressed_data
inc get_crunched_byte+1
bne +
inc get_crunched_byte+2
+ rts