2 ; 2001-07-02, Maciej 'YTM/Elysium' Witkowiak
3 ; 2015-08-24, Greg King
5 ; based on Atari version by Christian Groessler
7 ; dhandle_t __fastcall__ dio_open (unsigned char device);
8 ; unsigned char __fastcall__ dio_close (dhandle_t handle);
10 ; dio_open sets given device as current and initializes disk
11 ; dio_close does nothing special
13 .export _dio_open, _dio_close
14 .import __oserror, _OpenDisk
18 .include "jumptab.inc"
19 .include "geossym.inc"
25 .res 4 * sst_size ; this is hardcoded
33 lda driveType,x ; check if there's a device
38 adc #8 ; normalize devnum
41 jsr _OpenDisk ; take care for errors there
45 asl a ; make index from drive id
50 sta sectsizetab+sst_sectsize,x
52 sta sectsizetab+sst_flag,x ; set flag that drive is "open"
54 sta sectsizetab+sst_sectsize+1,x
56 sta sectsizetab+sst_driveno,x
83 sta __oserror ; success