Subversion Repositories MB01 Project

Rev

Blame | Last modification | View Log | Download | RSS feed

;----------------------------------------------------------
; DIRP00.ASM
; PROGETTO: B1601
;
; Variabili in Direct Page $00
;----------------------------------------------------------

; sezione COMMON -- questo permette di includere il file in piu' file

.LIST on

DIRP00: .SECTION page0, ref_only, common        ;Direct-Page 00

        .ABSOLUTE               ;; inizia sempre da $00
        .ORG            0x00
        
JiffyClk        .DW                     ; contatore 10ms 32 bit
                .DW
SysTmr          .DS     SYSTMRCNT       ; system timer 0 (10ms)
SysTMF          .DS     SYSTMRCNT       ; flag timer (80 -> start)
Bnk0Flag        .DB                     ; <7>: flag test RAM banco 0 ok
                                        ; <6>: flag warm reset
RTCFlag         .DB

diskstat        .DS     2       ; flag device on ata bus #0 & #1
                                ; <7>: device ready
                                ; <6>: compact flash device (C.F.)
                                ; <5>: device identification ok
                                ; <4>: MBR loaded
                                ; <3>: valid signature in MBR
                                ; <2>: first partition found&active
                                ; <1>:
                                ; <0>: valid partition flag

                                ; <7>: device ready
                                ; <6>: USB device
                                ; <5>: compact flash device (C.F.)
                                ; <4>: device identification ok
                                ; <3>: MBR loaded
                                ; <2>: first partition found&active
                                ; <1>: always 1
                                ; <0>: valid partition flag
                                

atadev          .EQU    diskstat

usbdev          .DS     2       ; flag flash disk on usb bus #0
                                ; <7>: device plugged and ready
                                ; <6>: always 1 
                                ; <5>: device identification ok
                                ; <4>: MBR loaded
                                ; <3>: valid signature in MBR
                                ; <2>: first partition found&active
                                ; <1>:
                                ; <0>: valid partition flag

diskmax         .DS     16      ; disk max. sector's
atasec          .EQU    diskmax
usbsec          .EQU    diskmax+8


atambr          .DS     8       ; data for first partition found in mbr
                                ; first 3 bytes for start sector of partition
                                ; last byte for partition type
usbmbr          .DS     8

ataprt          .DS     8       ; total sec's of first partition
usbprt          .DS     8       ; total sec's of first partition


usb0ch          .DB     ; usb0 (ch375/ch376) flag
                        ; <7>: module on
                        ; <6>: ch376 flag
                        ; <5:0>: chip version

usb0st          .DB     ; usb0 status
                        ; <7>: usb0 host mode ok
                        ; <6>: flash disk attached flag
                        ; <5>: usb device attached

fdcdrv          .DB             ; phisycal drive status (drive #0)
                                ; <7>: disk format established in bit 0&1 
                                ; <6>: double step seek done
                                ; <5>: trust format bit's (set after ok r/w)
                                ; <4>: write protect bit (if disk in drive)
                                ; <3>: don't care
                                ; <2>: don't care                               
                                ; <1>: HD disk if set else DD disk
                                ; <0>: CBM format if set else IBM format

vdrive          .DB             ; virtual drive status (ram disk, drive #1)
                                ; <7>: disk format established in bit 0&1 
                                ; <6>: change disk simulation (after format)
                                ; <5>: don't care
                                ; <4>: write protect bit (under sw control)
                                ; <3>: don't care
                                ; <2>: don't care                               
                                ; <1>: HD disk if set else DD disk
                                ; <0>: CBM format if set else IBM format

fdcctl          .DB             ; fdc controller status
                                ; <7>: drive is attached
                                ; <6>: drive need recalibration (restore)
                                ; <5>: FDC controller ok
                                ; <4>: motor on
                                ; <3>: dma is active
                                ; <2>: dma chip ok (post routine)
                                ; <1>: clock rate (1=HD,0=DD)
                                ; <0>: disk ready

fdctrk          .DB             ; fd: current seek track
fdcerr          .DB             ; fd: last error code
ataerr          .DB             ; ata: last error code
ataxer          .DB             ; ata: last extended error code

CtrlBrk         .DB             ; flag CTRL+BREAK (NMI)

MemTop          .DW             ; top memoria RAM
                .DB             ; banco top mem

DflTxtIn        .DB             ; device di default text input 
DflTxtOut       .DB             ; device di default text output

COPPtr          LP              ; long pointer for COP decoding
COPIdx          .DB             ; COP signature/index

BiosEnt         .DB             ; flag accesso a bios setup

; variabili utilizzate da ACIA
spwrk           .DS     $30

; bios mem
nsize           .DW     ; dimensione blocco da allocare
;bsize          .DW     ; dimensione vera blocco free
splitsz         .DW     ; dimensione blocco splittato
bfree           .DW     ; puntatore blocco free
hdrptr          .DW     ; puntatore header heap

pbrklv          .DW     ; current break level of current process
pbrkmin         .DW     ; minimum breal level of current process
pbrkmax         .DW     ; maximum breal level of current process
        
; bios temp. work area
bwrktmp         .DS     $28

coptmp          .DB     ; temp. used while cop

tstser          .DB     ; check ser/usb test board post
                        ; <7>: VIA2 ok
                        ; <6>: PICRAM ok
                        ; <1>: UART 16C550 ok
                        ; <0>: R65C51 ok


;crc16          .DW

        .RELATIVE

        .ENDS

.IFDEF          _ACIA_INC_
        .INCLUDE INC\SP.INC
.ENDIF

.LIST off