rizin/librz/arch/isa/gb/gb.h
wargio d47ceedbd3 Merge rz_asm and rz_analysis into one library but keep deprecated apis.
The tms320c64x has been merged into tms320.
2024-03-07 18:38:49 +08:00

73 lines
990 B
C

// SPDX-FileCopyrightText: 2014 condret <condret@runas-racer.com>
// SPDX-License-Identifier: LGPL-3.0-only
#ifndef GB_H
#define GB_H
#include <rz_types.h>
#include <rz_asm.h>
typedef struct gb_user_t {
ut8 mbc_id;
ut8 romsz_id;
ut8 ramsz_id;
ut8 rombanks;
ut8 rambanks;
ut32 cycles;
} GBUser;
enum {
MBC_ROM = 0,
MBC1,
MBC1_RAM,
MBC1_RAM_BAT,
MBC2 = 0x5,
MBC2_BAT,
MBC_ROM_RAM = 0x8,
MBC_ROM_RAM_BAT,
MBC_MMM = 0x0b,
MBC_MMM_RAM,
MBC_MMM_RAM_BAT,
MBC3_BAT_TIM = 0x0f,
MBC3_RAM_BAT_TIM,
MBC3,
MBC3_RAM,
MBC3_RAM_BAT,
MBC4 = 0x15,
MBC4_RAM,
MBC4_RAM_BAT,
MBC5 = 0x19,
MBC5_RAM,
MBC5_RAM_BAT,
MBC5_RUM,
MBC5_RAM_RUM,
MBC5_RAM_BAT_RUM,
CAM = 0xfc,
TAMA5,
HUC3,
HUC1_RAM_BAT
};
enum {
NOBANK = 0,
BANK4,
BANK8,
BANK16,
BANK32,
BANK64,
BANK128,
BANK256,
BANK72 = 0x52,
BANK80,
BANK96
};
enum {
NORAM = 0,
RAM2K,
RAM8K,
RAM32K
};
int gbDisass(RzAsmOp *op, const ut8 *buf, int len);
int gbAsm(RzAsm *a, RzAsmOp *op, const char *buf);
#endif