home *** CD-ROM | disk | FTP | other *** search
- *********************************
- ** BOOTY IS PROGRAMMED BY **
- ** WINDWALKER OF CRYPTOBURNERS **
- ** 20/9 - 1988 **
- *********************************
-
- exec= 4
- addport= -354
- remport= -360
- findtask= -294
- opendevice= -444
- closedevice= -450
- doio= -456
-
- ;MORE ABOUT THESE VALUES IN ROM * KERNEL MANUAL
- cmd_read= 2
- cmd_write= 3
- cmd_update= 4
- cmd_clear= 5
- td_motor= 9
- td_seek= 10
- td_format= 11
- td_remove= 12
- td_changenum= 13
- td_changestate= 14
- td_protstatus= 15
- ;------------------------------
-
- move.l exec,a6
- move.l #0,a1
- jsr findtask(a6)
- move.l d0,diskrep+$10
-
- lea diskrep,a1
- jsr addport(a6)
-
- lea diskio,a1
- move.l #0,d0 ;drive number (DFn:)
- clr.l d1
- lea tname,a0 ;"trackdisk.device"
- jsr opendevice(a6) ;open trackdisk device
- tst.l d0 ;test D0
- bne error ;if errors occured
-
- lea diskio,a1
- move.l #diskrep,14(a1) ;port pointer
- move.w #cmd_write,28(a1);WRITE sectors
- move.l #sector,40(a1) ;SECTOR = buffer
- move.l Len,d0
- mulu #200,d0
- move.l d0,36(a1) ;length = 2 sectors
- move.l Start,d0
- mulu #200,d0
- move.l d0,44(a1) ;offset = 0 sectors
- jsr doio(a6)
-
- move.w #cmd_update,28(a1) ;write BACK track-buffer
- jsr doio(a6) ;
-
- move.w #td_motor,28(a1) ;MOTOR
- move.l #0,36(a1) ;0=OFF/1=ON
- jsr doio(a6)
-
- lea diskrep,a1
- jsr remport(a6)
-
- lea diskio,a1
- jsr closedevice(a6) ;close trackdisk device
- rts
- Error: move.w #-1,d0
- ErLop: move.w d0,$dff180
- dbf d0,ErLop
- rts
-
- diskio: blk.l 20,0 ;input/output (IO)structure
- diskrep:blk.l 8,0 ;IO port
- tname: dc.b "trackdisk.device",0
- even
- Start=0
- Len=64
- sector: