From 5663203fe3891c9a2cf0bae8349bdd575f2ce7d5 Mon Sep 17 00:00:00 2001 From: beeanyew Date: Thu, 27 May 2021 06:20:29 +0200 Subject: [PATCH] Some more failed PiSCSI 1.3 autoboot ventures --- .../amiga/piscsi/device_driver_amiga/bootrom | Bin 1996 -> 2060 bytes .../piscsi/device_driver_amiga/bootrom.s | 26 ++++++++++++++---- platforms/amiga/piscsi/piscsi.c | 2 +- platforms/amiga/piscsi/piscsi.rom | Bin 16384 -> 16384 bytes 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/platforms/amiga/piscsi/device_driver_amiga/bootrom b/platforms/amiga/piscsi/device_driver_amiga/bootrom index 5058e9a19cd70fc5d6b1647ded0ff7ef65a82e00..a1470ccac773be0ae7057b4ac0018f4e6a6a08ad 100644 GIT binary patch delta 335 zcmX@Z-y^U=mf6uk`40mFgJJ^%gF=CVk_`hR1Eb%%|5hpvqBRU03>=QX{x4GXVBiAM z>wq+$<0}RsB`WBzY12Q&i=IDjP610epwz`#-h5o0OfVDKws zU|@a&XLn3KqYC#sqrrP#UYgisUU@nK%otrx3ElRs%HsG z&B;$p2}&)_FD*(2%Q6cAl`y*n2f0>c7MB!*O=gY*QcP~aF8O(2H7rgLzF%qu*g4Ei zAU%Hhu6ZRznW<1c4h0F KWEl`Je*yqfA4U=Y delta 271 zcmeAXIK#g|mRV9l`40mFgJJ^%gM#xfMjm}mzjgnl6yg;)CdV=Vw|4`|fdL1QWO@L^ zUl~>h9vlpQg$xYLZ-9IjsF(wg=>o(aKpZf64vV^ES{G1BT5)Q;OMY=kWkD)P zAtO+zWAh!B$xQXkZoxsW6`92)#b6Vd&43gWP%IU~XMyrv^7FttS)?HHeyJ5DAPvk> yAi^)-HLs*76RL-K2SkleetrR14TxlM%qdDuOsVwAPfSTo0SPlOe_~)@gD?O%vNGlX diff --git a/platforms/amiga/piscsi/device_driver_amiga/bootrom.s b/platforms/amiga/piscsi/device_driver_amiga/bootrom.s index 23b0aef..70f0af7 100644 --- a/platforms/amiga/piscsi/device_driver_amiga/bootrom.s +++ b/platforms/amiga/piscsi/device_driver_amiga/bootrom.s @@ -389,17 +389,33 @@ FSResource: dc.l $0 LoadFileSystems: movem.l d0-d7/a0-a6,-(sp) ; Push registers to stack move.l #30,PiSCSIDebugMe +ReloadResource: lea FileSysName(pc),a1 jsr OpenResource(a6) tst.l d0 bne FSRExists move.l #33,PiSCSIDebugMe ; FileSystem.resource isn't open, create it - lea FSRes(pc),a1 - move.l a1,-(a7) - jsr AddResource(a6) - move.l (a7)+,a0 - move.l a0,d0 + ; Code based on WinUAE filesys.asm + + moveq #32,d0 ; sizeof(FileSysResource) + move.l #$10001,d1 + jsr AllocMem(a6) + move.l d0,a2 + move.b #8,8(a2) ; NT_RESOURCE + lea FileSysName(pc),a0 + move.l a0,10(a2) ; node name + lea FileSysCreator(pc),a0 + move.l a0,14(a2) ; fsr_Creator + lea 18(a2),a0 + move.l a0,(a0) ; NewList() fsr_FileSysEntries + addq.l #4,(a0) + move.l a0,8(a0) + lea $150(a6),a0 ; ResourceList + move.l a2,a1 + jsr -$f6(a6) ; AddTail + move.l a2,a0 + bra.s ReloadResource FSRExists: move.l d0,PiSCSIAddr2 ; PiSCSIAddr2 is now FileSystem.resource diff --git a/platforms/amiga/piscsi/piscsi.c b/platforms/amiga/piscsi/piscsi.c index fd05bd9..c6251c7 100644 --- a/platforms/amiga/piscsi/piscsi.c +++ b/platforms/amiga/piscsi/piscsi.c @@ -790,7 +790,7 @@ skip_disk:; goto fs_found; } } - printf("[!!!PISCSI] Found no handler for file system %s!\n", dosID); + printf("[!!!PISCSI] Found no handler for file system %c%c%c/%d\n", dosID[0], dosID[1], dosID[2], dosID[3]); fs_found:; DEBUG("[FS-HANDLER] Next: %d Type: %.8X\n", BE(node->dn_Next), BE(node->dn_Type)); DEBUG("[FS-HANDLER] Task: %d Lock: %d\n", BE(node->dn_Task), BE(node->dn_Lock)); diff --git a/platforms/amiga/piscsi/piscsi.rom b/platforms/amiga/piscsi/piscsi.rom index 127f666f7a1cfe0c03351371e6b83d931738c0ab..738851218e13040ad5fd79ce0995bf41c0209278 100644 GIT binary patch delta 339 zcmZo@U~Fh$+#t*B=%Dfq_AxKtaidfsujHZ{2?@6$jB81`Y-e$6x;!sd_MQ z0qJ!>n$PhSgOHM!KBwQhe^LtZ3LFVrCYv$;x0eH&0R|jElIZ~ue_>!?DS?Qw6mT&3 z6*4d|zX9@Dpkf(7W)2V+0CC0S5*BsIzAm7WwBpowm;B<8%7RpoLPns_hRs`8CNtHu z1f}NWC#D3Y7U!21C4*&|g@8(!-GYN$D>92qioqr`#{nrOw_un2Jg^!TCkWp!wF2xM z<|dFHzkJuclA_F1sGbK9H9q@sI5tb delta 276 zcmZo@U~Fh$+#t&=DWUv_fq_A>fq_B6`4=OPKBwQhe^LtZ3LKN;nE%_m0p-Ae14uGG z0OBtU3@knnF%}OF2ERfE2Ie! IB=Aok0Cc!DoB#j- -- 2.39.2