mirror of
https://github.com/david-schmidt/FocusDrive3.git
synced 2026-03-13 10:41:51 +00:00
82 lines
3.7 KiB
XML
82 lines
3.7 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project name="Focus3Driver" default="all" basedir="..">
|
|
<property name="builddir" value="${basedir}/build" />
|
|
<property file="${builddir}/Focus3driver.properties"/>
|
|
<property file="${builddir}/Focus3driver-default.properties"/>
|
|
<property name="projdir" value="${basedir}" />
|
|
<property name="acJarVersion" value="1.3.5.13-ac" />
|
|
<property name="acJarPath" value="${builddir}/lib/AppleCommander" />
|
|
<property name="acJar" value="AppleCommander-${acJarVersion}.jar" />
|
|
<property name="sysUtilDiskImage" value="Focus3SystemUtilities.dsk" />
|
|
<property name="basicDiskImage" value="Focus3BusinessBASIC.dsk" />
|
|
<property name="baseImagePath" value="${projdir}/build/dsk" />
|
|
<taskdef name="appleCommander" classname="com.webcodepro.applecommander.ui.AntTask" classpath="${acJarPath}/${acJar}"/>
|
|
<target name="all" description="Bulid everything." depends="wipe, prep, assemble, link, builddsk, clean">
|
|
</target>
|
|
<target name="wipe">
|
|
<!--
|
|
Clean up everything
|
|
-->
|
|
<delete dir="${projdir}/out" />
|
|
</target>
|
|
<target name="prep">
|
|
<echo message="Copying base images..."/>
|
|
<copy file="${baseImagePath}/${sysUtilDiskImage}" tofile="${projdir}/out/${sysUtilDiskImage}" />
|
|
<copy file="${baseImagePath}/${basicDiskImage}" tofile="${projdir}/out/${basicDiskImage}" />
|
|
</target>
|
|
<target name="assemble" description="Assemble driver source.">
|
|
<!--
|
|
Assemble the driver source
|
|
-->
|
|
<echo message="Assembling driver..."/>
|
|
<mkdir dir="${projdir}/out"/>
|
|
<exec dir="${projdir}/out" executable="${assemblerPath}/ca65" failonerror="true">
|
|
<arg line=" -l ${projdir}/out/focus3.lst ${projdir}/src/focus3.s -o ${projdir}/out/focus3.o" />
|
|
</exec>
|
|
</target>
|
|
<target name="link" description="Link object code to relocatable version.">
|
|
<!--
|
|
Link the driver object code
|
|
-->
|
|
<echo message="Linking driver..."/>
|
|
<exec dir="${projdir}/out" executable="${assemblerPath}/ld65" failonerror="true">
|
|
<arg line=" ${projdir}/out/focus3.o -o focus3.o65 -C ${builddir}/Apple3_o65.cfg" />
|
|
</exec>
|
|
</target>
|
|
<target name="builddsk">
|
|
<!--
|
|
Manipulate disk images
|
|
-->
|
|
<echo message="Extracting SOS.DRIVER..."/>
|
|
<appleCommander command="g" imagename="${projdir}/out/${sysUtilDiskImage}" filename="SOS.DRIVER" output="${projdir}/out/SOS.DRIVER#0c0000" />
|
|
<echo message="Deleting CFFA driver from SOS.DRIVER..."/>
|
|
<exec executable="${python27Path}python">
|
|
<arg value="${builddir}/lib/A3Driverutil/A3Driverutil.py"/>
|
|
<arg value="delete"/>
|
|
<arg value=".CFFA3000D1"/>
|
|
<arg value="${projdir}/out/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}/out/focus3.o65"/>
|
|
<arg value="${projdir}/out/SOS.DRIVER#0c0000"/>
|
|
</exec>
|
|
<echo message="Deleting SOS.DRIVER from disk images..."/>
|
|
<appleCommander command="d" imagename="${projdir}/out/${sysUtilDiskImage}" filename="SOS.DRIVER" failonerror="false"/>
|
|
<appleCommander command="d" imagename="${projdir}/out/${basicDiskImage}" filename="SOS.DRIVER" failonerror="false"/>
|
|
<echo message="Putting updated SOS.DRIVER back on disk images..."/>
|
|
<appleCommander command="p" input="${projdir}/out/SOS.DRIVER#0c0000" imagename="${projdir}/out/${sysUtilDiskImage}" filename="SOS.DRIVER" type="SOS" />
|
|
<appleCommander command="p" input="${projdir}/out/SOS.DRIVER#0c0000" imagename="${projdir}/out/${basicDiskImage}" filename="SOS.DRIVER" type="SOS" />
|
|
</target>
|
|
<target name="clean">
|
|
<!--
|
|
Clean up everything
|
|
<delete file="${projdir}/out/SOS.DRIVER#0c0000" />
|
|
<delete file="${projdir}/out/focus3.o" />
|
|
-->
|
|
</target>
|
|
</project>
|
|
|