Difference between revisions of "OSWORD &FB"

From BeebWiki
Jump to: navigation, search
(Rewrote transaction description.)
m (Added template.)
 
Line 35: Line 35:
  
 
==See also==
 
==See also==
* [[OSWORD &FA]]
 
* [[OSWORD &FC]]
 
* [[OSWORD &FD]]
 
* [[OSWORD &FE]]
 
* [[OSWORD &FF]]
 
 
* [http://mdfs.net/Software/Tube/Utils/ OSWORD &FB source code]
 
* [http://mdfs.net/Software/Tube/Utils/ OSWORD &FB source code]
 
* [http://mdfs.net/Docs/Comp/BBC/Oswords OSWORDs list at mdfs.net]
 
* [http://mdfs.net/Docs/Comp/BBC/Oswords OSWORDs list at mdfs.net]
 
+
{{TubeOSWORD}}
 
[[User:Jgharston|Jgharston]] 14:27, 26 May 2009 (UTC)
 
[[User:Jgharston|Jgharston]] 14:27, 26 May 2009 (UTC)
 
[[User:Jgharston|Jgharston]] ([[User talk:Jgharston|talk]]) 10:54, 17 December 2024 (CET)
 
[[User:Jgharston|Jgharston]] ([[User talk:Jgharston|talk]]) 10:54, 17 December 2024 (CET)

Latest revision as of 11:45, 17 December 2024

OSWORD &FB (251) Floppy disk access

This OSWORD call is installed by the 80x86 DOS BIOS.

Commands are sent from the 80x86 via Tube Register 2 within the OSWORD protocol, so cannot be called through the normal OSWORD mechanism. The transaction must be done manually by the client by sending through Tube Register 2:

   &08 : Start OSWORD transaction
   &FB : OSWORD call &FB
   &00 : TxLen=0
   xxx : Send a series of commands
   &00 : RxLen=0, terminate the OSWORD call

Commands

  • &00 : Finish
  • &01 : Master FDC command
  • &02 : BBC B/B+ command
  • &03 : Claim Tube and NMI
  • &04 : Release Tube and NMI
  • &nn,&mm : Write byte &mm to &FE00+nn

FDC commands

The FDC commands &01 and &02 are followed by a parameter block:

  • address b0-b7
  • address b8-b15
  • address b16-b23
  • address b24-b31
  • &00=Read from disk, <>&00-Write to disk
  • error mask
  • sector count
  • FDC command

The initial drive, track, sector must be written to the FDC hardware beforehand using commands >&04 to write to &FE00+FDC_address.

See also

Tube OSWORD calls

Jgharston 14:27, 26 May 2009 (UTC) Jgharston (talk) 10:54, 17 December 2024 (CET)