Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
52 lines
2.5 KiB
C
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; } |