Files
mazegame/engine/src/extbios.h
T

52 lines
2.5 KiB
C

// ____________________________
// ██▀▀█▀▀██▀▀▀▀▀▀▀█▀▀█ │ ▄▄▄ ▄▄ ▄▄▄
// ██ ▀ █▄ ▀██▄ ▀ ▄█ ▄▀▀ █ │ ██ █ ██ █ ▀█▄
// █ █ █ ▀▀ ▄█ █ █ ▀▄█ █▄ │ ██▄▀ ▀█▄▀ ▄▄█▀
// ▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀────────┘
// by Guillaume 'Aoineko' Blanchard under CC BY-SA license
//─────────────────────────────────────────────────────────────────────────────
// MSX-DOS 2 extension BIOS routines
//
// References:
// - https://map.grauw.nl/resources/dos2_environment.php#c5
//─────────────────────────────────────────────────────────────────────────────
#pragma once
//=============================================================================
// INCLUDES
//=============================================================================
#include "core.h"
//=============================================================================
// DEFINES
//=============================================================================
// Extented BIOS
#define M_HOKVLD 0xFB20
const u8 __at(M_HOKVLD) g_HOKVLD;
#define M_EXTBIO 0xFFCA
const u8 __at(M_EXTBIO) g_EXTBIO;
#define EXTBIOS_BROADCAST 0x00 // Broad-cast
#define EXTBIOS_MEMMAPPER 0x04 // Memory Mapper (MSX-DOS 2)
#define EXTBIOS_MODEM 0x08 // MSX-Modem & RS-232C
#define EXTBIOS_MSXAUDIO 0x0A // MSX-AUDIO
#define EXTBIOS_MSXJE 0x10 // MSX-JE
#define EXTBIOS_KANJI 0x11 // Kanji driver
#define EXTBIOS_UNAPI 0x22 // MSX-UNAPI (Unofficial)
#define EXTBIOS_MEMMAN 0x4D // MemMan (Unofficial)
#define EXTBIOS_UDRIVER 0x84 // μ-driver by Yoshikazu Yamamoto (Unofficial)
#define EXTBIOS_MULTIMENTE 0xF1 // MultiMente (Unofficial)
#define EXTBIOS_SYSTEM 0xFF // System
//=============================================================================
// FUNCTIONS
//=============================================================================
// Function: ExtBIOS_Check
// Check id extended BIOS is installed
//
// Return:
// FALSE if not installed
inline bool ExtBIOS_Check() { return g_HOKVLD & 0x01; }