fb:porticula NoPaste
core_bda.bi
Uploader: | ThePuppetMaster |
Datum/Zeit: | 26.08.2008 22:07:58 |
'###############################################################################################################
'###############################################################################################################
'### F B - C O R E
'###############################################################################################################
'###############################################################################################################
'### Version: 1.00.0
'### Revision: 0
'###############################################################################################################
'### (c) 2008 By.: /_\ DeltaLab's Germany [experimental computing]
'### Author: Martin Wiemann
'### Date of Idea: 2008.08.16 - 17:55:38
'###############################################################################################################
'### Copy('s) of this code or a part of this IS allowed!!!
'###############################################################################################################
'###############################################################################################################
Const core_BDA_Base_Adr as UShort = &H400
'###############################################################################################################
Type core_BDA_Base
V_Equipment as UShort
V_ManufactTestData0 as UByte
V_MemSizeKB as UShort
V_ManufactTestData1 as UShort
End Type
'--------------------------------------------------------------------------------------------------------------------
Type core_BDA_Com
V_Com as UByte
V_COM1_Adr as UShort
V_COM2_Adr as UShort
V_COM3_Adr as UShort
V_COM4_Adr as UShort
End Type
'--------------------------------------------------------------------------------------------------------------------
Type core_BDA_LPT
V_Com as UByte
V_LPT1_Adr as UShort
V_LPT2_Adr as UShort
V_LPT3_Adr as UShort
V_LPT4_EBDA_Adr as UShort
End Type
'--------------------------------------------------------------------------------------------------------------------
Enum core_BDA_grafic_mode
E_GFX_Mode_Unknow = 0
E_GFX_Mode_EGA = 1
E_GFX_Mode_VGA_40x25 = 2
E_GFX_Mode_VGA_80x25 = 3
E_GFX_Mode_VGA_80x25Mono = 4
End Enum
'--------------------------------------------------------------------------------------------------------------------
Dim Shared core_BDA_Base as core_BDA_Base
Dim Shared core_BDA_Com as core_BDA_Com
Dim Shared core_BDA_LPT as core_BDA_LPT
'###############################################################################################################
Private Sub core_bda_read()
With core_BDA_Base
.V_Equipment = inp(core_BDA_Base_Adr + &H10)
.V_ManufactTestData0 = inp(core_BDA_Base_Adr + &H12)
.V_MemSizeKB = inp(core_BDA_Base_Adr + &H13)
.V_ManufactTestData1 = inp(core_BDA_Base_Adr + &H15)
End With
With core_BDA_Com
.V_Com1_Adr = inp(core_BDA_Base_Adr + &H0)
.V_Com2_Adr = inp(core_BDA_Base_Adr + &H2)
.V_Com3_Adr = inp(core_BDA_Base_Adr + &H4)
.V_Com4_Adr = inp(core_BDA_Base_Adr + &H6)
End With
With core_BDA_LPT
.V_LPT1_Adr = inp(core_BDA_Base_Adr + &H8)
.V_LPT2_Adr = inp(core_BDA_Base_Adr + &HA)
.V_LPT3_Adr = inp(core_BDA_Base_Adr + &HC)
.V_LPT4_EBDA_Adr = inp(core_BDA_Base_Adr + &HE)
End With
End Sub
'--------------------------------------------------------------------------------------------------------------------
Private Function core_bda_get_grafic_mode() as core_BDA_grafic_mode
Return ((core_BDA_Base.V_Equipment Shl 4) and 3)
End Function