|   FileCoreFileCore has been updated to provide access to larger discs and to avoid limitations of the earlier interfaces. FileCore_DiscOp64 (&4054C)On entry   R1 = flags:
               bits 0-3 - reason code (see FileCore_DiscOp)
               bits 4-7 - options (see FileCore_DiscOp)
               bits 8-31 - reserved, must be 0
   R2 = pointer to disc address buffer :
         +0 = drive and flags:
               bits 0-7 - drive number (only drives 0-7 supported)
               bits 8-31 - reserved, must be 0
         +4 = disc byte address (low 32 bits)
         +8 = disc byte address (high 32 bits)
   R3 = pointer to buffer to use
   R4 = length of buffer
   R5 = pointer to alternative disc record, or 0 if unused
   R6 = cache handle, if relevant to the reason code
   R8 = pointer to FileCore instance private wordOn exit   R1, R2 preserved
   R2 block updated to next disc byte address
   R3 = pointer to end of used buffer
   R4 = number of bytes not transferred This SWI is an extended form of FileCore_DiscOp which avoids limited 26bit interfaces. It is implemented internally within FileCore using the existing calls, thus the limitations are identical to those of the FileCore_DiscOp and FileCore_SectorOp calls. Future versions of the module may remove these limitations. FileCore_Features (&4054D)On entry   None On exit   R0 = feature flags :
         bit 0 - FileCore modules should use new error scheme
         bits 1-31 - reservedThis SWI is used to read the feature set of the FileCore module. If it returns an error, the feature flags should be assumed to be 0. At present FileCore does not support the extended error scheme and bit 0 will be clear. The scheme will be documented in a future release. |