jsgbc
Version:
jsGBC Core Emulator
31 lines (30 loc) • 925 B
TypeScript
/// <reference types="node" />
import RTC from "./RTC";
import Cartridge from "./Cartridge";
import { EventEmitter } from "events";
export default class MBC extends EventEmitter {
currentRomBank: number;
romBank1Offset: number;
ram: Uint8Array;
romBankEdge: number;
currentMbcRamBank: number;
currentRamBankPosition: number;
ramBanksEnabled: boolean;
romSize: number;
ramSize: number;
rtc?: RTC;
romSizes: number[];
ramSizes: number[];
cartridge: Cartridge;
constructor(cartridge: Cartridge);
setupRom(): void;
setupRAM(): void;
loadRam(data: Uint8Array): void;
getRam(): Uint8Array;
cutSRAMFromBatteryFileArray(data: ArrayBuffer): Uint8Array;
saveState(): any;
readRam: (address: number) => number;
writeRam: (address: number, data: number) => void;
setCurrentROMBank(): void;
toggle: (address: number, data: number) => void;
}