Buchempfehlung
Windows System Programming
Windows System Programming
Das Kompendium liefert viele interessante Informationen zur Windows-Programmierung auf Englisch. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

fb:porticula NoPaste

Info
Info / Hilfe
Liste
Übersicht / Liste
Neu
Datei hochladen
Suche
Quellcode suchen
Download
Dateidownload

core_bda.bi

Uploader:MitgliedThePuppetMaster
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