diff --git a/default.cfg b/default.cfg index 2505609..b8f46a2 100644 --- a/default.cfg +++ b/default.cfg @@ -40,6 +40,8 @@ platform amiga # Use setvar piscsi0 through piscsi6 to add up to seven mapped drives to the interface. #setvar piscsi0 PI0.hdf #setvar piscsi1 PI1.hdf +# A special disk that includes PiStorm drivers and utilities, comment out if not needed +setvar piscsi6 platforms/amiga/pistorm.hdf # Uncomment this line to enable the (currently non-working) Pi-Net interface. #setvar pi-net diff --git a/platforms/amiga/Disk.info b/platforms/amiga/Disk.info new file mode 100644 index 0000000..6821ab1 Binary files /dev/null and b/platforms/amiga/Disk.info differ diff --git a/platforms/amiga/build_hdf.sh b/platforms/amiga/build_hdf.sh new file mode 100755 index 0000000..2460835 --- /dev/null +++ b/platforms/amiga/build_hdf.sh @@ -0,0 +1,24 @@ +# Requires xdftool from amitools (https://github.com/cnvogelg/amitools/) +xdftool part.hdf create size=2Mi + format PiStorm ffs +xdftool part.hdf boot install +xdftool part.hdf write Disk.info +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/PiSimple +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/PiStorm +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/PiStorm.info +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/libs13 +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/libs20 +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/libs13.info +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/libs20.info +xdftool part.hdf write pistorm-dev/pistorm_dev_amiga/CopyMems +xdftool part.hdf write ../../a314/software-amiga a314 +xdftool part.hdf makedir net +xdftool part.hdf write net/net_driver_amiga/pi-net.device net/pi-net.device +xdftool part.hdf makedir scsi +xdftool part.hdf write piscsi/device_driver_amiga/pi-scsi.device scsi/pi-scsi.device +xdftool part.hdf makedir rtg +xdftool part.hdf write rtg/rtg_driver_amiga/pigfx020.card rtg/pigfx020.card +xdftool part.hdf write rtg/rtg_driver_amiga/pigfx030.card rtg/pigfx030.card +rm pistorm.hdf +rdbtool pistorm.hdf create size=2.5Mi + init +rdbtool pistorm.hdf addimg part.hdf name=DH99 +rm part.hdf diff --git a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/PiStorm b/platforms/amiga/pistorm-dev/pistorm_dev_amiga/PiStorm index 9383605..d7c6620 100755 Binary files a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/PiStorm and b/platforms/amiga/pistorm-dev/pistorm_dev_amiga/PiStorm differ diff --git a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/create_adf.sh b/platforms/amiga/pistorm-dev/pistorm_dev_amiga/create_adf.sh deleted file mode 100755 index 77bfcf8..0000000 --- a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/create_adf.sh +++ /dev/null @@ -1,11 +0,0 @@ -# Requires xdftool from amitools (https://github.com/cnvogelg/amitools/) -xdftool pistorm.adf create -xdftool pistorm.adf format "PiStorm" -xdftool pistorm.adf write PiSimple -xdftool pistorm.adf write PiStorm -xdftool pistorm.adf write PiStorm.info -xdftool pistorm.adf write libs13 -xdftool pistorm.adf write libs20 -xdftool pistorm.adf write libs13.info -xdftool pistorm.adf write libs20.info -xdftool pistorm.adf write CopyMems diff --git a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/create_lha.sh b/platforms/amiga/pistorm-dev/pistorm_dev_amiga/create_lha.sh deleted file mode 100755 index 384bb6c..0000000 --- a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/create_lha.sh +++ /dev/null @@ -1,4 +0,0 @@ -# Requires patool (in Debian / Ubuntu repos) and lha from https://github.com/jca02266/lha -tar -cvf pistorm.tar --transform 's,^,PiStorm/,' PiSimple PiStorm PiStorm.info libs13 libs13.info libs20 libs20.info CopyMems -patool repack pistorm.tar pistorm.lha -rm pistorm.tar diff --git a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/gui_interact.c b/platforms/amiga/pistorm-dev/pistorm_dev_amiga/gui_interact.c index 3a6f1f1..6ade857 100644 --- a/platforms/amiga/pistorm-dev/pistorm_dev_amiga/gui_interact.c +++ b/platforms/amiga/pistorm-dev/pistorm_dev_amiga/gui_interact.c @@ -19,7 +19,7 @@ extern unsigned int pistorm_base_addr; struct ReqToolsBase *ReqToolsBase; -#define VERSION "v0.3.2" +#define VERSION "v0.3.3" #define button1w 54 #define button1h 11 @@ -33,6 +33,9 @@ struct ReqToolsBase *ReqToolsBase; #define tbox1w 130 #define tbox1h 10 +#define tbox2w 132 +#define tbox2h 12 + #define statusbarw 507 #define statusbarh 10 @@ -80,11 +83,11 @@ SHORT SharedBordersPairs8[] = SHORT SharedBordersPairs9[] = { - 0, 0, 0, tbox1h - 1, 1, tbox1h - 2, 1, 0, tbox1w - 2, 0 + 0, 0, 0, tbox2h - 1, 1, tbox2h - 2, 1, 0, tbox2w - 2, 0 }; SHORT SharedBordersPairs10[] = { - 1, tbox1h - 1, tbox1w - 2, tbox1h - 1, tbox1w - 2, 1, tbox1w - 1, 0, tbox1w - 1, tbox1h - 1 + 1, tbox2h - 1, tbox2w - 2, tbox2h - 1, tbox2w - 2, 1, tbox2w - 1, 0, tbox2w - 1, tbox2h - 1 }; @@ -124,7 +127,7 @@ struct IntuiText KickstartCommit_text = struct Gadget KickstartCommit = { - NULL, 406, 49, button1w, button1h, + NULL, 401, 49, button1w, button1h, GADGHIMAGE, RELVERIFY, BOOLGADGET, @@ -179,7 +182,7 @@ UBYTE DestinationValue_buf[255]; struct IntuiText Destination_text[] = { - 1, 0, JAM2, -97, 1, NULL, "Destination:", &Destination_text[1], + 1, 0, JAM2, -98, 1, NULL, "Destination:", &Destination_text[1], 1, 0, JAM2, 1, 1, NULL, DestinationValue_buf, NULL, }; @@ -187,7 +190,7 @@ struct IntuiText Destination_text[] = struct Gadget GetDestination = { - &ShutdownButton, 106, 105, tbox1w, tbox1h, + &ShutdownButton, 107, 105, tbox2w, tbox2h, GADGHIMAGE, RELVERIFY, BOOLGADGET, @@ -241,7 +244,7 @@ struct IntuiText RetrieveButton_text = struct Gadget RetrieveButton = { - &StatusBar, 244, 105, button2w, button2h, + &StatusBar, 244, 99, button2w, button2h, GADGHIMAGE, RELVERIFY, BOOLGADGET, @@ -344,7 +347,7 @@ struct IntuiText RTGStatus_text = struct Gadget RTGStatus = { - &ConfigFile, 14, 15, tbox1w, tbox1h, + &ConfigFile, 10, 15, tbox1w, tbox1h, GADGHIMAGE, 0, BOOLGADGET, @@ -363,7 +366,7 @@ struct IntuiText RTG_text = struct Gadget RTGButton = { - &RTGStatus, 150, 14, button3w, button3h, + &RTGStatus, 144, 14, button3w, button3h, GADGHIMAGE, RELVERIFY, BOOLGADGET, @@ -606,6 +609,7 @@ int main() { break; } + Disable(); unsigned short ret = pi_handle_config(PICFG_LOAD, ConfigFileValue_buf); if (ret == PI_RES_FILENOTFOUND) { @@ -726,6 +730,7 @@ int main() { break; } + Disable(); unsigned short ret = pi_remap_kickrom(KickstartFileValue_buf); if (ret == PI_RES_FILENOTFOUND) { diff --git a/platforms/amiga/pistorm.hdf b/platforms/amiga/pistorm.hdf new file mode 100644 index 0000000..aae282e Binary files /dev/null and b/platforms/amiga/pistorm.hdf differ