Skip to content

Start SOS virtual serial printer #132

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion build/ADTProBuild-default.properties
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,6 @@
# support files for local builds.
#
# assemblerPath defines the place where the ca65 executable lives.
assemblerPath=c:/dev/cc65/cc65-master/bin
assemblerPath=c:/dev/cc65/cc65-master/bin
# pythonPath defines the place where the python 2.7 interpreter executables live.
python27Path=c:/Python27/
92 changes: 75 additions & 17 deletions build/build.xml
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,18 @@ all
common
prodos-bootstrap
prodos-vsdrive
vdrive-image-prep
drivers-image-prep
prodos-vedrive
vdrive-image-prep
drivers-image-prep
sos
sos-serial
sos-image-prep
common
sos-ethernet
sos-image-prep
common
sos-vsdrive
vdrive-image-prep
sos-drivers
drivers-image-prep
sos-bootstrap
server
zip
Expand Down Expand Up @@ -299,15 +299,15 @@ all
<delete file="${projdir}/src/client/STARTUP.SYSTEM" />
<delete file="${projdir}/src/client/ADTPRO" />
</target>
<target name="vdrive-image-prep" description="Start Empty VDrive Disk Image">
<target name="drivers-image-prep" description="Start Empty Drivers Disk Image">
<!--
Start Empty VDrive Disk Image
-->
<echo message="Prepping VDrive disk image..."/>
<copy file="${builddir}/VDriveBase.dsk" tofile="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" />
<appleCommander command="n" imagename="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" volname="${vdriveVolName}"/>
</target>
<target name="prodos-vsdrive" depends="vdrive-image-prep" description="Builds the Virtual Serial Drive Driver (ProDOS)">
<target name="prodos-vsdrive" depends="drivers-image-prep" description="Builds the Virtual Serial Drive Driver (ProDOS)">
<appleCommander command="pro800" imagename="${builddir}/${distName}/disks/Virtual.po" volname="${vdriveVolName1}"/>
<appleCommander command="pro800" imagename="${builddir}/${distName}/disks/Virtual2.po" volname="${vdriveVolName2}"/>
<echo message="Assembling ProDOS virtual serial drive source..."/>
Expand Down Expand Up @@ -343,7 +343,7 @@ all
<delete file="${projdir}/src/client/VSDRIVE_HIGH" />
</target>

<target name="prodos-vedrive" depends="vdrive-image-prep" description="Builds the Virtual Ethernet Drive Driver (ProDOS)">
<target name="prodos-vedrive" depends="drivers-image-prep" description="Builds the Virtual Ethernet Drive Driver (ProDOS)">
<appleCommander command="pro800" imagename="${builddir}/${distName}/disks/Virtual.po" volname="${vdriveVolName1}"/>
<appleCommander command="pro800" imagename="${builddir}/${distName}/disks/Virtual2.po" volname="${vdriveVolName2}"/>
<echo message="Assembling ProDOS virtual ethernet drive source..."/>
Expand Down Expand Up @@ -371,7 +371,7 @@ all
<appleCommander command="p" input="${builddir}/lib/cc65/loader.system" imagename="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" filename="VEDRIVE.SYSTEM" type="SYS" address="8192"/>
</target>

