Commit 4283a9df authored by John Ballance's avatar John Ballance
Browse files

Added method to find SCSI ID and partition offset from icon number

Detail:
   SCSIFS_Partitions reason code 1 already provides the icon number
   for a given SCSI ID and partition offset. Reason code 2 provides
   the inverse function to this.
Admin:
  tested on iMx6


Version 1.35. Tagged as 'SCSIFS-1_35'
parent 17022331
......@@ -16,9 +16,18 @@ SWI SCSIFS_Partitions &40995
Reason code: 1:Enquire SCSIFS disc number
R0 = 1
R1 = Drive number (0..7)
R2 = Sector offset to base of image
returns
R2 = SCSIFS disc icon (0..7), or -1 if none
Reason code: 2:Enquire Drive number and offset
R0 = 1
R1 = SCSIFS disc number (0..7)
returns
R1 = Drive number (0..7)
R2 = Sector offset to base of image
New SCSIFS Service Call
......
......@@ -11,13 +11,13 @@
GBLS Module_HelpVersion
GBLS Module_ComponentName
GBLS Module_ComponentPath
Module_MajorVersion SETS "1.34"
Module_Version SETA 134
Module_MajorVersion SETS "1.35"
Module_Version SETA 135
Module_MinorVersion SETS ""
Module_Date SETS "16 Jul 2018"
Module_ApplicationDate SETS "16-Jul-18"
Module_Date SETS "20 Jul 2018"
Module_ApplicationDate SETS "20-Jul-18"
Module_ComponentName SETS "SCSIFS"
Module_ComponentPath SETS "castle/RiscOS/Sources/FileSys/SCSIFS/SCSIFS"
Module_FullVersion SETS "1.34"
Module_HelpVersion SETS "1.34 (16 Jul 2018)"
Module_FullVersion SETS "1.35"
Module_HelpVersion SETS "1.35 (20 Jul 2018)"
END
/* (1.34)
/* (1.35)
*
* This file is automatically maintained by srccommit, do not edit manually.
* Last processed by srccommit version: 1.1.
*
*/
#define Module_MajorVersion_CMHG 1.34
#define Module_MajorVersion_CMHG 1.35
#define Module_MinorVersion_CMHG
#define Module_Date_CMHG 16 Jul 2018
#define Module_Date_CMHG 20 Jul 2018
#define Module_MajorVersion "1.34"
#define Module_Version 134
#define Module_MajorVersion "1.35"
#define Module_Version 135
#define Module_MinorVersion ""
#define Module_Date "16 Jul 2018"
#define Module_Date "20 Jul 2018"
#define Module_ApplicationDate "16-Jul-18"
#define Module_ApplicationDate "20-Jul-18"
#define Module_ComponentName "SCSIFS"
#define Module_ComponentPath "castle/RiscOS/Sources/FileSys/SCSIFS/SCSIFS"
#define Module_FullVersion "1.34"
#define Module_HelpVersion "1.34 (16 Jul 2018)"
#define Module_LibraryVersionInfo "1:34"
#define Module_FullVersion "1.35"
#define Module_HelpVersion "1.35 (20 Jul 2018)"
#define Module_LibraryVersionInfo "1:35"
......@@ -469,8 +469,9 @@ DoSWIPartitions ROUT
STR R2, [LR, #:INDEX:PartitionBaseAdd-:INDEX:SCSIFSWorkBase] ; remember
Pull "R1,R2,PC"
1
TEQ R0, #1 ; report icon used
Pull "R1,R2,PC",NE
TEQ R0, #1 ; report icon used
BNE %FT6 ; report ID and offset for icon
Push "R3,R4,R5"
MOV R2, #MaxDriveNo-1
LDR R5, [SP, #4*4] ; retrieve R2 off stack
......@@ -490,6 +491,21 @@ DoSWIPartitions ROUT
Pull "R3,R4,R5"
STR R2,[R13, #4] ; update R2 return value
Pull "R1,R2,PC"
6
TEQ R0, #2 ; report id & offset for icon
Pull "R1,R2,PC",NE
Push "R3,R4,R5"
DrvRecPtr R4, R1
ADD LR, SB, R1, LSL #2 ; word offset
LDRB R1, [R4, #:INDEX:DevNo]
LDR R2, [LR, #:INDEX:PartitionBaseAdd-:INDEX:SCSIFSWorkBase] ;
Pull "R3,R4,R5"
ADD sp, sp, #4*2 ; forget stored r1 and r2
Pull "PC"
]
; >>>>>>>>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment