Build disk for DeskTop itself

This commit is contained in:
Joshua Bell 2018-09-03 17:31:25 -07:00
parent 3a7a8a4b68
commit a05d4631df
5 changed files with 49 additions and 2 deletions

View File

@ -16,6 +16,8 @@ script:
before_deploy:
- git clone https://github.com/mach-kernel/cadius /tmp/cadius &&
make -C /tmp/cadius
- cd $TRAVIS_BUILD_DIR/desktop/ &&
CADIUS="/tmp/cadius/bin/release/cadius" res/package.sh
- cd $TRAVIS_BUILD_DIR/desk.acc/ &&
CADIUS="/tmp/cadius/bin/release/cadius" res/package.sh
@ -24,8 +26,9 @@ deploy:
api_key:
secure: GKESS8qxyVM+0LHVniDMIKLi3ACVXQnacUvzEb/Qn+1PEw6aJ43mv4CQ8E8WyDXSi6i0FXgf72ky+bqa5u/ziYLAwgbtyu3MibNYl2Ryx8B/jdUCQsUPPlf75uBRgQNPt8gj9oBfRFh5omhZdNRaX3VHCYqi1ZrbAO3e2nunhfwddwcMLjl8wnzaM1jdm46lfdvt++GeihqCycdKVOpc6GZQqwwVtrHt9315JCzPJ9BXALxaQL0QSCpJ5uQwVhTS0Sh/k+VqxZ/nUyJ5sqgOulBRHwE0bgqKPV6zrnqftCr1PNwRXkOJfY3eM7ZbWr/vH8TaKU/21fSOxr3NmK/mHqiDun5Sm4duIRl+fm9QAxH93uyxsqPeAmxxSfNnvq6G0k3zFXPiRVgy1ceSIvYFZyCjKQEg0FF+vup0NzP85k8TpX3G4CO/WTOwVvnXruomMO5XpR3bnF1TIffDkU4DGtSpCO7FXH/Kq/CVQw3k155DhXE3IsHCId3bxlFnP0YHk/MS6Unzmcc4DDQS8pIgQII7woMv3g8gYiRQvp4gHbNvDbVi0kyAlJYbQ9lvOWjoFYs+sfxKG6J7AgO4CJ0c10/GwitvzGw9CUeR2O2sgX3i4DUbQEDCKgOO8rj+DqNH70ZtwJZmGG1TZfv1Og+hdoz9rLaFXGw1iFJ5/OXsLK8=
file:
- $TRAVIS_BUILD_DIR/desktop/out/DeskTop.po
- $TRAVIS_BUILD_DIR/desk.acc/out/DeskAccessories.po
- $TRAVIS_BUILD_DIR/desk.acc/res/README.txt
- $TRAVIS_BUILD_DIR/desk.acc/res/README_DAS.txt
skip_cleanup: true
on:
repo: inexorabletash/a2d

View File

@ -10,7 +10,7 @@ HEADERS = $(wildcard ../*.inc) $(wildcard ../inc/*.inc) $(wildcard *.inc)
SEGMENTS = loader mgtk desktop invoker \
ovl1 ovl1a ovl1b ovl1c ovl2 ovl34567
TARGETS = $(patsubst %,$(OUTDIR)/%.built,$(SEGMENTS)) out/sys.SYS
TARGETS = $(OUTDIR)/DESKTOP2.built $(OUTDIR)/sys.SYS
.PHONY: clean all
all: $(OUTDIR) $(TARGETS)
@ -42,6 +42,10 @@ $(OUTDIR)/%.o: %.s $(HEADERS) $(OUTDIR)/desktop_res.inc
$(OUTDIR)/%.built: $(OUTDIR)/%.o asm.cfg
$(CC65)/ld65 $(CCFLAGS) -o '$@' $<
# DeskTop combined
$(OUTDIR)/DESKTOP2.built: $(patsubst %,$(OUTDIR)/%.built,$(SEGMENTS))
cat $(patsubst %,$(OUTDIR)/%.built,$(SEGMENTS)) > $@
# System Files .SYS
$(OUTDIR)/%.SYS: $(OUTDIR)/%.o
$(CC65)/ld65 $(CCFLAGS) -o '$@' $<

View File

@ -40,6 +40,7 @@ echo "Verifying diffs:"
for t in $TARGETS; do
verify "DESKTOP2_$t" "$t.built"
done;
verify "DESKTOP2.\$F1" "DESKTOP2.built"
verify "DESKTOP.SYSTEM.SYS" "sys.SYS"
# Compute stats

39
desktop/res/package.sh Executable file
View File

@ -0,0 +1,39 @@
#!/bin/bash
# Use Cadius to create a disk image for distribution
# https://github.com/mach-kernel/cadius
set -e
CADIUS="${CADIUS:-$HOME/dev/cadius/bin/release/cadius}"
PACKDIR="out/package"
FINFO="$PACKDIR/_FileInformation.txt"
IMGFILE="out/DeskTop.po"
VOLNAME="A2.DESKTOP"
mkdir -p "$PACKDIR"
# Prepare _FileInformation.txt file with extra ProDOS file entry data
# and copy renamed files into package directory.
cat > "$FINFO" <<EOF
DESKTOP.SYSTEM=Type(FF),AuxType(0),VersionCreate(00),MinVersion(B9),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)
DESKTOP2=Type(F1),AuxType(0),VersionCreate(00),MinVersion(B9),Access(E3),FolderInfo1(000000000000000000000000000000000000),FolderInfo2(000000000000000000000000000000000000)
EOF
cp "out/sys.SYS" "$PACKDIR/DESKTOP.SYSTEM"
cp "out/DESKTOP2.built" "$PACKDIR/DESKTOP2"
# Create a new disk image.
$CADIUS CREATEVOLUME $IMGFILE $VOLNAME 143KB
# Add the files into the disk image.
for file in DESKTOP.SYSTEM DESKTOP2; do
$CADIUS ADDFILE $IMGFILE "/$VOLNAME" $PACKDIR/$file
done
# Add an empty folder for desk accessories (which are on a separate disk).
$CADIUS CREATEFOLDER $IMGFILE "/$VOLNAME/DESK.ACC"