<target name="prodos-vedrive2" depends="vdrive-image-prep" description="Builds the Uthernet II Virtual Ethernet Drive Driver (ProDOS)">
<target name="prodos-vedrive2" depends="drivers-image-prep" description="Builds the Uthernet II Virtual Ethernet Drive Driver (ProDOS)">
<appleCommander command="pro800" imagename="${builddir}/${distName}/disks/Virtual.po" volname="${vdriveVolName1}"/>
<appleCommander command="pro800" imagename="${builddir}/${distName}/disks/Virtual2.po" volname="${vdriveVolName2}"/>
<echo message="Assembling ProDOS virtual Uthernet II drive source..."/>
Expand Down Expand Up @@ -441,7 +441,7 @@ all
SOS section
============================================================================================
-->
<target name="sos" depends="prepare, sos-serial, sos-ethernet, sos-vsdrive, sos-bootstrap" description="Orchestrate Overall Client Build for SOS" />
<target name="sos" depends="prepare, sos-serial, sos-ethernet, sos-drivers, sos-bootstrap" description="Orchestrate Overall Client Build for SOS" />
<target name="sos-serial" depends="sos-image-prep, common" description="Build the ADTPro Serial Client (SOS)">
<echo message="Assembling sos-serial client..."/>
<!--
Expand Down Expand Up @@ -520,28 +520,86 @@ all
<!-- Note: keep this binary GRUB if you want to write it out to sector zero of a disk image for SOS bootstrap testing. -->
<delete file="${projdir}/src/client/GRUB" />
</target>
<target name="sos-vsdrive" depends="vdrive-image-prep" description="Copy Virtual Serial Drive Driver (SOS)">
<target name="sos-drivers" depends="drivers-image-prep" description="Copy Virtual Serial Drivers (SOS)">
<!--
Assemble the driver source
-->
<echo message="Assembling sos-driver..."/>
<echo message="Assembling SOS Virtual Serial Drive driver..."/>
<exec dir="${projdir}/src/client/sos/serial/drive" executable="${assemblerPath}/ca65" failonerror="true">
<arg line=" -l vsdrivesos.lst vsdrive.asm -o vsdrivesos.o" />
</exec>
<echo message="Assembling SOS Virtual Serial Printer driver..."/>
<exec dir="${projdir}/src/client/sos/serial/printer" executable="${assemblerPath}/ca65" failonerror="true">
<arg line=" -l vsprintersos.lst vsprinter.asm -o vsprintersos.o" />
</exec>
<!--
Link the driver object code
-->
<echo message="Linking sos-driver..."/>
<echo message="Linking SOS Virtual Serial Drive driver..."/>
<exec dir="${projdir}/src/client/sos/serial/drive" executable="${assemblerPath}/ld65" failonerror="true">
<arg line=" vsdrivesos.o -o vsdrivesos.o65 -C ${builddir}/Apple3_o65.cfg" />
</exec>
<arg line="vsdrivesos.o -o vsdrivesos.o65 -C ${builddir}/Apple3_o65.cfg" />
</exec>
<exec executable="${python27Path}/python">
<arg value="${builddir}/lib/A3Driverutil/A3Driverutil.py"/>
<arg value="bin"/>
<arg value="${projdir}/src/client/sos/serial/drive/vsdrivesos.o65"/>
<arg value="${builddir}/VSDRIVE.A3DRVR"/>
</exec>
<echo message="Linking SOS Virtual Serial Printer driver..."/>
<exec dir="${projdir}/src/client/sos/serial/printer" executable="${assemblerPath}/ld65" failonerror="true">
<arg line="vsprintersos.o -o vsprintersos.o65 -C ${builddir}/Apple3_o65.cfg" />
</exec>
<exec executable="${python27Path}/python">
<arg value="${builddir}/lib/A3Driverutil/A3Driverutil.py"/>
<arg value="bin"/>
<arg value="${projdir}/src/client/sos/serial/printer/vsprintersos.o65"/>
<arg value="${builddir}/VSPRINTER.A3DRVR"/>
</exec>
<echo message="Extracting SOS.DRIVER..."/>
<appleCommander command="g" imagename="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" filename="SOS.DRIVER" output="${builddir}/SOS.DRIVER#0c0000" />
<echo message="Deleting drivers from SOS.DRIVER..."/>
<exec executable="${python27Path}/python">
<arg value="${builddir}/lib/A3Driverutil/A3Driverutil.py"/>
<arg value="delete"/>
<arg value=".VSDRIVE"/>
<arg value="${builddir}/SOS.DRIVER#0c0000" />
</exec>
<exec executable="${python27Path}/python">
<arg value="${builddir}/lib/A3Driverutil/A3Driverutil.py"/>
<arg value="delete"/>
<arg value=".VSPRINTER"/>
<arg value="${builddir}/SOS.DRIVER#0c0000" />
</exec>
<echo message="Adding built driver to SOS.DRIVER..."/>
<exec executable="${python27Path}/python">
<arg value="${builddir}/lib/A3Driverutil/A3Driverutil.py"/>
<arg value="add"/>
<arg value="${projdir}/src/client/sos/serial/drive/vsdrivesos.o65"/>
<arg value="${builddir}/SOS.DRIVER#0c0000" />
</exec>
<exec executable="${python27Path}/python">
<arg value="${builddir}/lib/A3Driverutil/A3Driverutil.py"/>
<arg value="add"/>
<arg value="${projdir}/src/client/sos/serial/printer/vsprintersos.o65"/>
<arg value="${builddir}/SOS.DRIVER#0c0000" />
</exec>
<echo message="Deleting SOS.DRIVER from driver disk image..."/>
<appleCommander command="d" imagename="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" filename="SOS.DRIVER" failonerror="false"/>
<echo message="Putting updated SOS.DRIVER back on driver disk image..."/>
<appleCommander command="p" input="${builddir}/SOS.DRIVER#0c0000" imagename="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" filename="SOS.DRIVER" type="SOS" />
<delete file="${builddir}/SOS.DRIVER#0c0000" />
<!--
Copy out the Apple /// virtual serial drive driver
Copy out the Apple /// Virtual Serial Drive river
-->
<echo message="Copying sos-driver components..." />
<appleCommander command="g" imagename="${a3sysutils-vs}" filename="VSDRIVE.A3DRVR" output="${builddir}/VSDRIVE.A3DRVR" />
<echo message="Copying Virtual Serial Drive components..." />
<appleCommander command="p" input="${builddir}/VSDRIVE.A3DRVR" imagename="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" filename="VSDRIVE.A3DRVR" type="pcd" />
<delete file="${builddir}/VSDRIVE.A3DRVR" />
<!--
Copy out the Apple /// Virtual Serial Printer driver
-->
<echo message="Copying Virtual Serial Printer components..." />
<appleCommander command="p" input="${builddir}/VSPRINTER.A3DRVR" imagename="${builddir}/${distName}/disks/${vdriveDiskName}.DSK" filename="VSPRINTER.A3DRV" type="pcd" />
<delete file="${builddir}/VSPRINTER.A3DRVR" />
</target>
<target name="sos-image-prep" description="Start Empty SOS Disk Image" >
<echo message="Prepping SOS disk images..." />
Expand Down
Loading