From f037682d1a9ac26504631d701cecb1c7b4993c5c Mon Sep 17 00:00:00 2001 From: Raphael Le Goaller Date: Sat, 4 Nov 2023 18:53:22 +0100 Subject: [PATCH] [apps/Peanut-GB] Add CGB support (#29) --- apps/Peanut-GB/app.elf | Bin 1155328 -> 715932 bytes apps/Peanut-GB/main.c | 88 +- apps/Peanut-GB/peanut_gb.h | 3556 +++++++++++++++++++++--------------- 3 files changed, 2128 insertions(+), 1516 deletions(-) diff --git a/apps/Peanut-GB/app.elf b/apps/Peanut-GB/app.elf index 7923d6e9763d905b3742197e989707807d2d1ac0..85c1509106af5c35a1fe731b864fecd2c9d90113 100644 GIT binary patch literal 715932 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 ku5AIR{1MSeDe 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 literal 1155328 zcmc${34Bvk_BejulBG$SqzythAZ?12h9zx5mV%^7`dEsTO+`TspfhnCHHu3|2bwM* ziZCsyS{gtWb=aX*l*O6~jyftcO_BMw0%IMakwl%BF7ycl`JeNW(t_*!oX_W9K6&rF zd(S=h+;h%7_uTvLyAqwpHIuZ_Zgf_p_2u7vx#DC~xNRTO>!?k`5+m*8F3E3zBdZ*gZus{ zTnqQQDEvCy--yBo;QnS5ehcmgqwpcPACAID;Qn?Lu7~?OQP>OjhA8|l+>b`#V{m^j z3jYP}??>Se;QnD0{wv%+iozem{gWts9PWRM!heT*V-)tmy$ODO|H`?%0AX}I!#wCS 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∾+>YS-3WER3f{P#`xn-0r1%Xz(nGbOiTo#_Yv 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 bP&)<^T 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 m4Oog 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%0AcO9#;E}QaI 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.priv; +void lcd_draw_line_centered(struct gb_s *gb, const uint8_t * input_pixels, const uint_fast8_t line) { + uint16_t output_pixels[2*LCD_WIDTH]; - for(unsigned int x = 0; x < LCD_WIDTH; x++) { - priv->line_buffer[x] = color_from_gb_pixel(pixels[x]); + for(int i = 0; i < LCD_WIDTH; i++) { + if (gb->cgb.cgbMode) { + output_pixels[i] = gb->cgb.fixPalette[input_pixels[i]]; + output_pixels[i] = (output_pixels[i] & 0x1F) << 11 | (output_pixels[i] & 0x3E0) << 1 | (output_pixels[i] & 0x7C00) >> 10; + output_pixels[i] = (output_pixels[i] & 0x1F) << 11 | (output_pixels[i] & 0x7E0) | (output_pixels[i] & 0xF800) >> 11; + } else { + output_pixels[i] = color_from_gb_pixel(input_pixels[i]); + } } - extapp_pushRect((NW_LCD_WIDTH - LCD_WIDTH) / 2, (NW_LCD_HEIGHT - LCD_HEIGHT) / 2 + line, LCD_WIDTH, 1, priv->line_buffer); + extapp_pushRect((NW_LCD_WIDTH - LCD_WIDTH) / 2, (NW_LCD_HEIGHT - LCD_HEIGHT) / 2 + line, LCD_WIDTH, 1, output_pixels); } static void lcd_draw_line_maximized(struct gb_s * gb, const uint8_t * input_pixels, const uint_fast8_t line) { // Nearest neighbor scaling of a 160x144 texture to a 320x240 resolution // Horizontally, we just double - uint16_t output_pixels[2*LCD_WIDTH]; - for (int i=0; icgb.cgbMode) { + output_pixels[i] = gb->cgb.fixPalette[input_pixels[i]]; + output_pixels[i] = (output_pixels[i] & 0x1F) << 11 | (output_pixels[i] & 0x3E0) << 1 | (output_pixels[i] & 0x7C00) >> 10; + output_pixels[i] = (output_pixels[i] & 0x1F) << 11 | (output_pixels[i] & 0x7E0) | (output_pixels[i] & 0xF800) >> 11; + } else { + output_pixels[i] = color_from_gb_pixel(input_pixels[i]); + } + + uint16_t color = output_pixels[i]; + + zoomPixels[2 * i] = color; + zoomPixels[2 * i + 1] = color; } // Vertically, we want to scale by a 5/3 ratio. So we need to make 5 lines out of three: we double two lines out of three. - uint16_t y = (5*line)/3; - extapp_pushRect(0, y, 2*LCD_WIDTH, 1, output_pixels); - if (line%3 != 0) { - extapp_pushRect(0, y+1, 2*LCD_WIDTH, 1, output_pixels); + uint16_t y = (5 * line) / 3; + extapp_pushRect(0, y, 2 * LCD_WIDTH, 1, zoomPixels); + if (line % 3 != 0) { + extapp_pushRect(0, y + 1, 2 * LCD_WIDTH, 1, zoomPixels); } } static void lcd_draw_line_maximized_ratio(struct gb_s * gb, const uint8_t * input_pixels, const uint_fast8_t line) { // Nearest neighbor scaling of a 160x144 texture to a 266x240 resolution (to keep the ratio) // Horizontally, we multiply by 1.66 (160*1.66 = 266) - uint16_t output_pixels[266]; - for (int i=0; icgb.cgbMode) { + output_pixels[i] = gb->cgb.fixPalette[input_pixels[i]]; + output_pixels[i] = (output_pixels[i] & 0x1F) << 11 | (output_pixels[i] & 0x3E0) << 1 | (output_pixels[i] & 0x7C00) >> 10; + output_pixels[i] = (output_pixels[i] & 0x1F) << 11 | (output_pixels[i] & 0x7E0) | (output_pixels[i] & 0xF800) >> 11; + } else { + output_pixels[i] = color_from_gb_pixel(input_pixels[i]); + } + uint16_t color = output_pixels[i]; + + zoomPixels[166 * i / 100] = color; + zoomPixels[166 * i / 100 + 1] = color; + zoomPixels[166 * i / 100 + 2] = color; + } + // We can't use floats, so we use a fixed point representation // Vertically, we want to scale by a 5/3 ratio. So we need to make 5 lines out of three: we double two lines out of three. - uint16_t y = (5*line)/3; - extapp_pushRect((NW_LCD_WIDTH - 266) / 2, y, 266, 1, output_pixels); - if (line%3 != 0) { - extapp_pushRect((NW_LCD_WIDTH - 266) / 2, y+1, 266, 1, output_pixels); + uint16_t y = (5 * line) / 3; + extapp_pushRect((NW_LCD_WIDTH - 266) / 2, y, 266, 1, zoomPixels); + if (line % 3 != 0) { + extapp_pushRect((NW_LCD_WIDTH - 266) / 2, y + 1, 266, 1, zoomPixels); } } @@ -230,7 +257,7 @@ void extapp_main() { // Alloc internal RAM. gb.wram = malloc(WRAM_SIZE); gb.vram = malloc(VRAM_SIZE); - gb.hram = malloc(HRAM_SIZE); + gb.hram_io = malloc(HRAM_IO_SIZE); gb.oam = malloc(OAM_SIZE); gb_ret = gb_init(&gb, &gb_rom_read, &gb_cart_ram_read, &gb_cart_ram_write, &gb_error, &priv); @@ -360,9 +387,10 @@ void extapp_main() { } + free(gb.wram); free(gb.vram); - free(gb.hram); + free(gb.hram_io); free(gb.oam); write_save_file(file_name, priv.cart_ram, save_size); diff --git a/apps/Peanut-GB/peanut_gb.h b/apps/Peanut-GB/peanut_gb.h index a6b2353dd..67499922e 100644 --- a/apps/Peanut-GB/peanut_gb.h +++ b/apps/Peanut-GB/peanut_gb.h @@ -1,7 +1,7 @@ /** * MIT License * - * Copyright (c) 2018 Mahyar Koshkouei + * Copyright (c) 2018-2023 Mahyar Koshkouei * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to @@ -29,25 +29,90 @@ * is Copyright (c) 2015-2019 Lior Halphon. */ -#pragma once +#ifndef PEANUT_GB_H +#define PEANUT_GB_H +#if defined(__has_include) +# if __has_include("version.all") +# include "version.all" /* Version information */ +# endif +#else +/* Stub __has_include for later. */ +# define __has_include(x) 0 +#endif + +#include /* Required for qsort and abort */ #include /* Required for int types */ +#include /* Required for memset */ #include /* Required for tm struct */ +/** +* If PEANUT_GB_IS_LITTLE_ENDIAN is positive, then Peanut-GB will be configured +* for a little endian platform. If 0, then big endian. +*/ +#if !defined(PEANUT_GB_IS_LITTLE_ENDIAN) +/* If endian is not defined, then attempt to detect it. */ +# if defined(__BYTE_ORDER__) +# if __BYTE_ORDER__ != __ORDER_LITTLE_ENDIAN__ +/* Building for a big endian platform. */ +# define PEANUT_GB_IS_LITTLE_ENDIAN 0 +# else +# define PEANUT_GB_IS_LITTLE_ENDIAN 1 +# endif /* __BYTE_ORDER__ != __ORDER_LITTLE_ENDIAN__ */ +# elif defined(_WIN32) +/* We assume that Windows is always little endian by default. */ +# define PEANUT_GB_IS_LITTLE_ENDIAN 1 +# elif !defined(PEANUT_GB_IS_LITTLE_ENDIAN) +# error "Could not detect target platform endian. Please define PEANUT_GB_IS_LITTLE_ENDIAN" +# endif +#endif /* !defined(PEANUT_GB_IS_LITTLE_ENDIAN) */ + +#if PEANUT_GB_IS_LITTLE_ENDIAN == 0 +# error "Peanut-GB only supports little endian targets" +/* This is because the logic has been written with assumption of little + * endian byte order. */ +#endif + +/** Definitions for compile-time setting of features. **/ /** * Sound support must be provided by an external library. When audio_read() and * audio_write() functions are provided, define ENABLE_SOUND to a non-zero value * before including peanut_gb.h in order for these functions to be used. */ #ifndef ENABLE_SOUND -# define ENABLE_SOUND 0 +# define ENABLE_SOUND 0 #endif /* Enable LCD drawing. On by default. May be turned off for testing purposes. */ #ifndef ENABLE_LCD -# define ENABLE_LCD 1 +# define ENABLE_LCD 1 +#endif + +/* Enable 16 bit colour palette. If disabled, only four colour shades are set in + * pixel data. */ +#ifndef PEANUT_GB_12_COLOUR +# define PEANUT_GB_12_COLOUR 1 #endif +/* Adds more code to improve LCD rendering accuracy. */ +#ifndef PEANUT_GB_HIGH_LCD_ACCURACY +# define PEANUT_GB_HIGH_LCD_ACCURACY 1 +#endif + +/* Use intrinsic functions. This may produce smaller and faster code. */ +#ifndef PEANUT_GB_USE_INTRINSICS +# define PEANUT_GB_USE_INTRINSICS 1 +#endif + +#ifndef PEANUT_FULL_GBC_SUPPORT +# define PEANUT_FULL_GBC_SUPPORT 1 +#endif + +/* Only include function prototypes. At least one file must *not* have this + * defined. */ +// #define PEANUT_GB_HEADER_ONLY + +/** Internal source code. **/ /* Interrupt masks */ #define VBLANK_INTR 0x01 #define LCDC_INTR 0x02 @@ -57,9 +122,14 @@ #define ANY_INTR 0x1F /* Memory section sizes for DMG */ +#if PEANUT_FULL_GBC_SUPPORT +#define WRAM_SIZE 0x8000 +#define VRAM_SIZE 0x4000 +#else #define WRAM_SIZE 0x2000 #define VRAM_SIZE 0x2000 -#define HRAM_SIZE 0x0100 +#endif +#define HRAM_IO_SIZE 0x0100 #define OAM_SIZE 0x00A0 /* Memory addresses */ @@ -88,16 +158,20 @@ /* Serial clock locked to 8192Hz on DMG. * 4194304 / (8192 / 8) = 4096 clock cycles for sending 1 byte. */ -#define SERIAL_CYCLES 4096 +#define SERIAL_CYCLES 4096 +#define SERIAL_CYCLES_1KB (SERIAL_CYCLES/1ul) +#define SERIAL_CYCLES_2KB (SERIAL_CYCLES/2ul) +#define SERIAL_CYCLES_32KB (SERIAL_CYCLES/32ul) +#define SERIAL_CYCLES_64KB (SERIAL_CYCLES/64ul) /* Calculating VSYNC. */ -#define DMG_CLOCK_FREQ 4194304.0 -#define SCREEN_REFRESH_CYCLES 70224.0 -#define VERTICAL_SYNC (DMG_CLOCK_FREQ/SCREEN_REFRESH_CYCLES) +#define DMG_CLOCK_FREQ 4194304.0 +#define SCREEN_REFRESH_CYCLES 70224.0 +#define VERTICAL_SYNC (DMG_CLOCK_FREQ/SCREEN_REFRESH_CYCLES) /* SERIAL SC register masks. */ -#define SERIAL_SC_TX_START 0x80 -#define SERIAL_SC_CLOCK_SRC 0x01 +#define SERIAL_SC_TX_START 0x80 +#define SERIAL_SC_CLOCK_SRC 0x01 /* STAT register masks */ #define STAT_LYC_INTR 0x40 @@ -118,11 +192,16 @@ #define LCDC_OBJ_ENABLE 0x02 #define LCDC_BG_ENABLE 0x01 -/* LCD characteristics */ +/** LCD characteristics **/ +/* PPU cycles through modes every 456 cycles. */ #define LCD_LINE_CYCLES 456 -#define LCD_MODE_0_CYCLES 0 +/* Mode 0 starts on cycle 372. */ +#define LCD_MODE_0_CYCLES 372 +/* Mode 2 starts on cycle 204. */ #define LCD_MODE_2_CYCLES 204 +/* Mode 3 starts on cycle 284. */ #define LCD_MODE_3_CYCLES 284 +/* There are 154 scanlines. LY < 154. */ #define LCD_VERT_LINES 154 #define LCD_WIDTH 160 #define LCD_HEIGHT 144 @@ -149,70 +228,222 @@ #define OBJ_FLIP_Y 0x40 #define OBJ_FLIP_X 0x20 #define OBJ_PALETTE 0x10 +#if PEANUT_FULL_GBC_SUPPORT +#define OBJ_BANK 0x08 +#define OBJ_CGB_PALETTE 0x07 +#endif #define ROM_HEADER_CHECKSUM_LOC 0x014D +/* Local macros. */ #ifndef MIN - #define MIN(a, b) ((a) < (b) ? (a) : (b)) +# define MIN(a, b) ((a) < (b) ? (a) : (b)) +#endif + +#define PEANUT_GB_ARRAYSIZE(array) (sizeof(array)/sizeof(array[0])) + +#if !defined(__has_builtin) +/* Stub __has_builtin if it isn't available. */ +# define __has_builtin(x) 0 +#endif + +/* The PGB_UNREACHABLE() macro tells the compiler that the code path will never + * be reached, allowing for further optimisation. */ +#if !defined(PGB_UNREACHABLE) +# if __has_builtin(__builtin_unreachable) +# define PGB_UNREACHABLE() __builtin_unreachable() +# elif defined(_MSC_VER) && _MSC_VER >= 1200 +# /* __assume is not available before VC6. */ +# define PGB_UNREACHABLE() __assume(0) +# else +# define PGB_UNREACHABLE() abort() +# endif +#endif /* !defined(PGB_UNREACHABLE) */ + +#if PEANUT_GB_USE_INTRINSICS +/* If using MSVC, only enable intrinsics for x86 platforms*/ +# if defined(_MSC_VER) && __has_include("intrin.h") && \ + (defined(_M_IX86_FP) || defined(_M_AMD64) || defined(_M_X64)) +/* Define intrinsic functions for MSVC. */ +# include +# define PGB_INTRIN_SBC(x,y,cin,res) _subborrow_u8(cin,x,y,&res) +# define PGB_INTRIN_ADC(x,y,cin,res) _addcarry_u8(cin,x,y,&res) +# endif /* MSVC */ + +/* Check for intrinsic functions in GCC and Clang. */ +# if __has_builtin(__builtin_sub_overflow) +# define PGB_INTRIN_SBC(x,y,cin,res) __builtin_sub_overflow(x,y+cin,&res) +# define PGB_INTRIN_ADC(x,y,cin,res) __builtin_add_overflow(x,y+cin,&res) +# endif +#endif /* PEANUT_GB_USE_INTRINSICS */ + +#if defined(PGB_INTRIN_SBC) +# define PGB_INSTR_SBC_R8(r,cin) \ + { \ + uint8_t temp; \ + gb->cpu_reg.f_bits.c = PGB_INTRIN_SBC(gb->cpu_reg.a,r,cin,temp);\ + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.a ^ r ^ temp) & 0x10) > 0; \ + gb->cpu_reg.f_bits.n = 1; \ + gb->cpu_reg.f_bits.z = (temp == 0x00); \ + gb->cpu_reg.a = temp; \ + } + +# define PGB_INSTR_CP_R8(r) \ + { \ + uint8_t temp; \ + gb->cpu_reg.f_bits.c = PGB_INTRIN_SBC(gb->cpu_reg.a,r,0,temp); \ + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.a ^ r ^ temp) & 0x10) > 0; \ + gb->cpu_reg.f_bits.n = 1; \ + gb->cpu_reg.f_bits.z = (temp == 0x00); \ + } +#else +# define PGB_INSTR_SBC_R8(r,cin) \ + { \ + uint16_t temp = gb->cpu_reg.a - (r + cin); \ + gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; \ + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.a ^ r ^ temp) & 0x10) > 0; \ + gb->cpu_reg.f_bits.n = 1; \ + gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); \ + gb->cpu_reg.a = (temp & 0xFF); \ + } + +# define PGB_INSTR_CP_R8(r) \ + { \ + uint16_t temp = gb->cpu_reg.a - r; \ + gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; \ + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.a ^ r ^ temp) & 0x10) > 0; \ + gb->cpu_reg.f_bits.n = 1; \ + gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); \ + } +#endif /* PGB_INTRIN_SBC */ + +#if defined(PGB_INTRIN_ADC) +# define PGB_INSTR_ADC_R8(r,cin) \ + { \ + uint8_t temp; \ + gb->cpu_reg.f_bits.c = PGB_INTRIN_ADC(gb->cpu_reg.a,r,cin,temp);\ + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.a ^ r ^ temp) & 0x10) > 0; \ + gb->cpu_reg.f_bits.n = 0; \ + gb->cpu_reg.f_bits.z = (temp == 0x00); \ + gb->cpu_reg.a = temp; \ + } +#else +# define PGB_INSTR_ADC_R8(r,cin) \ + { \ + uint16_t temp = gb->cpu_reg.a + r + cin; \ + gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; \ + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.a ^ r ^ temp) & 0x10) > 0; \ + gb->cpu_reg.f_bits.n = 0; \ + gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); \ + gb->cpu_reg.a = (temp & 0xFF); \ + } +#endif /* PGB_INTRIN_ADC */ + +#define PGB_INSTR_DEC_R8(r) \ + r--; \ + gb->cpu_reg.f_bits.h = ((r & 0x0F) == 0x0F); \ + gb->cpu_reg.f_bits.n = 1; \ + gb->cpu_reg.f_bits.z = (r == 0x00); + +#define PGB_INSTR_XOR_R8(r) \ + gb->cpu_reg.a ^= r; \ + gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); \ + gb->cpu_reg.f_bits.n = 0; \ + gb->cpu_reg.f_bits.h = 0; \ + gb->cpu_reg.f_bits.c = 0; + +#define PGB_INSTR_OR_R8(r) \ + gb->cpu_reg.a |= r; \ + gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); \ + gb->cpu_reg.f_bits.n = 0; \ + gb->cpu_reg.f_bits.h = 0; \ + gb->cpu_reg.f_bits.c = 0; + +#define PGB_INSTR_AND_R8(r) \ + gb->cpu_reg.a &= r; \ + gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); \ + gb->cpu_reg.f_bits.n = 0; \ + gb->cpu_reg.f_bits.h = 1; \ + gb->cpu_reg.f_bits.c = 0; + +#if PEANUT_GB_IS_LITTLE_ENDIAN +# define PEANUT_GB_GET_LSB16(x) (x & 0xFF) +# define PEANUT_GB_GET_MSB16(x) (x >> 8) +# define PEANUT_GB_GET_MSN16(x) (x >> 12) +# define PEANUT_GB_U8_TO_U16(h,l) ((l) | ((h) << 8)) +#else +# define PEANUT_GB_GET_LSB16(x) (x >> 8) +# define PEANUT_GB_GET_MSB16(x) (x & 0xFF) +# define PEANUT_GB_GET_MSN16(x) ((x & 0xF0) >> 4) +# define PEANUT_GB_U8_TO_U16(h,l) ((h) | ((l) << 8)) #endif struct cpu_registers_s { - /* Combine A and F registers. */ +/* Change register order if big endian. + * Macro receives registers in little endian order. */ +#if PEANUT_GB_IS_LITTLE_ENDIAN +# define PEANUT_GB_LE_REG(x,y) x,y +#else +# define PEANUT_GB_LE_REG(x,y) y,x +#endif + /* Define specific bits of Flag register. */ + struct + { + uint8_t c : 1; /* Carry flag. */ + uint8_t h : 1; /* Half carry flag. */ + uint8_t n : 1; /* Add/sub flag. */ + uint8_t z : 1; /* Zero flag. */ + } f_bits; + uint8_t a; + union { struct { - /* Define specific bits of Flag register. */ - union - { - struct - { - uint8_t unused : 4; - uint8_t c : 1; /* Carry flag. */ - uint8_t h : 1; /* Half carry flag. */ - uint8_t n : 1; /* Add/sub flag. */ - uint8_t z : 1; /* Zero flag. */ - } f_bits; - uint8_t f; - }; - uint8_t a; - }; - uint16_t af; - }; + uint8_t PEANUT_GB_LE_REG(c,b); + } bytes; + uint16_t reg; + } bc; union { struct { - uint8_t c; - uint8_t b; - }; - uint16_t bc; - }; + uint8_t PEANUT_GB_LE_REG(e,d); + } bytes; + uint16_t reg; + } de; union { struct { - uint8_t e; - uint8_t d; - }; - uint16_t de; - }; + uint8_t PEANUT_GB_LE_REG(l,h); + } bytes; + uint16_t reg; + } hl; + /* Stack pointer */ union { struct { - uint8_t l; - uint8_t h; - }; - uint16_t hl; - }; + uint8_t PEANUT_GB_LE_REG(p, s); + } bytes; + uint16_t reg; + } sp; - uint16_t sp; /* Stack pointer */ - uint16_t pc; /* Program counter */ + /* Program counter */ + union + { + struct + { + uint8_t PEANUT_GB_LE_REG(c, p); + } bytes; + uint16_t reg; + } pc; +#undef PEANUT_GB_LE_REG }; struct count_s @@ -223,53 +454,11 @@ struct count_s uint_fast16_t serial_count; /* Serial Counter */ }; -struct gb_registers_s -{ - /* TODO: Sort variables in address order. */ - /* Timing */ - uint8_t TIMA, TMA, DIV; - union - { - struct - { - uint8_t tac_rate : 2; /* Input clock select */ - uint8_t tac_enable : 1; /* Timer enable */ - uint8_t unused : 5; - }; - uint8_t TAC; - }; - - /* LCD */ - uint8_t LCDC; - uint8_t STAT; - uint8_t SCY; - uint8_t SCX; - uint8_t LY; - uint8_t LYC; - uint8_t DMA; - uint8_t BGP; - uint8_t OBP0; - uint8_t OBP1; - uint8_t WY; - uint8_t WX; - - /* Joypad info. */ - uint8_t P1; - - /* Serial data. */ - uint8_t SB; - uint8_t SC; - - /* Interrupt flag. */ - uint8_t IF; - - /* Interrupt enable. */ - uint8_t IE; -}; - #if ENABLE_LCD /* Bit mask for the shade of pixel to display */ #define LCD_COLOUR 0x03 + +# if PEANUT_GB_12_COLOUR /** * Bit mask for whether a pixel is OBJ0, OBJ1, or BG. Each may have a different * palette when playing a DMG game on CGB. @@ -284,6 +473,7 @@ struct gb_registers_s * LCD_PALETTE_ALL == 0b11 --> NOT POSSIBLE */ #define LCD_PALETTE_ALL 0x30 +# endif #endif /** @@ -291,10 +481,11 @@ struct gb_registers_s */ enum gb_error_e { - GB_UNKNOWN_ERROR, + GB_UNKNOWN_ERROR = 0, GB_INVALID_OPCODE, GB_INVALID_READ, GB_INVALID_WRITE, + GB_HALT_FOREVER, GB_INVALID_MAX }; @@ -304,7 +495,7 @@ enum gb_error_e */ enum gb_init_error_e { - GB_INIT_NO_ERROR, + GB_INIT_NO_ERROR = 0, GB_INIT_CARTRIDGE_UNSUPPORTED, GB_INIT_INVALID_CHECKSUM }; @@ -357,42 +548,38 @@ struct gb_s /** * Notify front-end of error. * - * \param gb_s emulator context + * \param gb_s emulator context * \param gb_error_e error code - * \param val arbitrary value related to error + * \param addr address of where error occurred */ - void (*gb_error)(struct gb_s*, const enum gb_error_e, const uint16_t val); + void (*gb_error)(struct gb_s*, const enum gb_error_e, const uint16_t addr); /* Transmit one byte and return the received byte. */ void (*gb_serial_tx)(struct gb_s*, const uint8_t tx); enum gb_serial_rx_ret_e (*gb_serial_rx)(struct gb_s*, uint8_t* rx); + /* Read byte from boot ROM at given address. */ + uint8_t (*gb_bootrom_read)(struct gb_s*, const uint_fast16_t addr); + struct { - unsigned int gb_halt : 1; - unsigned int gb_ime : 1; - unsigned int gb_bios_enable : 1; - unsigned int gb_frame : 1; /* New frame drawn. */ - enum - { - LCD_HBLANK = 0, - LCD_VBLANK = 1, - LCD_SEARCH_OAM = 2, - LCD_TRANSFER = 3 - } lcd_mode : 2; + uint8_t gb_halt : 1; + uint8_t gb_ime : 1; + uint8_t gb_frame : 1; /* New frame drawn. */ + uint8_t lcd_blank : 1; }; /* Cartridge information: * Memory Bank Controller (MBC) type. */ - uint8_t mbc; + int8_t mbc; /* Whether the MBC has internal RAM. */ uint8_t cart_ram; /* Number of ROM banks in cartridge. */ - uint16_t num_rom_banks; - /* Number of RAM banks in cartridge. */ + uint16_t num_rom_banks_mask; + /* Number of RAM banks in cartridge. Ignore for MBC2. */ uint8_t num_ram_banks; - uint8_t selected_rom_bank; + uint16_t selected_rom_bank; /* WRAM and VRAM bank selection not available. */ uint8_t cart_ram_bank; uint8_t enable_cart_ram; @@ -412,14 +599,14 @@ struct gb_s }; struct cpu_registers_s cpu_reg; - struct gb_registers_s gb_reg; + //struct gb_registers_s gb_reg; struct count_s counter; /* TODO: Allow implementation to allocate WRAM, VRAM and Frame Buffer. */ uint8_t* wram; uint8_t* vram; - uint8_t* hram; uint8_t* oam; + uint8_t* hram_io; struct { @@ -427,7 +614,7 @@ struct gb_s * Draw line on screen. * * \param gb_s emulator context - * \param pixels pixels to draw. + * \param pixels The 160 pixels to draw. * Bits 1-0 are the colour to draw. * Bits 5-4 are the palette, where: * OBJ0 = 0b00, @@ -442,8 +629,8 @@ struct gb_s * \param line Line to draw pixels on. This is * guaranteed to be between 0-144 inclusive. */ - void (*lcd_draw_line)(struct gb_s*, - const uint8_t pixels[static 160], + void (*lcd_draw_line)(struct gb_s *gb, + const uint8_t *pixels, const uint_fast8_t line); /* Palettes */ @@ -454,10 +641,35 @@ struct gb_s uint8_t WY; /* Only support 30fps frame skip. */ - unsigned int frame_skip_count : 1; - unsigned int interlace_count : 1; + uint8_t frame_skip_count : 1; + uint8_t interlace_count : 1; } display; +#if PEANUT_FULL_GBC_SUPPORT + /* Game Boy Color Mode*/ + struct { + uint8_t cgbMode; + uint8_t doubleSpeed; + uint8_t doubleSpeedPrep; + uint8_t wramBank; + uint16_t wramBankOffset; + uint8_t vramBank; + uint16_t vramBankOffset; + uint16_t fixPalette[0x40]; //BG then OAM palettes fixed for the screen + uint8_t OAMPalette[0x40]; + uint8_t BGPalette[0x40]; + uint8_t OAMPaletteID; + uint8_t BGPaletteID; + uint8_t OAMPaletteInc; + uint8_t BGPaletteInc; + uint8_t dmaActive; + uint8_t dmaMode; + uint8_t dmaSize; + uint16_t dmaSource; + uint16_t dmaDest; + } cgb; +#endif + /** * Variables that may be modified directly by the front-end. * This method seems to be easier and possibly less overhead than @@ -470,21 +682,21 @@ struct gb_s /* Set to enable interlacing. Interlacing will start immediately * (at the next line drawing). */ - unsigned int interlace : 1; - unsigned int frame_skip : 1; + uint8_t interlace : 1; + uint8_t frame_skip : 1; union { struct { - unsigned int a : 1; - unsigned int b : 1; - unsigned int select : 1; - unsigned int start : 1; - unsigned int right : 1; - unsigned int left : 1; - unsigned int up : 1; - unsigned int down : 1; + uint8_t a : 1; + uint8_t b : 1; + uint8_t select : 1; + uint8_t start : 1; + uint8_t right : 1; + uint8_t left : 1; + uint8_t up : 1; + uint8_t down : 1; } joypad_bits; uint8_t joypad; }; @@ -494,65 +706,59 @@ struct gb_s } direct; }; -/** - * Tick the internal RTC by one second. - * This was taken from SameBoy, which is released under MIT Licence. - */ -void gb_tick_rtc(struct gb_s *gb) -{ - /* is timer running? */ - if((gb->cart_rtc[4] & 0x40) == 0) - { - if(++gb->rtc_bits.sec == 60) - { - gb->rtc_bits.sec = 0; - - if(++gb->rtc_bits.min == 60) - { - gb->rtc_bits.min = 0; - - if(++gb->rtc_bits.hour == 24) - { - gb->rtc_bits.hour = 0; - - if(++gb->rtc_bits.yday == 0) - { - if(gb->rtc_bits.high & 1) /* Bit 8 of days*/ - { - gb->rtc_bits.high |= 0x80; /* Overflow bit */ - } - - gb->rtc_bits.high ^= 1; - } - } - } - } - } -} - -/** - * Set initial values in RTC. - * Should be called after gb_init(). - */ -void gb_set_rtc(struct gb_s *gb, const struct tm * const time) -{ - gb->cart_rtc[0] = time->tm_sec; - gb->cart_rtc[1] = time->tm_min; - gb->cart_rtc[2] = time->tm_hour; - gb->cart_rtc[3] = time->tm_yday & 0xFF; /* Low 8 bits of day counter. */ - gb->cart_rtc[4] = time->tm_yday >> 8; /* High 1 bit of day counter. */ -} +#ifndef PEANUT_GB_HEADER_ONLY + +#define IO_JOYP 0x00 +#define IO_SB 0x01 +#define IO_SC 0x02 +#define IO_DIV 0x04 +#define IO_TIMA 0x05 +#define IO_TMA 0x06 +#define IO_TAC 0x07 +#define IO_IF 0x0F +#define IO_BOOT 0x50 +#define IO_LCDC 0x40 +#define IO_STAT 0x41 +#define IO_SCY 0x42 +#define IO_SCX 0x43 +#define IO_LY 0x44 +#define IO_LYC 0x45 +#define IO_DMA 0x46 +#define IO_BGP 0x47 +#define IO_OBP0 0x48 +#define IO_OBP1 0x49 +#define IO_WY 0x4A +#define IO_WX 0x4B +#define IO_BANK 0x50 +#define IO_IE 0xFF + +#define IO_TAC_RATE_MASK 0x3 +#define IO_TAC_ENABLE_MASK 0x4 + +/* LCD Mode defines. */ +#define IO_STAT_MODE_HBLANK 0 +#define IO_STAT_MODE_VBLANK 1 +#define IO_STAT_MODE_SEARCH_OAM 2 +#define IO_STAT_MODE_SEARCH_TRANSFER 3 +#define IO_STAT_MODE_VBLANK_OR_TRANSFER_MASK 0x1 /** * Internal function used to read bytes. + * addr is host platform endian. */ -uint8_t __gb_read(struct gb_s *gb, const uint_fast16_t addr) +uint8_t __gb_read(struct gb_s *gb, uint16_t addr) { - switch(addr >> 12) + switch(PEANUT_GB_GET_MSN16(addr)) { case 0x0: + /* IO_BANK is only set to 1 if gb->gb_bootrom_read was not NULL + * on reset. */ + if(gb->hram_io[IO_BANK] == 0 && addr < 0x0100) + { + return gb->gb_bootrom_read(gb, addr); + } - /* TODO: BIOS support. */ + /* Fallthrough */ case 0x1: case 0x2: case 0x3: @@ -570,14 +776,25 @@ uint8_t __gb_read(struct gb_s *gb, const uint_fast16_t addr) case 0x8: case 0x9: +#if PEANUT_FULL_GBC_SUPPORT + return gb->vram[addr - gb->cgb.vramBankOffset]; +#else return gb->vram[addr - VRAM_ADDR]; - +#endif case 0xA: case 0xB: - if(gb->cart_ram && gb->enable_cart_ram) + if(gb->mbc == 3 && gb->cart_ram_bank >= 0x08) + { + return gb->cart_rtc[gb->cart_ram_bank - 0x08]; + } + else if(gb->cart_ram && gb->enable_cart_ram) { - if(gb->mbc == 3 && gb->cart_ram_bank >= 0x08) - return gb->cart_rtc[gb->cart_ram_bank - 0x08]; + if(gb->mbc == 2) + { + /* Only 9 bits are available in address. */ + addr &= 0x1FF; + return gb->gb_cart_ram_read(gb, addr); + } else if((gb->cart_mode_select || gb->mbc != 1) && gb->cart_ram_bank < gb->num_ram_banks) { @@ -588,153 +805,136 @@ uint8_t __gb_read(struct gb_s *gb, const uint_fast16_t addr) return gb->gb_cart_ram_read(gb, addr - CART_RAM_ADDR); } - return 0; + return 0xFF; case 0xC: - return gb->wram[addr - WRAM_0_ADDR]; - case 0xD: - return gb->wram[addr - WRAM_1_ADDR + WRAM_BANK_SIZE]; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode && addr >= WRAM_1_ADDR) + return gb->wram[addr - gb->cgb.wramBankOffset]; +#endif + return gb->wram[addr - WRAM_0_ADDR]; case 0xE: return gb->wram[addr - ECHO_ADDR]; case 0xF: if(addr < OAM_ADDR) +#if PEANUT_FULL_GBC_SUPPORT + return gb->wram[(addr - 0x2000) - gb->cgb.wramBankOffset]; +#else return gb->wram[addr - ECHO_ADDR]; +#endif if(addr < UNUSED_ADDR) return gb->oam[addr - OAM_ADDR]; - /* Unusable memory area. Reading from this area returns 0.*/ + /* Unusable memory area. Reading from this area returns 0xFF.*/ if(addr < IO_ADDR) return 0xFF; - /* HRAM */ - if(HRAM_ADDR <= addr && addr < INTR_EN_ADDR) - return gb->hram[addr - HRAM_ADDR]; - + /* APU registers. */ if((addr >= 0xFF10) && (addr <= 0xFF3F)) { #if ENABLE_SOUND return audio_read(addr); #else - return 1; + static const uint8_t ortab[] = { + 0x80, 0x3f, 0x00, 0xff, 0xbf, + 0xff, 0x3f, 0x00, 0xff, 0xbf, + 0x7f, 0xff, 0x9f, 0xff, 0xbf, + 0xff, 0xff, 0x00, 0x00, 0xbf, + 0x00, 0x00, 0x70, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + return gb->hram_io[addr - IO_ADDR] | ortab[addr - IO_ADDR]; #endif } +#if PEANUT_FULL_GBC_SUPPORT /* IO and Interrupts. */ - switch(addr & 0xFF) + switch (addr & 0xFF) { - /* IO Registers */ - case 0x00: - return 0xC0 | gb->gb_reg.P1; - - case 0x01: - return gb->gb_reg.SB; - - case 0x02: - return gb->gb_reg.SC; - - /* Timer Registers */ - case 0x04: - return gb->gb_reg.DIV; - - case 0x05: - return gb->gb_reg.TIMA; - - case 0x06: - return gb->gb_reg.TMA; - - case 0x07: - return gb->gb_reg.TAC; - - /* Interrupt Flag Register */ - case 0x0F: - return gb->gb_reg.IF; - - /* LCD Registers */ - case 0x40: - return gb->gb_reg.LCDC; - - case 0x41: - return (gb->gb_reg.STAT & STAT_USER_BITS) | - (gb->gb_reg.LCDC & LCDC_ENABLE ? gb->lcd_mode : LCD_VBLANK); - - case 0x42: - return gb->gb_reg.SCY; - - case 0x43: - return gb->gb_reg.SCX; - - case 0x44: - return gb->gb_reg.LY; - - case 0x45: - return gb->gb_reg.LYC; - - /* DMA Register */ - case 0x46: - return gb->gb_reg.DMA; - - /* DMG Palette Registers */ - case 0x47: - return gb->gb_reg.BGP; - - case 0x48: - return gb->gb_reg.OBP0; - - case 0x49: - return gb->gb_reg.OBP1; - - /* Window Position Registers */ - case 0x4A: - return gb->gb_reg.WY; - - case 0x4B: - return gb->gb_reg.WX; - - /* Interrupt Enable Register */ - case 0xFF: - return gb->gb_reg.IE; - - /* Unused registers return 1 */ + /* Speed Switch*/ + case 0x4D: + return (gb->cgb.doubleSpeed << 7) + gb->cgb.doubleSpeedPrep; + /* CGB VRAM Bank*/ + case 0x4F: + return gb->cgb.vramBank | 0xFE; + /* CGB DMA*/ + case 0x51: + return (gb->cgb.dmaSource >> 8); + case 0x52: + return (gb->cgb.dmaSource & 0xF0); + case 0x53: + return (gb->cgb.dmaDest >> 8); + case 0x54: + return (gb->cgb.dmaDest & 0xF0); + case 0x55: + return (gb->cgb.dmaActive << 7) | (gb->cgb.dmaSize - 1); + /* IR Register*/ + case 0x56: + return gb->hram_io[0x56]; + /* CGB BG Palette Index*/ + case 0x68: + return (gb->cgb.BGPaletteID & 0x3F) + (gb->cgb.BGPaletteInc << 7); + /* CGB BG Palette*/ + case 0x69: + return gb->cgb.BGPalette[(gb->cgb.BGPaletteID & 0x3F)]; + /* CGB OAM Palette Index*/ + case 0x6A: + return (gb->cgb.OAMPaletteID & 0x3F) + (gb->cgb.OAMPaletteInc << 7); + /* CGB OAM Palette*/ + case 0x6B: + return gb->cgb.OAMPalette[(gb->cgb.OAMPaletteID & 0x3F)]; + /* CGB WRAM Bank*/ + case 0x70: + return gb->cgb.wramBank; default: - return 0xFF; +#endif + /* HRAM */ + if(addr >= IO_ADDR) + return gb->hram_io[addr - IO_ADDR]; +#if PEANUT_FULL_GBC_SUPPORT } +#endif } + + /* Return address that caused read error. */ (gb->gb_error)(gb, GB_INVALID_READ, addr); - return 0xFF; + PGB_UNREACHABLE(); } /** * Internal function used to write bytes. */ -void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) +void __gb_write(struct gb_s *gb, uint_fast16_t addr, uint8_t val) { - switch(addr >> 12) + switch(PEANUT_GB_GET_MSN16(addr)) { case 0x0: case 0x1: - if(gb->mbc == 2 && addr & 0x10) - return; - else if(gb->mbc > 0 && gb->cart_ram) + /* Set RAM enable bit. MBC2 is handled in fall-through. */ + if(gb->mbc > 0 && gb->mbc != 2 && gb->cart_ram) + { gb->enable_cart_ram = ((val & 0x0F) == 0x0A); + return; + } - return; - + /* Intentional fall through. */ case 0x2: if(gb->mbc == 5) { gb->selected_rom_bank = (gb->selected_rom_bank & 0x100) | val; gb->selected_rom_bank = - gb->selected_rom_bank % gb->num_rom_banks; + gb->selected_rom_bank & gb->num_rom_banks_mask; return; } /* Intentional fall through. */ - case 0x3: if(gb->mbc == 1) { @@ -744,12 +944,22 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) if((gb->selected_rom_bank & 0x1F) == 0x00) gb->selected_rom_bank++; } - else if(gb->mbc == 2 && addr & 0x10) + else if(gb->mbc == 2) { - gb->selected_rom_bank = val & 0x0F; - - if(!gb->selected_rom_bank) - gb->selected_rom_bank++; + /* If bit 8 is 1, then set ROM bank number. */ + if(addr & 0x100) + { + gb->selected_rom_bank = val & 0x0F; + /* Setting ROM bank to 0, sets it to 1. */ + if(!gb->selected_rom_bank) + gb->selected_rom_bank++; + } + /* Otherwise set whether RAM is enabled or not. */ + else + { + gb->enable_cart_ram = ((val & 0x0F) == 0x0A); + return; + } } else if(gb->mbc == 3) { @@ -761,7 +971,7 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) else if(gb->mbc == 5) gb->selected_rom_bank = (val & 0x01) << 8 | (gb->selected_rom_bank & 0xFF); - gb->selected_rom_bank = gb->selected_rom_bank % gb->num_rom_banks; + gb->selected_rom_bank = gb->selected_rom_bank & gb->num_rom_banks_mask; return; case 0x4: @@ -770,7 +980,7 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) { gb->cart_ram_bank = (val & 3); gb->selected_rom_bank = ((val & 3) << 5) | (gb->selected_rom_bank & 0x1F); - gb->selected_rom_bank = gb->selected_rom_bank % gb->num_rom_banks; + gb->selected_rom_bank = gb->selected_rom_bank & gb->num_rom_banks_mask; } else if(gb->mbc == 3) gb->cart_ram_bank = val; @@ -786,15 +996,30 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) case 0x8: case 0x9: +#if PEANUT_FULL_GBC_SUPPORT + gb->vram[addr - gb->cgb.vramBankOffset] = val; +#else gb->vram[addr - VRAM_ADDR] = val; +#endif return; case 0xA: case 0xB: - if(gb->cart_ram && gb->enable_cart_ram) + if(gb->mbc == 3 && gb->cart_ram_bank >= 0x08) { - if(gb->mbc == 3 && gb->cart_ram_bank >= 0x08) - gb->cart_rtc[gb->cart_ram_bank - 0x08] = val; + gb->cart_rtc[gb->cart_ram_bank - 0x08] = val; + } + /* Do not write to RAM if unavailable or disabled. */ + else if(gb->cart_ram && gb->enable_cart_ram) + { + if(gb->mbc == 2) + { + /* Only 9 bits are available in address. */ + addr &= 0x1FF; + /* Data is only 4 bits wide in MBC2 RAM. */ + val &= 0x0F; + gb->gb_cart_ram_write(gb, addr, val); + } else if(gb->cart_mode_select && gb->cart_ram_bank < gb->num_ram_banks) { @@ -812,7 +1037,11 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) return; case 0xD: +#if PEANUT_FULL_GBC_SUPPORT + gb->wram[addr - gb->cgb.wramBankOffset] = val; +#else gb->wram[addr - WRAM_1_ADDR + WRAM_BANK_SIZE] = val; +#endif return; case 0xE: @@ -822,7 +1051,11 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) case 0xF: if(addr < OAM_ADDR) { +#if PEANUT_FULL_GBC_SUPPORT + gb->wram[(addr - 0x2000) - gb->cgb.wramBankOffset] = val; +#else gb->wram[addr - ECHO_ADDR] = val; +#endif return; } @@ -838,7 +1071,7 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) if(HRAM_ADDR <= addr && addr < INTR_EN_ADDR) { - gb->hram[addr - HRAM_ADDR] = val; + gb->hram_io[addr - IO_ADDR] = val; return; } @@ -846,162 +1079,278 @@ void __gb_write(struct gb_s *gb, const uint_fast16_t addr, const uint8_t val) { #if ENABLE_SOUND audio_write(addr, val); +#else + gb->hram_io[addr - IO_ADDR] = val; #endif return; } - +#if PEANUT_FULL_GBC_SUPPORT + uint16_t fixPaletteTemp; +#endif /* IO and Interrupts. */ - switch(addr & 0xFF) + switch(PEANUT_GB_GET_LSB16(addr)) { /* Joypad */ case 0x00: /* Only bits 5 and 4 are R/W. * The lower bits are overwritten later, and the two most * significant bits are unused. */ - gb->gb_reg.P1 = val; + gb->hram_io[IO_JOYP] = val; /* Direction keys selected */ - if((gb->gb_reg.P1 & 0b010000) == 0) - gb->gb_reg.P1 |= (gb->direct.joypad >> 4); + if((gb->hram_io[IO_JOYP] & 0x10) == 0) + gb->hram_io[IO_JOYP] |= (gb->direct.joypad >> 4); /* Button keys selected */ else - gb->gb_reg.P1 |= (gb->direct.joypad & 0x0F); + gb->hram_io[IO_JOYP] |= (gb->direct.joypad & 0x0F); return; /* Serial */ case 0x01: - gb->gb_reg.SB = val; + gb->hram_io[IO_SB] = val; return; case 0x02: - gb->gb_reg.SC = val; + gb->hram_io[IO_SC] = val; return; /* Timer Registers */ case 0x04: - gb->gb_reg.DIV = 0x00; + gb->hram_io[IO_DIV] = 0x00; return; case 0x05: - gb->gb_reg.TIMA = val; + gb->hram_io[IO_TIMA] = val; return; case 0x06: - gb->gb_reg.TMA = val; + gb->hram_io[IO_TMA] = val; return; case 0x07: - gb->gb_reg.TAC = val; + gb->hram_io[IO_TAC] = val; return; /* Interrupt Flag Register */ case 0x0F: - gb->gb_reg.IF = (val | 0b11100000); + gb->hram_io[IO_IF] = (val | 0xE0); return; /* LCD Registers */ case 0x40: - gb->gb_reg.LCDC = val; + { + uint8_t lcd_enabled; - /* LY fixed to 0 when LCD turned off. */ - if((gb->gb_reg.LCDC & LCDC_ENABLE) == 0) - { - /* Do not turn off LCD outside of VBLANK. This may - * happen due to poor timing in this emulator. */ - if(gb->lcd_mode != LCD_VBLANK) - { - gb->gb_reg.LCDC |= LCDC_ENABLE; - return; - } + /* Check if LCD is already enabled. */ + lcd_enabled = (gb->hram_io[IO_LCDC] & LCDC_ENABLE); + + gb->hram_io[IO_LCDC] = val; - gb->gb_reg.STAT = (gb->gb_reg.STAT & ~0x03) | LCD_VBLANK; - gb->gb_reg.LY = 0; + /* Check if LCD is going to be switched on. */ + if (!lcd_enabled && (val & LCDC_ENABLE)) + { + gb->lcd_blank = 1; + } + /* Check if LCD is being switched off. */ + else if (lcd_enabled && !(val & LCDC_ENABLE)) + { + /* Peanut-GB will happily turn off LCD outside + * of VBLANK even though this damages real + * hardware. */ + + /* Set LCD to Mode 0. */ + gb->hram_io[IO_STAT] = + (gb->hram_io[IO_STAT] & ~STAT_MODE) | + IO_STAT_MODE_HBLANK; + /* LY fixed to 0 when LCD turned off. */ + gb->hram_io[IO_LY] = 0; + /* Reset LCD timer. */ gb->counter.lcd_count = 0; } - return; + } case 0x41: - gb->gb_reg.STAT = (val & 0b01111000); + gb->hram_io[IO_STAT] = (val & STAT_USER_BITS) | (gb->hram_io[IO_STAT] & STAT_MODE); return; case 0x42: - gb->gb_reg.SCY = val; + gb->hram_io[IO_SCY] = val; return; case 0x43: - gb->gb_reg.SCX = val; + gb->hram_io[IO_SCX] = val; return; /* LY (0xFF44) is read only. */ case 0x45: - gb->gb_reg.LYC = val; + gb->hram_io[IO_LYC] = val; return; /* DMA Register */ case 0x46: - gb->gb_reg.DMA = (val % 0xF1); - - for(uint8_t i = 0; i < OAM_SIZE; i++) - gb->oam[i] = __gb_read(gb, (gb->gb_reg.DMA << 8) + i); + { + uint16_t dma_addr; + uint16_t i; +#if PEANUT_FULL_GBC_SUPPORT + dma_addr = (uint_fast16_t)(val % 0xF1) << 8; + gb->hram_io[IO_DMA] = (val % 0xF1); +#else + dma_addr = (uint_fast16_t)val << 8; + gb->hram_io[IO_DMA] = val; +#endif + for(i = 0; i < OAM_SIZE; i++) + { + gb->oam[i] = __gb_read(gb, dma_addr + i); + } return; + } /* DMG Palette Registers */ case 0x47: - gb->gb_reg.BGP = val; - gb->display.bg_palette[0] = (gb->gb_reg.BGP & 0x03); - gb->display.bg_palette[1] = (gb->gb_reg.BGP >> 2) & 0x03; - gb->display.bg_palette[2] = (gb->gb_reg.BGP >> 4) & 0x03; - gb->display.bg_palette[3] = (gb->gb_reg.BGP >> 6) & 0x03; + gb->hram_io[IO_BGP] = val; + gb->display.bg_palette[0] = (gb->hram_io[IO_BGP] & 0x03); + gb->display.bg_palette[1] = (gb->hram_io[IO_BGP] >> 2) & 0x03; + gb->display.bg_palette[2] = (gb->hram_io[IO_BGP] >> 4) & 0x03; + gb->display.bg_palette[3] = (gb->hram_io[IO_BGP] >> 6) & 0x03; return; case 0x48: - gb->gb_reg.OBP0 = val; - gb->display.sp_palette[0] = (gb->gb_reg.OBP0 & 0x03); - gb->display.sp_palette[1] = (gb->gb_reg.OBP0 >> 2) & 0x03; - gb->display.sp_palette[2] = (gb->gb_reg.OBP0 >> 4) & 0x03; - gb->display.sp_palette[3] = (gb->gb_reg.OBP0 >> 6) & 0x03; + gb->hram_io[IO_OBP0] = val; + gb->display.sp_palette[0] = (gb->hram_io[IO_OBP0] & 0x03); + gb->display.sp_palette[1] = (gb->hram_io[IO_OBP0] >> 2) & 0x03; + gb->display.sp_palette[2] = (gb->hram_io[IO_OBP0] >> 4) & 0x03; + gb->display.sp_palette[3] = (gb->hram_io[IO_OBP0] >> 6) & 0x03; return; case 0x49: - gb->gb_reg.OBP1 = val; - gb->display.sp_palette[4] = (gb->gb_reg.OBP1 & 0x03); - gb->display.sp_palette[5] = (gb->gb_reg.OBP1 >> 2) & 0x03; - gb->display.sp_palette[6] = (gb->gb_reg.OBP1 >> 4) & 0x03; - gb->display.sp_palette[7] = (gb->gb_reg.OBP1 >> 6) & 0x03; + gb->hram_io[IO_OBP1] = val; + gb->display.sp_palette[4] = (gb->hram_io[IO_OBP1] & 0x03); + gb->display.sp_palette[5] = (gb->hram_io[IO_OBP1] >> 2) & 0x03; + gb->display.sp_palette[6] = (gb->hram_io[IO_OBP1] >> 4) & 0x03; + gb->display.sp_palette[7] = (gb->hram_io[IO_OBP1] >> 6) & 0x03; return; /* Window Position Registers */ case 0x4A: - gb->gb_reg.WY = val; + gb->hram_io[IO_WY] = val; return; case 0x4B: - gb->gb_reg.WX = val; + gb->hram_io[IO_WX] = val; return; +#if PEANUT_FULL_GBC_SUPPORT + /* Prepare Speed Switch*/ + case 0x4D: + gb->cgb.doubleSpeedPrep = val & 1; + return; + + /* CGB VRAM Bank*/ + case 0x4F: + gb->cgb.vramBank = val & 0x01; + if(gb->cgb.cgbMode) gb->cgb.vramBankOffset = VRAM_ADDR - (gb->cgb.vramBank << 13); + return; +#endif /* Turn off boot ROM */ case 0x50: - gb->gb_bios_enable = 0; + gb->hram_io[IO_BANK] = val; + return; +#if PEANUT_FULL_GBC_SUPPORT + /* DMA Register */ + case 0x51: + gb->cgb.dmaSource = (gb->cgb.dmaSource & 0xFF) + (val << 8); + return; + case 0x52: + gb->cgb.dmaSource = (gb->cgb.dmaSource & 0xFF00) + val; + return; + case 0x53: + gb->cgb.dmaDest = (gb->cgb.dmaDest & 0xFF) + (val << 8); + return; + case 0x54: + gb->cgb.dmaDest = (gb->cgb.dmaDest & 0xFF00) + val; return; - /* Interrupt Enable Register */ - case 0xFF: - gb->gb_reg.IE = val; + /* DMA Register*/ + case 0x55: + gb->cgb.dmaSize = (val & 0x7F) + 1; + gb->cgb.dmaMode = val >> 7; + //DMA GBC + if(gb->cgb.dmaActive) + { // Only transfer if dma is not active (=1) otherwise treat it as a termination + if(gb->cgb.cgbMode && (!gb->cgb.dmaMode)) + { + for (int i = 0; i < (gb->cgb.dmaSize << 4); i++) + { + __gb_write(gb, ((gb->cgb.dmaDest & 0x1FF0) | 0x8000) + i, __gb_read(gb, (gb->cgb.dmaSource & 0xFFF0) + i)); + } + gb->cgb.dmaSource += (gb->cgb.dmaSize << 4); + gb->cgb.dmaDest += (gb->cgb.dmaSize << 4); + gb->cgb.dmaSize = 0; + } + } + gb->cgb.dmaActive = gb->cgb.dmaMode ^ 1; // set active if it's an HBlank DMA return; - } - } - (gb->gb_error)(gb, GB_INVALID_WRITE, addr); -} + /* IR Register*/ + case 0x56: + gb->hram_io[0x56] = val; + return; -uint8_t __gb_execute_cb(struct gb_s *gb) -{ - uint8_t inst_cycles; - uint8_t cbop = __gb_read(gb, gb->cpu_reg.pc++); - uint8_t r = (cbop & 0x7); + /* CGB BG Palette Index*/ + case 0x68: + gb->cgb.BGPaletteID = val & 0x3F; + gb->cgb.BGPaletteInc = val >> 7; + return; + + /* CGB BG Palette*/ + case 0x69: + gb->cgb.BGPalette[(gb->cgb.BGPaletteID & 0x3F)] = val; + fixPaletteTemp = (gb->cgb.BGPalette[(gb->cgb.BGPaletteID & 0x3E) + 1] << 8) + (gb->cgb.BGPalette[(gb->cgb.BGPaletteID & 0x3E)]); + gb->cgb.fixPalette[((gb->cgb.BGPaletteID & 0x3E) >> 1)] = ((fixPaletteTemp & 0x7C00) >> 10) | (fixPaletteTemp & 0x03E0) | ((fixPaletteTemp & 0x001F) << 10); // swap Red and Blue + if(gb->cgb.BGPaletteInc) gb->cgb.BGPaletteID = (++gb->cgb.BGPaletteID) & 0x3F; + return; + + /* CGB OAM Palette Index*/ + case 0x6A: + gb->cgb.OAMPaletteID = val & 0x3F; + gb->cgb.OAMPaletteInc = val >> 7; + return; + + /* CGB OAM Palette*/ + case 0x6B: + gb->cgb.OAMPalette[(gb->cgb.OAMPaletteID & 0x3F)] = val; + fixPaletteTemp = (gb->cgb.OAMPalette[(gb->cgb.OAMPaletteID & 0x3E) + 1] << 8) + (gb->cgb.OAMPalette[(gb->cgb.OAMPaletteID & 0x3E)]); + gb->cgb.fixPalette[0x20 + ((gb->cgb.OAMPaletteID & 0x3E) >> 1)] = ((fixPaletteTemp & 0x7C00) >> 10) | (fixPaletteTemp & 0x03E0) | ((fixPaletteTemp & 0x001F) << 10); // swap Red and Blue + if(gb->cgb.OAMPaletteInc) gb->cgb.OAMPaletteID = (++gb->cgb.OAMPaletteID) & 0x3F; + return; + + /* CGB WRAM Bank*/ + case 0x70: + gb->cgb.wramBank = val; + gb->cgb.wramBankOffset = WRAM_1_ADDR - (1 << 12); + if(gb->cgb.cgbMode && (gb->cgb.wramBank & 7) > 0) gb->cgb.wramBankOffset = WRAM_1_ADDR - ((gb->cgb.wramBank & 7) << 12); + return; +#endif + + /* Interrupt Enable Register */ + case 0xFF: + gb->hram_io[IO_IE] = val; + return; + } + } + + /* Invalid writes are ignored. */ + return; +} + +uint8_t __gb_execute_cb(struct gb_s *gb) +{ + uint8_t inst_cycles; + uint8_t cbop = __gb_read(gb, gb->cpu_reg.pc.reg++); + uint8_t r = (cbop & 0x7); uint8_t b = (cbop >> 3) & 0x7; uint8_t d = (cbop >> 3) & 0x1; uint8_t val; @@ -1024,31 +1373,31 @@ uint8_t __gb_execute_cb(struct gb_s *gb) switch(r) { case 0: - val = gb->cpu_reg.b; + val = gb->cpu_reg.bc.bytes.b; break; case 1: - val = gb->cpu_reg.c; + val = gb->cpu_reg.bc.bytes.c; break; case 2: - val = gb->cpu_reg.d; + val = gb->cpu_reg.de.bytes.d; break; case 3: - val = gb->cpu_reg.e; + val = gb->cpu_reg.de.bytes.e; break; case 4: - val = gb->cpu_reg.h; + val = gb->cpu_reg.hl.bytes.h; break; case 5: - val = gb->cpu_reg.l; + val = gb->cpu_reg.hl.bytes.l; break; case 6: - val = __gb_read(gb, gb->cpu_reg.hl); + val = __gb_read(gb, gb->cpu_reg.hl.reg); break; /* Only values 0-7 are possible here, so we make the final case @@ -1157,31 +1506,31 @@ uint8_t __gb_execute_cb(struct gb_s *gb) switch(r) { case 0: - gb->cpu_reg.b = val; + gb->cpu_reg.bc.bytes.b = val; break; case 1: - gb->cpu_reg.c = val; + gb->cpu_reg.bc.bytes.c = val; break; case 2: - gb->cpu_reg.d = val; + gb->cpu_reg.de.bytes.d = val; break; case 3: - gb->cpu_reg.e = val; + gb->cpu_reg.de.bytes.e = val; break; case 4: - gb->cpu_reg.h = val; + gb->cpu_reg.hl.bytes.h = val; break; case 5: - gb->cpu_reg.l = val; + gb->cpu_reg.hl.bytes.l = val; break; case 6: - __gb_write(gb, gb->cpu_reg.hl, val); + __gb_write(gb, gb->cpu_reg.hl.reg, val); break; case 7: @@ -1193,6 +1542,27 @@ uint8_t __gb_execute_cb(struct gb_s *gb) } #if ENABLE_LCD +struct sprite_data { + uint8_t sprite_number; + uint8_t x; +}; + +#if PEANUT_GB_HIGH_LCD_ACCURACY +static int compare_sprites(const void *in1, const void *in2) +{ + const struct sprite_data *sd1, *sd2; + int x_res; + + sd1 = (struct sprite_data *)in1; + sd2 = (struct sprite_data *)in2; + x_res = (int)sd1->x - (int)sd2->x; + if(x_res != 0) + return x_res; + + return (int)sd1->sprite_number - (int)sd2->sprite_number; +} +#endif + void __gb_draw_line(struct gb_s *gb) { uint8_t pixels[160] = {0}; @@ -1204,19 +1574,22 @@ void __gb_draw_line(struct gb_s *gb) if(gb->direct.frame_skip && !gb->display.frame_skip_count) return; +#if PEANUT_FULL_GBC_SUPPORT + uint8_t pixelsPrio[160] = {0}; //do these pixels have priority over OAM? +#endif /* If interlaced mode is activated, check if we need to draw the current * line. */ if(gb->direct.interlace) { if((gb->display.interlace_count == 0 - && (gb->gb_reg.LY & 1) == 0) + && (gb->hram_io[IO_LY] & 1) == 0) || (gb->display.interlace_count == 1 - && (gb->gb_reg.LY & 1) == 1)) + && (gb->hram_io[IO_LY] & 1) == 1)) { /* Compensate for missing window draw if required. */ - if(gb->gb_reg.LCDC & LCDC_WINDOW_ENABLE - && gb->gb_reg.LY >= gb->display.WY - && gb->gb_reg.WX <= 166) + if(gb->hram_io[IO_LCDC] & LCDC_WINDOW_ENABLE + && gb->hram_io[IO_LY] >= gb->display.WY + && gb->hram_io[IO_WX] <= 166) gb->display.window_clear++; return; @@ -1224,138 +1597,291 @@ void __gb_draw_line(struct gb_s *gb) } /* If background is enabled, draw it. */ - if(gb->gb_reg.LCDC & LCDC_BG_ENABLE) +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode || gb->hram_io[IO_LCDC] & LCDC_BG_ENABLE) +#else + if(gb->hram_io[IO_LCDC] & LCDC_BG_ENABLE) +#endif { + uint8_t bg_y, disp_x, bg_x, idx, py, px, t1, t2; + uint16_t bg_map, tile; + /* Calculate current background line to draw. Constant because * this function draws only this one line each time it is * called. */ - const uint8_t bg_y = gb->gb_reg.LY + gb->gb_reg.SCY; + bg_y = gb->hram_io[IO_LY] + gb->hram_io[IO_SCY]; /* Get selected background map address for first tile * corresponding to current line. * 0x20 (32) is the width of a background tile, and the bit * shift is to calculate the address. */ - const uint16_t bg_map = - ((gb->gb_reg.LCDC & LCDC_BG_MAP) ? + bg_map = + ((gb->hram_io[IO_LCDC] & LCDC_BG_MAP) ? VRAM_BMAP_2 : VRAM_BMAP_1) + (bg_y >> 3) * 0x20; /* The displays (what the player sees) X coordinate, drawn right * to left. */ - uint8_t disp_x = LCD_WIDTH - 1; + disp_x = LCD_WIDTH - 1; /* The X coordinate to begin drawing the background at. */ - uint8_t bg_x = disp_x + gb->gb_reg.SCX; + bg_x = disp_x + gb->hram_io[IO_SCX]; /* Get tile index for current background tile. */ - uint8_t idx = gb->vram[bg_map + (bg_x >> 3)]; + idx = gb->vram[bg_map + (bg_x >> 3)]; +#if PEANUT_FULL_GBC_SUPPORT + uint8_t idxAtt = gb->vram[bg_map + (bg_x >> 3) + 0x2000]; +#endif /* Y coordinate of tile pixel to draw. */ - const uint8_t py = (bg_y & 0x07); + py = (bg_y & 0x07); /* X coordinate of tile pixel to draw. */ - uint8_t px = 7 - (bg_x & 0x07); - - uint16_t tile; + px = 7 - (bg_x & 0x07); /* Select addressing mode. */ - if(gb->gb_reg.LCDC & LCDC_TILE_SELECT) + if(gb->hram_io[IO_LCDC] & LCDC_TILE_SELECT) tile = VRAM_TILES_1 + idx * 0x10; else tile = VRAM_TILES_2 + ((idx + 0x80) % 0x100) * 0x10; - tile += 2 * py; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) + { + if(idxAtt & 0x08) tile += 0x2000; //VRAM bank 2 + if(idxAtt & 0x40) tile += 2 * (7 - py); + } + if(!(idxAtt & 0x40)) + { + tile += 2 * py; + } /* fetch first tile */ - uint8_t t1 = gb->vram[tile] >> px; - uint8_t t2 = gb->vram[tile + 1] >> px; + if(gb->cgb.cgbMode && (idxAtt & 0x20)) + { //Horizantal Flip + t1 = gb->vram[tile] << px; + t2 = gb->vram[tile + 1] << px; + } + else + { + t1 = gb->vram[tile] >> px; + t2 = gb->vram[tile + 1] >> px; + } +#else + tile += 2 * py; + /* fetch first tile */ + t1 = gb->vram[tile] >> px; + t2 = gb->vram[tile + 1] >> px; +#endif for(; disp_x != 0xFF; disp_x--) { + uint8_t c; + if(px == 8) { /* fetch next tile */ px = 0; - bg_x = disp_x + gb->gb_reg.SCX; + bg_x = disp_x + gb->hram_io[IO_SCX]; idx = gb->vram[bg_map + (bg_x >> 3)]; - - if(gb->gb_reg.LCDC & LCDC_TILE_SELECT) +#if PEANUT_FULL_GBC_SUPPORT + idxAtt = gb->vram[bg_map + (bg_x >> 3) + 0x2000]; +#endif + if(gb->hram_io[IO_LCDC] & LCDC_TILE_SELECT) tile = VRAM_TILES_1 + idx * 0x10; else tile = VRAM_TILES_2 + ((idx + 0x80) % 0x100) * 0x10; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) + { + if(idxAtt & 0x08) tile += 0x2000; //VRAM bank 2 + if(idxAtt & 0x40) tile += 2 * (7 - py); + } + if(!(idxAtt & 0x40)) + { + tile += 2 * py; + } +#else tile += 2 * py; +#endif t1 = gb->vram[tile]; t2 = gb->vram[tile + 1]; } /* copy background */ - uint8_t c = (t1 & 0x1) | ((t2 & 0x1) << 1); +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode && (idxAtt & 0x20)) + { //Horizantal Flip + c = (((t1 & 0x80) >> 1) | (t2 & 0x80)) >> 6; + pixels[disp_x] = ((idxAtt & 0x07) << 2) + c; + pixelsPrio[disp_x] = (idxAtt >> 7); + t1 = t1 << 1; + t2 = t2 << 1; + } + else + { + c = (t1 & 0x1) | ((t2 & 0x1) << 1); + if(gb->cgb.cgbMode) + { + pixels[disp_x] = ((idxAtt & 0x07) << 2) + c; + pixelsPrio[disp_x] = (idxAtt >> 7); + } + else + { + pixels[disp_x] = gb->display.bg_palette[c]; +#if PEANUT_GB_12_COLOUR + pixels[disp_x] |= LCD_PALETTE_BG; +#endif + } + t1 = t1 >> 1; + t2 = t2 >> 1; + } +#else + c = (t1 & 0x1) | ((t2 & 0x1) << 1); pixels[disp_x] = gb->display.bg_palette[c]; +#if PEANUT_GB_12_COLOUR pixels[disp_x] |= LCD_PALETTE_BG; +#endif t1 = t1 >> 1; t2 = t2 >> 1; +#endif px++; } } /* draw window */ - if(gb->gb_reg.LCDC & LCDC_WINDOW_ENABLE - && gb->gb_reg.LY >= gb->display.WY - && gb->gb_reg.WX <= 166) + if(gb->hram_io[IO_LCDC] & LCDC_WINDOW_ENABLE + && gb->hram_io[IO_LY] >= gb->display.WY + && gb->hram_io[IO_WX] <= 166) { + uint16_t win_line, tile; + uint8_t disp_x, win_x, py, px, idx, t1, t2, end; + /* Calculate Window Map Address. */ - uint16_t win_line = (gb->gb_reg.LCDC & LCDC_WINDOW_MAP) ? + win_line = (gb->hram_io[IO_LCDC] & LCDC_WINDOW_MAP) ? VRAM_BMAP_2 : VRAM_BMAP_1; win_line += (gb->display.window_clear >> 3) * 0x20; - uint8_t disp_x = LCD_WIDTH - 1; - uint8_t win_x = disp_x - gb->gb_reg.WX + 7; + disp_x = LCD_WIDTH - 1; + win_x = disp_x - gb->hram_io[IO_WX] + 7; // look up tile - uint8_t py = gb->display.window_clear & 0x07; - uint8_t px = 7 - (win_x & 0x07); - uint8_t idx = gb->vram[win_line + (win_x >> 3)]; - - uint16_t tile; + py = gb->display.window_clear & 0x07; + px = 7 - (win_x & 0x07); + idx = gb->vram[win_line + (win_x >> 3)]; +#if PEANUT_FULL_GBC_SUPPORT + uint8_t idxAtt = gb->vram[win_line + (win_x >> 3) + 0x2000]; +#endif - if(gb->gb_reg.LCDC & LCDC_TILE_SELECT) + if(gb->hram_io[IO_LCDC] & LCDC_TILE_SELECT) tile = VRAM_TILES_1 + idx * 0x10; else tile = VRAM_TILES_2 + ((idx + 0x80) % 0x100) * 0x10; - tile += 2 * py; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) + { + if(idxAtt & 0x08) tile += 0x2000; //VRAM bank 2 + if(idxAtt & 0x40) tile += 2 * (7 - py); + } + if(!(idxAtt & 0x40)) + { + tile += 2 * py; + } // fetch first tile - uint8_t t1 = gb->vram[tile] >> px; - uint8_t t2 = gb->vram[tile + 1] >> px; + if(gb->cgb.cgbMode && (idxAtt & 0x20)) + { //Horizantal Flip + t1 = gb->vram[tile] << px; + t2 = gb->vram[tile + 1] << px; + } + else + { + t1 = gb->vram[tile] >> px; + t2 = gb->vram[tile + 1] >> px; + } +#else + tile += 2 * py; + // fetch first tile + t1 = gb->vram[tile] >> px; + t2 = gb->vram[tile + 1] >> px; +#endif // loop & copy window - uint8_t end = (gb->gb_reg.WX < 7 ? 0 : gb->gb_reg.WX - 7) - 1; + end = (gb->hram_io[IO_WX] < 7 ? 0 : gb->hram_io[IO_WX] - 7) - 1; for(; disp_x != end; disp_x--) { + uint8_t c; + if(px == 8) { // fetch next tile px = 0; - win_x = disp_x - gb->gb_reg.WX + 7; + win_x = disp_x - gb->hram_io[IO_WX] + 7; idx = gb->vram[win_line + (win_x >> 3)]; +#if PEANUT_FULL_GBC_SUPPORT + idxAtt = gb->vram[win_line + (win_x >> 3) + 0x2000]; +#endif - if(gb->gb_reg.LCDC & LCDC_TILE_SELECT) + if(gb->hram_io[IO_LCDC] & LCDC_TILE_SELECT) tile = VRAM_TILES_1 + idx * 0x10; else tile = VRAM_TILES_2 + ((idx + 0x80) % 0x100) * 0x10; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) + { + if(idxAtt & 0x08) tile += 0x2000; //VRAM bank 2 + if(idxAtt & 0x40) tile += 2 * (7 - py); + } + if(!(idxAtt & 0x40)) + { + tile += 2 * py; + } +#else tile += 2 * py; +#endif t1 = gb->vram[tile]; t2 = gb->vram[tile + 1]; } // copy window - uint8_t c = (t1 & 0x1) | ((t2 & 0x1) << 1); +#if PEANUT_FULL_GBC_SUPPORT + if(idxAtt & 0x20) + { //Horizantal Flip + c = (((t1 & 0x80) >> 1) | (t2 & 0x80)) >> 6; + pixels[disp_x] = ((idxAtt & 0x07) << 2) + c; + pixelsPrio[disp_x] = (idxAtt >> 7); + t1 = t1 << 1; + t2 = t2 << 1; + } + else + { + c = (t1 & 0x1) | ((t2 & 0x1) << 1); + if(gb->cgb.cgbMode) + { + pixels[disp_x] = ((idxAtt & 0x07) << 2) + c; + pixelsPrio[disp_x] = (idxAtt >> 7); + } + else + { + pixels[disp_x] = gb->display.bg_palette[c]; +#if PEANUT_GB_12_COLOUR + pixels[disp_x] |= LCD_PALETTE_BG; +#endif + } + t1 = t1 >> 1; + t2 = t2 >> 1; + } +#else + c = (t1 & 0x1) | ((t2 & 0x1) << 1); pixels[disp_x] = gb->display.bg_palette[c]; +#if PEANUT_GB_12_COLOUR pixels[disp_x] |= LCD_PALETTE_BG; +#endif t1 = t1 >> 1; t2 = t2 >> 1; +#endif px++; } @@ -1363,50 +1889,111 @@ void __gb_draw_line(struct gb_s *gb) } // draw sprites - if(gb->gb_reg.LCDC & LCDC_OBJ_ENABLE) + if(gb->hram_io[IO_LCDC] & LCDC_OBJ_ENABLE) { - uint8_t count = 0; + uint8_t sprite_number; +#if PEANUT_GB_HIGH_LCD_ACCURACY + uint8_t number_of_sprites = 0; + + struct sprite_data sprites_to_render[NUM_SPRITES]; + + /* Record number of sprites on the line being rendered, limited + * to the maximum number sprites that the Game Boy is able to + * render on each line (10 sprites). */ + for(sprite_number = 0; + sprite_number < PEANUT_GB_ARRAYSIZE(sprites_to_render); + sprite_number++) + { + /* Sprite Y position. */ + uint8_t OY = gb->oam[4 * sprite_number + 0]; + /* Sprite X position. */ + uint8_t OX = gb->oam[4 * sprite_number + 1]; + + /* If sprite isn't on this line, continue. */ + if(gb->hram_io[IO_LY] + + (gb->hram_io[IO_LCDC] & LCDC_OBJ_SIZE ? 0 : 8) >= OY + || gb->hram_io[IO_LY] + 16 < OY) + continue; + + + sprites_to_render[number_of_sprites].sprite_number = sprite_number; + sprites_to_render[number_of_sprites].x = OX; + number_of_sprites++; + } +#if PEANUT_FULL_GBC_SUPPORT + if(!gb->cgb.cgbMode) + { +#endif + /* If maximum number of sprites reached, prioritise X + * coordinate and object location in OAM. */ + qsort(&sprites_to_render[0], number_of_sprites, + sizeof(sprites_to_render[0]), compare_sprites); +#if PEANUT_FULL_GBC_SUPPORT + } +#endif + if(number_of_sprites > MAX_SPRITES_LINE) + number_of_sprites = MAX_SPRITES_LINE; +#endif - for(uint8_t s = NUM_SPRITES - 1; - s != 0xFF /* && count < MAX_SPRITES_LINE */ ; - s--) + /* Render each sprite, from low priority to high priority. */ +#if PEANUT_GB_HIGH_LCD_ACCURACY + /* Render the top ten prioritised sprites on this scanline. */ + for(sprite_number = number_of_sprites - 1; + sprite_number != 0xFF; + sprite_number--) + { + uint8_t s = sprites_to_render[sprite_number].sprite_number; +#else + for (sprite_number = NUM_SPRITES - 1; + sprite_number != 0xFF; + sprite_number--) { + uint8_t s = sprite_number; +#endif + uint8_t py, t1, t2, dir, start, end, shift, disp_x; /* Sprite Y position. */ uint8_t OY = gb->oam[4 * s + 0]; /* Sprite X position. */ uint8_t OX = gb->oam[4 * s + 1]; /* Sprite Tile/Pattern Number. */ uint8_t OT = gb->oam[4 * s + 2] - & (gb->gb_reg.LCDC & LCDC_OBJ_SIZE ? 0xFE : 0xFF); + & (gb->hram_io[IO_LCDC] & LCDC_OBJ_SIZE ? 0xFE : 0xFF); /* Additional attributes. */ uint8_t OF = gb->oam[4 * s + 3]; +#if !PEANUT_GB_HIGH_LCD_ACCURACY /* If sprite isn't on this line, continue. */ - if(gb->gb_reg.LY + - (gb->gb_reg.LCDC & LCDC_OBJ_SIZE ? - 0 : 8) >= OY - || gb->gb_reg.LY + 16 < OY) + if(gb->hram_io[IO_LY] + + (gb->hram_io[IO_LCDC] & LCDC_OBJ_SIZE ? 0 : 8) >= OY || + gb->hram_io[IO_LY] + 16 < OY) continue; - - count++; +#endif /* Continue if sprite not visible. */ if(OX == 0 || OX >= 168) continue; // y flip - uint8_t py = gb->gb_reg.LY - OY + 16; + py = gb->hram_io[IO_LY] - OY + 16; if(OF & OBJ_FLIP_Y) - py = (gb->gb_reg.LCDC & LCDC_OBJ_SIZE ? 15 : 7) - py; + py = (gb->hram_io[IO_LCDC] & LCDC_OBJ_SIZE ? 15 : 7) - py; // fetch the tile - uint8_t t1 = gb->vram[VRAM_TILES_1 + OT * 0x10 + 2 * py]; - uint8_t t2 = gb->vram[VRAM_TILES_1 + OT * 0x10 + 2 * py + 1]; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) + { + t1 = gb->vram[((OF & OBJ_BANK) << 10) + VRAM_TILES_1 + OT * 0x10 + 2 * py]; + t2 = gb->vram[((OF & OBJ_BANK) << 10) + VRAM_TILES_1 + OT * 0x10 + 2 * py + 1]; + } + else +#endif + { + t1 = gb->vram[VRAM_TILES_1 + OT * 0x10 + 2 * py]; + t2 = gb->vram[VRAM_TILES_1 + OT * 0x10 + 2 * py + 1]; + } // handle x flip - uint8_t dir, start, end, shift; - if(OF & OBJ_FLIP_X) { dir = 1; @@ -1416,7 +2003,7 @@ void __gb_draw_line(struct gb_s *gb) } else { - dir = -1; + dir = (uint8_t)-1; start = MIN(OX, LCD_WIDTH) - 1; end = (OX < 8 ? 0 : OX - 8) - 1; shift = OX - (start + 1); @@ -1426,30 +2013,43 @@ void __gb_draw_line(struct gb_s *gb) t1 >>= shift; t2 >>= shift; - for(uint8_t disp_x = start; disp_x != end; disp_x += dir) + /* TODO: Put for loop within the to if statements + * because the BG priority bit will be the same for + * all the pixels in the tile. */ + for(disp_x = start; disp_x != end; disp_x += dir) { uint8_t c = (t1 & 0x1) | ((t2 & 0x1) << 1); // check transparency / sprite overlap / background overlap -#if 0 +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) + { + uint8_t isBackgroundDisabled = c && !(gb->hram_io[IO_LCDC] & LCDC_BG_ENABLE); + uint8_t isPixelPriorityNonConflicting = c && + !(pixelsPrio[disp_x] && (pixels[disp_x] & 0x3)) && + !((OF & OBJ_PRIORITY) && (pixels[disp_x] & 0x3)); - if(c - // && OX <= fx[disp_x] - && !((OF & OBJ_PRIORITY) - && ((pixels[disp_x] & 0x3) - && fx[disp_x] == 0xFE))) -#else - if(c && !(OF & OBJ_PRIORITY - && pixels[disp_x] & 0x3)) + if(isBackgroundDisabled || isPixelPriorityNonConflicting) + { + /* Set pixel colour. */ + pixels[disp_x] = ((OF & OBJ_CGB_PALETTE) << 2) + c + 0x20; // add 0x20 to differentiate from BG + } + } + else #endif + if(c && !(OF & OBJ_PRIORITY && !((pixels[disp_x] & 0x3) == gb->display.bg_palette[0]))) { /* Set pixel colour. */ pixels[disp_x] = (OF & OBJ_PALETTE) - ? gb->display.sp_palette[c + 4] - : gb->display.sp_palette[c]; + ? gb->display.sp_palette[c + 4] + : gb->display.sp_palette[c]; +#if PEANUT_GB_12_COLOUR /* Set pixel palette (OBJ0 or OBJ1). */ pixels[disp_x] |= (OF & OBJ_PALETTE); +#endif +#if PEANUT_FULL_GBC_SUPPORT /* Deselect BG palette. */ pixels[disp_x] &= ~LCD_PALETTE_BG; +#endif } t1 = t1 >> 1; @@ -1458,7 +2058,7 @@ void __gb_draw_line(struct gb_s *gb) } } - gb->display.lcd_draw_line(gb, pixels, gb->gb_reg.LY); + gb->display.lcd_draw_line(gb, pixels, gb->hram_io[IO_LY]); } #endif @@ -1467,7 +2067,8 @@ void __gb_draw_line(struct gb_s *gb) */ void __gb_step_cpu(struct gb_s *gb) { - uint8_t opcode, inst_cycles; + uint8_t opcode; + uint_fast16_t inst_cycles; static const uint8_t op_cycles[0x100] = { /* *INDENT-OFF* */ @@ -1479,7 +2080,7 @@ void __gb_step_cpu(struct gb_s *gb) 4, 4, 4, 4, 4, 4, 8, 4, 4, 4, 4, 4, 4, 4, 8, 4, /* 0x40 */ 4, 4, 4, 4, 4, 4, 8, 4, 4, 4, 4, 4, 4, 4, 8, 4, /* 0x50 */ 4, 4, 4, 4, 4, 4, 8, 4, 4, 4, 4, 4, 4, 4, 8, 4, /* 0x60 */ - 8, 8, 8, 8, 8, 8, 4, 8, 4, 4, 4, 4, 4, 4, 8, 4, /* 0x70 */ + 8, 8, 8, 8, 8, 8, 4, 8, 4, 4, 4, 4, 4, 4, 8, 4, /* 0x70 */ 4, 4, 4, 4, 4, 4, 8, 4, 4, 4, 4, 4, 4, 4, 8, 4, /* 0x80 */ 4, 4, 4, 4, 4, 4, 8, 4, 4, 4, 4, 4, 4, 4, 8, 4, /* 0x90 */ 4, 4, 4, 4, 4, 4, 8, 4, 4, 4, 4, 4, 4, 4, 8, 4, /* 0xA0 */ @@ -1490,53 +2091,59 @@ void __gb_step_cpu(struct gb_s *gb) 12,12,8, 4, 0,16, 8,16,12, 8,16, 4, 0, 0, 8,16 /* 0xF0 */ /* *INDENT-ON* */ }; + static const uint_fast16_t TAC_CYCLES[4] = {1024, 16, 64, 256}; /* Handle interrupts */ - if((gb->gb_ime || gb->gb_halt) && - (gb->gb_reg.IF & gb->gb_reg.IE & ANY_INTR)) + /* If gb_halt is positive, then an interrupt must have occured by the + * time we reach here, becuase on HALT, we jump to the next interrupt + * immediately. */ + while(gb->gb_halt || (gb->gb_ime && + gb->hram_io[IO_IF] & gb->hram_io[IO_IE] & ANY_INTR)) { gb->gb_halt = 0; - if(gb->gb_ime) - { - /* Disable interrupts */ - gb->gb_ime = 0; + if(!gb->gb_ime) + break; - /* Push Program Counter */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); + /* Disable interrupts */ + gb->gb_ime = 0; - /* Call interrupt handler if required. */ - if(gb->gb_reg.IF & gb->gb_reg.IE & VBLANK_INTR) - { - gb->cpu_reg.pc = VBLANK_INTR_ADDR; - gb->gb_reg.IF ^= VBLANK_INTR; - } - else if(gb->gb_reg.IF & gb->gb_reg.IE & LCDC_INTR) - { - gb->cpu_reg.pc = LCDC_INTR_ADDR; - gb->gb_reg.IF ^= LCDC_INTR; - } - else if(gb->gb_reg.IF & gb->gb_reg.IE & TIMER_INTR) - { - gb->cpu_reg.pc = TIMER_INTR_ADDR; - gb->gb_reg.IF ^= TIMER_INTR; - } - else if(gb->gb_reg.IF & gb->gb_reg.IE & SERIAL_INTR) - { - gb->cpu_reg.pc = SERIAL_INTR_ADDR; - gb->gb_reg.IF ^= SERIAL_INTR; - } - else if(gb->gb_reg.IF & gb->gb_reg.IE & CONTROL_INTR) - { - gb->cpu_reg.pc = CONTROL_INTR_ADDR; - gb->gb_reg.IF ^= CONTROL_INTR; - } + /* Push Program Counter */ + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + + /* Call interrupt handler if required. */ + if(gb->hram_io[IO_IF] & gb->hram_io[IO_IE] & VBLANK_INTR) + { + gb->cpu_reg.pc.reg = VBLANK_INTR_ADDR; + gb->hram_io[IO_IF] ^= VBLANK_INTR; + } + else if(gb->hram_io[IO_IF] & gb->hram_io[IO_IE] & LCDC_INTR) + { + gb->cpu_reg.pc.reg = LCDC_INTR_ADDR; + gb->hram_io[IO_IF] ^= LCDC_INTR; + } + else if(gb->hram_io[IO_IF] & gb->hram_io[IO_IE] & TIMER_INTR) + { + gb->cpu_reg.pc.reg = TIMER_INTR_ADDR; + gb->hram_io[IO_IF] ^= TIMER_INTR; + } + else if(gb->hram_io[IO_IF] & gb->hram_io[IO_IE] & SERIAL_INTR) + { + gb->cpu_reg.pc.reg = SERIAL_INTR_ADDR; + gb->hram_io[IO_IF] ^= SERIAL_INTR; + } + else if(gb->hram_io[IO_IF] & gb->hram_io[IO_IE] & CONTROL_INTR) + { + gb->cpu_reg.pc.reg = CONTROL_INTR_ADDR; + gb->hram_io[IO_IF] ^= CONTROL_INTR; } + + break; } /* Obtain opcode */ - opcode = (gb->gb_halt ? 0x00 : __gb_read(gb, gb->cpu_reg.pc++)); + opcode = __gb_read(gb, gb->cpu_reg.pc.reg++); inst_cycles = op_cycles[opcode]; /* Execute opcode */ @@ -1546,34 +2153,31 @@ void __gb_step_cpu(struct gb_s *gb) break; case 0x01: /* LD BC, imm */ - gb->cpu_reg.c = __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.b = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.bc.bytes.c = __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.bc.bytes.b = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x02: /* LD (BC), A */ - __gb_write(gb, gb->cpu_reg.bc, gb->cpu_reg.a); + __gb_write(gb, gb->cpu_reg.bc.reg, gb->cpu_reg.a); break; case 0x03: /* INC BC */ - gb->cpu_reg.bc++; + gb->cpu_reg.bc.reg++; break; case 0x04: /* INC B */ - gb->cpu_reg.b++; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.b == 0x00); + gb->cpu_reg.bc.bytes.b++; + gb->cpu_reg.f_bits.z = (gb->cpu_reg.bc.bytes.b == 0x00); gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.b & 0x0F) == 0x00); + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.bc.bytes.b & 0x0F) == 0x00); break; case 0x05: /* DEC B */ - gb->cpu_reg.b--; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.b == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.b & 0x0F) == 0x0F); + PGB_INSTR_DEC_R8(gb->cpu_reg.bc.bytes.b); break; case 0x06: /* LD B, imm */ - gb->cpu_reg.b = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.bc.bytes.b = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x07: /* RLCA */ @@ -1586,48 +2190,48 @@ void __gb_step_cpu(struct gb_s *gb) case 0x08: /* LD (imm), SP */ { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - __gb_write(gb, temp++, gb->cpu_reg.sp & 0xFF); - __gb_write(gb, temp, gb->cpu_reg.sp >> 8); + uint8_t h, l; + uint16_t temp; + l = __gb_read(gb, gb->cpu_reg.pc.reg++); + h = __gb_read(gb, gb->cpu_reg.pc.reg++); + temp = PEANUT_GB_U8_TO_U16(h,l); + __gb_write(gb, temp++, gb->cpu_reg.sp.bytes.p); + __gb_write(gb, temp, gb->cpu_reg.sp.bytes.s); break; } case 0x09: /* ADD HL, BC */ { - uint_fast32_t temp = gb->cpu_reg.hl + gb->cpu_reg.bc; + uint_fast32_t temp = gb->cpu_reg.hl.reg + gb->cpu_reg.bc.reg; gb->cpu_reg.f_bits.n = 0; gb->cpu_reg.f_bits.h = - (temp ^ gb->cpu_reg.hl ^ gb->cpu_reg.bc) & 0x1000 ? 1 : 0; + (temp ^ gb->cpu_reg.hl.reg ^ gb->cpu_reg.bc.reg) & 0x1000 ? 1 : 0; gb->cpu_reg.f_bits.c = (temp & 0xFFFF0000) ? 1 : 0; - gb->cpu_reg.hl = (temp & 0x0000FFFF); + gb->cpu_reg.hl.reg = (temp & 0x0000FFFF); break; } case 0x0A: /* LD A, (BC) */ - gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.bc); + gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.bc.reg); break; case 0x0B: /* DEC BC */ - gb->cpu_reg.bc--; + gb->cpu_reg.bc.reg--; break; case 0x0C: /* INC C */ - gb->cpu_reg.c++; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.c == 0x00); + gb->cpu_reg.bc.bytes.c++; + gb->cpu_reg.f_bits.z = (gb->cpu_reg.bc.bytes.c == 0x00); gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.c & 0x0F) == 0x00); + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.bc.bytes.c & 0x0F) == 0x00); break; case 0x0D: /* DEC C */ - gb->cpu_reg.c--; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.c == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.c & 0x0F) == 0x0F); + PGB_INSTR_DEC_R8(gb->cpu_reg.bc.bytes.c); break; case 0x0E: /* LD C, imm */ - gb->cpu_reg.c = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.bc.bytes.c = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x0F: /* RRCA */ @@ -1640,37 +2244,41 @@ void __gb_step_cpu(struct gb_s *gb) case 0x10: /* STOP */ //gb->gb_halt = 1; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode & gb->cgb.doubleSpeedPrep) + { + gb->cgb.doubleSpeedPrep = 0; + gb->cgb.doubleSpeed ^= 1; + } +#endif break; case 0x11: /* LD DE, imm */ - gb->cpu_reg.e = __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.d = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.de.bytes.e = __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.de.bytes.d = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x12: /* LD (DE), A */ - __gb_write(gb, gb->cpu_reg.de, gb->cpu_reg.a); + __gb_write(gb, gb->cpu_reg.de.reg, gb->cpu_reg.a); break; case 0x13: /* INC DE */ - gb->cpu_reg.de++; + gb->cpu_reg.de.reg++; break; case 0x14: /* INC D */ - gb->cpu_reg.d++; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.d == 0x00); + gb->cpu_reg.de.bytes.d++; + gb->cpu_reg.f_bits.z = (gb->cpu_reg.de.bytes.d == 0x00); gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.d & 0x0F) == 0x00); + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.de.bytes.d & 0x0F) == 0x00); break; case 0x15: /* DEC D */ - gb->cpu_reg.d--; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.d == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.d & 0x0F) == 0x0F); + PGB_INSTR_DEC_R8(gb->cpu_reg.de.bytes.d); break; case 0x16: /* LD D, imm */ - gb->cpu_reg.d = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.de.bytes.d = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x17: /* RLA */ @@ -1686,46 +2294,43 @@ void __gb_step_cpu(struct gb_s *gb) case 0x18: /* JR imm */ { - int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.pc += temp; + int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.pc.reg += temp; break; } case 0x19: /* ADD HL, DE */ { - uint_fast32_t temp = gb->cpu_reg.hl + gb->cpu_reg.de; + uint_fast32_t temp = gb->cpu_reg.hl.reg + gb->cpu_reg.de.reg; gb->cpu_reg.f_bits.n = 0; gb->cpu_reg.f_bits.h = - (temp ^ gb->cpu_reg.hl ^ gb->cpu_reg.de) & 0x1000 ? 1 : 0; + (temp ^ gb->cpu_reg.hl.reg ^ gb->cpu_reg.de.reg) & 0x1000 ? 1 : 0; gb->cpu_reg.f_bits.c = (temp & 0xFFFF0000) ? 1 : 0; - gb->cpu_reg.hl = (temp & 0x0000FFFF); + gb->cpu_reg.hl.reg = (temp & 0x0000FFFF); break; } case 0x1A: /* LD A, (DE) */ - gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.de); + gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.de.reg); break; case 0x1B: /* DEC DE */ - gb->cpu_reg.de--; + gb->cpu_reg.de.reg--; break; case 0x1C: /* INC E */ - gb->cpu_reg.e++; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.e == 0x00); + gb->cpu_reg.de.bytes.e++; + gb->cpu_reg.f_bits.z = (gb->cpu_reg.de.bytes.e == 0x00); gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.e & 0x0F) == 0x00); + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.de.bytes.e & 0x0F) == 0x00); break; case 0x1D: /* DEC E */ - gb->cpu_reg.e--; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.e == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.e & 0x0F) == 0x0F); + PGB_INSTR_DEC_R8(gb->cpu_reg.de.bytes.e); break; case 0x1E: /* LD E, imm */ - gb->cpu_reg.e = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.de.bytes.e = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x1F: /* RRA */ @@ -1739,53 +2344,51 @@ void __gb_step_cpu(struct gb_s *gb) break; } - case 0x20: /* JP NZ, imm */ + case 0x20: /* JR NZ, imm */ if(!gb->cpu_reg.f_bits.z) { - int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.pc += temp; + int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.pc.reg += temp; inst_cycles += 4; } else - gb->cpu_reg.pc++; + gb->cpu_reg.pc.reg++; break; case 0x21: /* LD HL, imm */ - gb->cpu_reg.l = __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.h = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.hl.bytes.l = __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.hl.bytes.h = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x22: /* LDI (HL), A */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.a); - gb->cpu_reg.hl++; + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.a); + gb->cpu_reg.hl.reg++; break; case 0x23: /* INC HL */ - gb->cpu_reg.hl++; + gb->cpu_reg.hl.reg++; break; case 0x24: /* INC H */ - gb->cpu_reg.h++; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.h == 0x00); + gb->cpu_reg.hl.bytes.h++; + gb->cpu_reg.f_bits.z = (gb->cpu_reg.hl.bytes.h == 0x00); gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.h & 0x0F) == 0x00); + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.hl.bytes.h & 0x0F) == 0x00); break; case 0x25: /* DEC H */ - gb->cpu_reg.h--; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.h == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.h & 0x0F) == 0x0F); + PGB_INSTR_DEC_R8(gb->cpu_reg.hl.bytes.h); break; case 0x26: /* LD H, imm */ - gb->cpu_reg.h = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.hl.bytes.h = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x27: /* DAA */ { - uint16_t a = gb->cpu_reg.a; + /* The following is from SameBoy. MIT License. */ + int16_t a = gb->cpu_reg.a; if(gb->cpu_reg.f_bits.n) { @@ -1814,52 +2417,48 @@ void __gb_step_cpu(struct gb_s *gb) break; } - case 0x28: /* JP Z, imm */ + case 0x28: /* JR Z, imm */ if(gb->cpu_reg.f_bits.z) { - int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.pc += temp; + int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.pc.reg += temp; inst_cycles += 4; } else - gb->cpu_reg.pc++; + gb->cpu_reg.pc.reg++; break; case 0x29: /* ADD HL, HL */ { - uint_fast32_t temp = gb->cpu_reg.hl + gb->cpu_reg.hl; + gb->cpu_reg.f_bits.c = (gb->cpu_reg.hl.reg & 0x8000) > 0; + gb->cpu_reg.hl.reg <<= 1; gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = (temp & 0x1000) ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFFFF0000) ? 1 : 0; - gb->cpu_reg.hl = (temp & 0x0000FFFF); + gb->cpu_reg.f_bits.h = (gb->cpu_reg.hl.reg & 0x1000) > 0; break; } case 0x2A: /* LD A, (HL+) */ - gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.hl++); + gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.hl.reg++); break; case 0x2B: /* DEC HL */ - gb->cpu_reg.hl--; + gb->cpu_reg.hl.reg--; break; case 0x2C: /* INC L */ - gb->cpu_reg.l++; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.l == 0x00); + gb->cpu_reg.hl.bytes.l++; + gb->cpu_reg.f_bits.z = (gb->cpu_reg.hl.bytes.l == 0x00); gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.l & 0x0F) == 0x00); + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.hl.bytes.l & 0x0F) == 0x00); break; case 0x2D: /* DEC L */ - gb->cpu_reg.l--; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.l == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.l & 0x0F) == 0x0F); + PGB_INSTR_DEC_R8(gb->cpu_reg.hl.bytes.l); break; case 0x2E: /* LD L, imm */ - gb->cpu_reg.l = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.hl.bytes.l = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x2F: /* CPL */ @@ -1868,54 +2467,54 @@ void __gb_step_cpu(struct gb_s *gb) gb->cpu_reg.f_bits.h = 1; break; - case 0x30: /* JP NC, imm */ + case 0x30: /* JR NC, imm */ if(!gb->cpu_reg.f_bits.c) { - int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.pc += temp; + int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.pc.reg += temp; inst_cycles += 4; } else - gb->cpu_reg.pc++; + gb->cpu_reg.pc.reg++; break; case 0x31: /* LD SP, imm */ - gb->cpu_reg.sp = __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.sp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; + gb->cpu_reg.sp.bytes.p = __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.sp.bytes.s = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x32: /* LD (HL), A */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.a); - gb->cpu_reg.hl--; + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.a); + gb->cpu_reg.hl.reg--; break; case 0x33: /* INC SP */ - gb->cpu_reg.sp++; + gb->cpu_reg.sp.reg++; break; case 0x34: /* INC (HL) */ { - uint8_t temp = __gb_read(gb, gb->cpu_reg.hl) + 1; + uint8_t temp = __gb_read(gb, gb->cpu_reg.hl.reg) + 1; gb->cpu_reg.f_bits.z = (temp == 0x00); gb->cpu_reg.f_bits.n = 0; gb->cpu_reg.f_bits.h = ((temp & 0x0F) == 0x00); - __gb_write(gb, gb->cpu_reg.hl, temp); + __gb_write(gb, gb->cpu_reg.hl.reg, temp); break; } case 0x35: /* DEC (HL) */ { - uint8_t temp = __gb_read(gb, gb->cpu_reg.hl) - 1; + uint8_t temp = __gb_read(gb, gb->cpu_reg.hl.reg) - 1; gb->cpu_reg.f_bits.z = (temp == 0x00); gb->cpu_reg.f_bits.n = 1; gb->cpu_reg.f_bits.h = ((temp & 0x0F) == 0x0F); - __gb_write(gb, gb->cpu_reg.hl, temp); + __gb_write(gb, gb->cpu_reg.hl.reg, temp); break; } case 0x36: /* LD (HL), imm */ - __gb_write(gb, gb->cpu_reg.hl, __gb_read(gb, gb->cpu_reg.pc++)); + __gb_write(gb, gb->cpu_reg.hl.reg, __gb_read(gb, gb->cpu_reg.pc.reg++)); break; case 0x37: /* SCF */ @@ -1924,35 +2523,35 @@ void __gb_step_cpu(struct gb_s *gb) gb->cpu_reg.f_bits.c = 1; break; - case 0x38: /* JP C, imm */ + case 0x38: /* JR C, imm */ if(gb->cpu_reg.f_bits.c) { - int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.pc += temp; + int8_t temp = (int8_t) __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.pc.reg += temp; inst_cycles += 4; } else - gb->cpu_reg.pc++; + gb->cpu_reg.pc.reg++; break; case 0x39: /* ADD HL, SP */ { - uint_fast32_t temp = gb->cpu_reg.hl + gb->cpu_reg.sp; + uint_fast32_t temp = gb->cpu_reg.hl.reg + gb->cpu_reg.sp.reg; gb->cpu_reg.f_bits.n = 0; gb->cpu_reg.f_bits.h = - ((gb->cpu_reg.hl & 0xFFF) + (gb->cpu_reg.sp & 0xFFF)) & 0x1000 ? 1 : 0; + ((gb->cpu_reg.hl.reg & 0xFFF) + (gb->cpu_reg.sp.reg & 0xFFF)) & 0x1000 ? 1 : 0; gb->cpu_reg.f_bits.c = temp & 0x10000 ? 1 : 0; - gb->cpu_reg.hl = (uint16_t)temp; + gb->cpu_reg.hl.reg = (uint16_t)temp; break; } case 0x3A: /* LD A, (HL) */ - gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.hl--); + gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.hl.reg--); break; case 0x3B: /* DEC SP */ - gb->cpu_reg.sp--; + gb->cpu_reg.sp.reg--; break; case 0x3C: /* INC A */ @@ -1970,7 +2569,7 @@ void __gb_step_cpu(struct gb_s *gb) break; case 0x3E: /* LD A, imm */ - gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.pc.reg++); break; case 0x3F: /* CCF */ @@ -1983,530 +2582,414 @@ void __gb_step_cpu(struct gb_s *gb) break; case 0x41: /* LD B, C */ - gb->cpu_reg.b = gb->cpu_reg.c; + gb->cpu_reg.bc.bytes.b = gb->cpu_reg.bc.bytes.c; break; case 0x42: /* LD B, D */ - gb->cpu_reg.b = gb->cpu_reg.d; + gb->cpu_reg.bc.bytes.b = gb->cpu_reg.de.bytes.d; break; case 0x43: /* LD B, E */ - gb->cpu_reg.b = gb->cpu_reg.e; + gb->cpu_reg.bc.bytes.b = gb->cpu_reg.de.bytes.e; break; case 0x44: /* LD B, H */ - gb->cpu_reg.b = gb->cpu_reg.h; + gb->cpu_reg.bc.bytes.b = gb->cpu_reg.hl.bytes.h; break; case 0x45: /* LD B, L */ - gb->cpu_reg.b = gb->cpu_reg.l; + gb->cpu_reg.bc.bytes.b = gb->cpu_reg.hl.bytes.l; break; case 0x46: /* LD B, (HL) */ - gb->cpu_reg.b = __gb_read(gb, gb->cpu_reg.hl); + gb->cpu_reg.bc.bytes.b = __gb_read(gb, gb->cpu_reg.hl.reg); break; case 0x47: /* LD B, A */ - gb->cpu_reg.b = gb->cpu_reg.a; + gb->cpu_reg.bc.bytes.b = gb->cpu_reg.a; break; case 0x48: /* LD C, B */ - gb->cpu_reg.c = gb->cpu_reg.b; + gb->cpu_reg.bc.bytes.c = gb->cpu_reg.bc.bytes.b; break; case 0x49: /* LD C, C */ break; case 0x4A: /* LD C, D */ - gb->cpu_reg.c = gb->cpu_reg.d; + gb->cpu_reg.bc.bytes.c = gb->cpu_reg.de.bytes.d; break; case 0x4B: /* LD C, E */ - gb->cpu_reg.c = gb->cpu_reg.e; + gb->cpu_reg.bc.bytes.c = gb->cpu_reg.de.bytes.e; break; case 0x4C: /* LD C, H */ - gb->cpu_reg.c = gb->cpu_reg.h; + gb->cpu_reg.bc.bytes.c = gb->cpu_reg.hl.bytes.h; break; case 0x4D: /* LD C, L */ - gb->cpu_reg.c = gb->cpu_reg.l; + gb->cpu_reg.bc.bytes.c = gb->cpu_reg.hl.bytes.l; break; case 0x4E: /* LD C, (HL) */ - gb->cpu_reg.c = __gb_read(gb, gb->cpu_reg.hl); + gb->cpu_reg.bc.bytes.c = __gb_read(gb, gb->cpu_reg.hl.reg); break; case 0x4F: /* LD C, A */ - gb->cpu_reg.c = gb->cpu_reg.a; + gb->cpu_reg.bc.bytes.c = gb->cpu_reg.a; break; case 0x50: /* LD D, B */ - gb->cpu_reg.d = gb->cpu_reg.b; + gb->cpu_reg.de.bytes.d = gb->cpu_reg.bc.bytes.b; break; case 0x51: /* LD D, C */ - gb->cpu_reg.d = gb->cpu_reg.c; + gb->cpu_reg.de.bytes.d = gb->cpu_reg.bc.bytes.c; break; case 0x52: /* LD D, D */ break; case 0x53: /* LD D, E */ - gb->cpu_reg.d = gb->cpu_reg.e; + gb->cpu_reg.de.bytes.d = gb->cpu_reg.de.bytes.e; break; case 0x54: /* LD D, H */ - gb->cpu_reg.d = gb->cpu_reg.h; + gb->cpu_reg.de.bytes.d = gb->cpu_reg.hl.bytes.h; break; case 0x55: /* LD D, L */ - gb->cpu_reg.d = gb->cpu_reg.l; + gb->cpu_reg.de.bytes.d = gb->cpu_reg.hl.bytes.l; break; case 0x56: /* LD D, (HL) */ - gb->cpu_reg.d = __gb_read(gb, gb->cpu_reg.hl); + gb->cpu_reg.de.bytes.d = __gb_read(gb, gb->cpu_reg.hl.reg); break; case 0x57: /* LD D, A */ - gb->cpu_reg.d = gb->cpu_reg.a; + gb->cpu_reg.de.bytes.d = gb->cpu_reg.a; break; case 0x58: /* LD E, B */ - gb->cpu_reg.e = gb->cpu_reg.b; + gb->cpu_reg.de.bytes.e = gb->cpu_reg.bc.bytes.b; break; case 0x59: /* LD E, C */ - gb->cpu_reg.e = gb->cpu_reg.c; + gb->cpu_reg.de.bytes.e = gb->cpu_reg.bc.bytes.c; break; case 0x5A: /* LD E, D */ - gb->cpu_reg.e = gb->cpu_reg.d; + gb->cpu_reg.de.bytes.e = gb->cpu_reg.de.bytes.d; break; case 0x5B: /* LD E, E */ break; case 0x5C: /* LD E, H */ - gb->cpu_reg.e = gb->cpu_reg.h; + gb->cpu_reg.de.bytes.e = gb->cpu_reg.hl.bytes.h; break; case 0x5D: /* LD E, L */ - gb->cpu_reg.e = gb->cpu_reg.l; + gb->cpu_reg.de.bytes.e = gb->cpu_reg.hl.bytes.l; break; case 0x5E: /* LD E, (HL) */ - gb->cpu_reg.e = __gb_read(gb, gb->cpu_reg.hl); + gb->cpu_reg.de.bytes.e = __gb_read(gb, gb->cpu_reg.hl.reg); break; case 0x5F: /* LD E, A */ - gb->cpu_reg.e = gb->cpu_reg.a; + gb->cpu_reg.de.bytes.e = gb->cpu_reg.a; break; case 0x60: /* LD H, B */ - gb->cpu_reg.h = gb->cpu_reg.b; + gb->cpu_reg.hl.bytes.h = gb->cpu_reg.bc.bytes.b; break; case 0x61: /* LD H, C */ - gb->cpu_reg.h = gb->cpu_reg.c; + gb->cpu_reg.hl.bytes.h = gb->cpu_reg.bc.bytes.c; break; case 0x62: /* LD H, D */ - gb->cpu_reg.h = gb->cpu_reg.d; + gb->cpu_reg.hl.bytes.h = gb->cpu_reg.de.bytes.d; break; case 0x63: /* LD H, E */ - gb->cpu_reg.h = gb->cpu_reg.e; + gb->cpu_reg.hl.bytes.h = gb->cpu_reg.de.bytes.e; break; case 0x64: /* LD H, H */ break; case 0x65: /* LD H, L */ - gb->cpu_reg.h = gb->cpu_reg.l; + gb->cpu_reg.hl.bytes.h = gb->cpu_reg.hl.bytes.l; break; case 0x66: /* LD H, (HL) */ - gb->cpu_reg.h = __gb_read(gb, gb->cpu_reg.hl); + gb->cpu_reg.hl.bytes.h = __gb_read(gb, gb->cpu_reg.hl.reg); break; case 0x67: /* LD H, A */ - gb->cpu_reg.h = gb->cpu_reg.a; + gb->cpu_reg.hl.bytes.h = gb->cpu_reg.a; break; case 0x68: /* LD L, B */ - gb->cpu_reg.l = gb->cpu_reg.b; + gb->cpu_reg.hl.bytes.l = gb->cpu_reg.bc.bytes.b; break; case 0x69: /* LD L, C */ - gb->cpu_reg.l = gb->cpu_reg.c; + gb->cpu_reg.hl.bytes.l = gb->cpu_reg.bc.bytes.c; break; case 0x6A: /* LD L, D */ - gb->cpu_reg.l = gb->cpu_reg.d; + gb->cpu_reg.hl.bytes.l = gb->cpu_reg.de.bytes.d; break; case 0x6B: /* LD L, E */ - gb->cpu_reg.l = gb->cpu_reg.e; + gb->cpu_reg.hl.bytes.l = gb->cpu_reg.de.bytes.e; break; case 0x6C: /* LD L, H */ - gb->cpu_reg.l = gb->cpu_reg.h; + gb->cpu_reg.hl.bytes.l = gb->cpu_reg.hl.bytes.h; break; case 0x6D: /* LD L, L */ break; case 0x6E: /* LD L, (HL) */ - gb->cpu_reg.l = __gb_read(gb, gb->cpu_reg.hl); + gb->cpu_reg.hl.bytes.l = __gb_read(gb, gb->cpu_reg.hl.reg); break; case 0x6F: /* LD L, A */ - gb->cpu_reg.l = gb->cpu_reg.a; + gb->cpu_reg.hl.bytes.l = gb->cpu_reg.a; break; case 0x70: /* LD (HL), B */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.b); + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.bc.bytes.b); break; case 0x71: /* LD (HL), C */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.c); + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.bc.bytes.c); break; case 0x72: /* LD (HL), D */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.d); + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.de.bytes.d); break; case 0x73: /* LD (HL), E */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.e); + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.de.bytes.e); break; case 0x74: /* LD (HL), H */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.h); + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.hl.bytes.h); break; case 0x75: /* LD (HL), L */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.l); + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.hl.bytes.l); break; case 0x76: /* HALT */ + { + int_fast16_t halt_cycles = INT_FAST16_MAX; + /* TODO: Emulate HALT bug? */ gb->gb_halt = 1; + + if (gb->hram_io[IO_IE] == 0) + { + /* Return program counter where this halt forever state started. */ + /* This may be intentional, but this is required to stop an infinite + * loop. */ + (gb->gb_error)(gb, GB_HALT_FOREVER, gb->cpu_reg.pc.reg - 1); + PGB_UNREACHABLE(); + } + + if(gb->hram_io[IO_SC] & SERIAL_SC_TX_START) + { + int serial_cycles = SERIAL_CYCLES - + gb->counter.serial_count; + + if(serial_cycles < halt_cycles) + halt_cycles = serial_cycles; + } + + if(gb->hram_io[IO_TAC] & IO_TAC_ENABLE_MASK) + { + int tac_cycles = TAC_CYCLES[gb->hram_io[IO_TAC] & IO_TAC_RATE_MASK] - + gb->counter.tima_count; + + if(tac_cycles < halt_cycles) + halt_cycles = tac_cycles; + } + + if((gb->hram_io[IO_LCDC] & LCDC_ENABLE)) + { + int lcd_cycles; + + /* If LCD is in HBlank, calculate the number of cycles + * until the end of HBlank and the start of mode 2 or + * mode 1. */ + if((gb->hram_io[IO_STAT] & STAT_MODE) == IO_STAT_MODE_HBLANK) + { + lcd_cycles = LCD_MODE_2_CYCLES - + gb->counter.lcd_count; + } + else if((gb->hram_io[IO_STAT] & STAT_MODE) == IO_STAT_MODE_SEARCH_OAM) + { + lcd_cycles = LCD_MODE_3_CYCLES - + gb->counter.lcd_count; + } + else if((gb->hram_io[IO_STAT] & STAT_MODE) == IO_STAT_MODE_SEARCH_TRANSFER) + { + lcd_cycles = LCD_MODE_0_CYCLES - + gb->counter.lcd_count; + } + else + { + /* VBlank */ + lcd_cycles = + LCD_LINE_CYCLES - gb->counter.lcd_count; + } + + if(lcd_cycles < halt_cycles) + halt_cycles = lcd_cycles; + } + + /* Some halt cycles may already be very high, so make sure we + * don't underflow here. */ + if(halt_cycles <= 0) + halt_cycles = 4; + + inst_cycles = (uint_fast16_t)halt_cycles; break; + } case 0x77: /* LD (HL), A */ - __gb_write(gb, gb->cpu_reg.hl, gb->cpu_reg.a); + __gb_write(gb, gb->cpu_reg.hl.reg, gb->cpu_reg.a); break; case 0x78: /* LD A, B */ - gb->cpu_reg.a = gb->cpu_reg.b; + gb->cpu_reg.a = gb->cpu_reg.bc.bytes.b; break; case 0x79: /* LD A, C */ - gb->cpu_reg.a = gb->cpu_reg.c; + gb->cpu_reg.a = gb->cpu_reg.bc.bytes.c; break; case 0x7A: /* LD A, D */ - gb->cpu_reg.a = gb->cpu_reg.d; + gb->cpu_reg.a = gb->cpu_reg.de.bytes.d; break; case 0x7B: /* LD A, E */ - gb->cpu_reg.a = gb->cpu_reg.e; + gb->cpu_reg.a = gb->cpu_reg.de.bytes.e; break; case 0x7C: /* LD A, H */ - gb->cpu_reg.a = gb->cpu_reg.h; + gb->cpu_reg.a = gb->cpu_reg.hl.bytes.h; break; case 0x7D: /* LD A, L */ - gb->cpu_reg.a = gb->cpu_reg.l; + gb->cpu_reg.a = gb->cpu_reg.hl.bytes.l; break; case 0x7E: /* LD A, (HL) */ - gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.hl); + gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.hl.reg); break; case 0x7F: /* LD A, A */ break; case 0x80: /* ADD A, B */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.b; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.b ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.bc.bytes.b, 0); break; - } case 0x81: /* ADD A, C */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.c ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.bc.bytes.c, 0); break; - } case 0x82: /* ADD A, D */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.d; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.d ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.de.bytes.d, 0); break; - } case 0x83: /* ADD A, E */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.e; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.e ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.de.bytes.e, 0); break; - } case 0x84: /* ADD A, H */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.h; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.h ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.hl.bytes.h, 0); break; - } case 0x85: /* ADD A, L */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.l; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.l ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.hl.bytes.l, 0); break; - } case 0x86: /* ADD A, (HL) */ - { - uint8_t hl = __gb_read(gb, gb->cpu_reg.hl); - uint16_t temp = gb->cpu_reg.a + hl; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ hl ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(__gb_read(gb, gb->cpu_reg.hl.reg), 0); break; - } case 0x87: /* ADD A, A */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.a; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = temp & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.a, 0); break; - } case 0x88: /* ADC A, B */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.b + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.b ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.bc.bytes.b, gb->cpu_reg.f_bits.c); break; - } case 0x89: /* ADC A, C */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.c + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.c ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.bc.bytes.c, gb->cpu_reg.f_bits.c); break; - } case 0x8A: /* ADC A, D */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.d + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.d ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.de.bytes.d, gb->cpu_reg.f_bits.c); break; - } case 0x8B: /* ADC A, E */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.e + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.e ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.de.bytes.e, gb->cpu_reg.f_bits.c); break; - } case 0x8C: /* ADC A, H */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.h + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.h ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.hl.bytes.h, gb->cpu_reg.f_bits.c); break; - } case 0x8D: /* ADC A, L */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.l + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.l ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.hl.bytes.l, gb->cpu_reg.f_bits.c); break; - } case 0x8E: /* ADC A, (HL) */ - { - uint8_t val = __gb_read(gb, gb->cpu_reg.hl); - uint16_t temp = gb->cpu_reg.a + val + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ val ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(__gb_read(gb, gb->cpu_reg.hl.reg), gb->cpu_reg.f_bits.c); break; - } case 0x8F: /* ADC A, A */ - { - uint16_t temp = gb->cpu_reg.a + gb->cpu_reg.a + gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 0; - /* TODO: Optimisation here? */ - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.a ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_ADC_R8(gb->cpu_reg.a, gb->cpu_reg.f_bits.c); break; - } case 0x90: /* SUB B */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.b; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.b ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.bc.bytes.b, 0); break; - } case 0x91: /* SUB C */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.c ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.bc.bytes.c, 0); break; - } case 0x92: /* SUB D */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.d; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.d ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.de.bytes.d, 0); break; - } case 0x93: /* SUB E */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.e; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.e ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.de.bytes.e, 0); break; - } case 0x94: /* SUB H */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.h; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.h ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.hl.bytes.h, 0); break; - } case 0x95: /* SUB L */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.l; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.l ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.hl.bytes.l, 0); break; - } case 0x96: /* SUB (HL) */ - { - uint8_t val = __gb_read(gb, gb->cpu_reg.hl); - uint16_t temp = gb->cpu_reg.a - val; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ val ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(__gb_read(gb, gb->cpu_reg.hl.reg), 0); break; - } case 0x97: /* SUB A */ gb->cpu_reg.a = 0; @@ -2517,365 +3000,163 @@ void __gb_step_cpu(struct gb_s *gb) break; case 0x98: /* SBC A, B */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.b - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.b ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.bc.bytes.b, gb->cpu_reg.f_bits.c); break; - } case 0x99: /* SBC A, C */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.c - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.c ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.bc.bytes.c, gb->cpu_reg.f_bits.c); break; - } case 0x9A: /* SBC A, D */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.d - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.d ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.de.bytes.d, gb->cpu_reg.f_bits.c); break; - } case 0x9B: /* SBC A, E */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.e - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.e ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.de.bytes.e, gb->cpu_reg.f_bits.c); break; - } case 0x9C: /* SBC A, H */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.h - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.h ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.hl.bytes.h, gb->cpu_reg.f_bits.c); break; - } case 0x9D: /* SBC A, L */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.l - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.l ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(gb->cpu_reg.hl.bytes.l, gb->cpu_reg.f_bits.c); break; - } case 0x9E: /* SBC A, (HL) */ - { - uint8_t val = __gb_read(gb, gb->cpu_reg.hl); - uint16_t temp = gb->cpu_reg.a - val - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ val ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp & 0xFF); + PGB_INSTR_SBC_R8(__gb_read(gb, gb->cpu_reg.hl.reg), gb->cpu_reg.f_bits.c); break; - } case 0x9F: /* SBC A, A */ gb->cpu_reg.a = gb->cpu_reg.f_bits.c ? 0xFF : 0x00; - gb->cpu_reg.f_bits.z = gb->cpu_reg.f_bits.c ? 0x00 : 0x01; + gb->cpu_reg.f_bits.z = !gb->cpu_reg.f_bits.c; gb->cpu_reg.f_bits.n = 1; gb->cpu_reg.f_bits.h = gb->cpu_reg.f_bits.c; break; case 0xA0: /* AND B */ - gb->cpu_reg.a = gb->cpu_reg.a & gb->cpu_reg.b; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_AND_R8(gb->cpu_reg.bc.bytes.b); break; case 0xA1: /* AND C */ - gb->cpu_reg.a = gb->cpu_reg.a & gb->cpu_reg.c; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_AND_R8(gb->cpu_reg.bc.bytes.c); break; case 0xA2: /* AND D */ - gb->cpu_reg.a = gb->cpu_reg.a & gb->cpu_reg.d; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_AND_R8(gb->cpu_reg.de.bytes.d); break; case 0xA3: /* AND E */ - gb->cpu_reg.a = gb->cpu_reg.a & gb->cpu_reg.e; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_AND_R8(gb->cpu_reg.de.bytes.e); break; case 0xA4: /* AND H */ - gb->cpu_reg.a = gb->cpu_reg.a & gb->cpu_reg.h; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_AND_R8(gb->cpu_reg.hl.bytes.h); break; case 0xA5: /* AND L */ - gb->cpu_reg.a = gb->cpu_reg.a & gb->cpu_reg.l; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_AND_R8(gb->cpu_reg.hl.bytes.l); break; - case 0xA6: /* AND B */ - gb->cpu_reg.a = gb->cpu_reg.a & __gb_read(gb, gb->cpu_reg.hl); - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + case 0xA6: /* AND (HL) */ + PGB_INSTR_AND_R8(__gb_read(gb, gb->cpu_reg.hl.reg)); break; case 0xA7: /* AND A */ - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 1; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_AND_R8(gb->cpu_reg.a); break; case 0xA8: /* XOR B */ - gb->cpu_reg.a = gb->cpu_reg.a ^ gb->cpu_reg.b; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(gb->cpu_reg.bc.bytes.b); break; case 0xA9: /* XOR C */ - gb->cpu_reg.a = gb->cpu_reg.a ^ gb->cpu_reg.c; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(gb->cpu_reg.bc.bytes.c); break; case 0xAA: /* XOR D */ - gb->cpu_reg.a = gb->cpu_reg.a ^ gb->cpu_reg.d; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(gb->cpu_reg.de.bytes.d); break; case 0xAB: /* XOR E */ - gb->cpu_reg.a = gb->cpu_reg.a ^ gb->cpu_reg.e; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(gb->cpu_reg.de.bytes.e); break; case 0xAC: /* XOR H */ - gb->cpu_reg.a = gb->cpu_reg.a ^ gb->cpu_reg.h; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(gb->cpu_reg.hl.bytes.h); break; case 0xAD: /* XOR L */ - gb->cpu_reg.a = gb->cpu_reg.a ^ gb->cpu_reg.l; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(gb->cpu_reg.hl.bytes.l); break; case 0xAE: /* XOR (HL) */ - gb->cpu_reg.a = gb->cpu_reg.a ^ __gb_read(gb, gb->cpu_reg.hl); - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(__gb_read(gb, gb->cpu_reg.hl.reg)); break; case 0xAF: /* XOR A */ - gb->cpu_reg.a = 0x00; - gb->cpu_reg.f_bits.z = 1; - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(gb->cpu_reg.a); break; case 0xB0: /* OR B */ - gb->cpu_reg.a = gb->cpu_reg.a | gb->cpu_reg.b; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(gb->cpu_reg.bc.bytes.b); break; case 0xB1: /* OR C */ - gb->cpu_reg.a = gb->cpu_reg.a | gb->cpu_reg.c; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(gb->cpu_reg.bc.bytes.c); break; case 0xB2: /* OR D */ - gb->cpu_reg.a = gb->cpu_reg.a | gb->cpu_reg.d; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(gb->cpu_reg.de.bytes.d); break; case 0xB3: /* OR E */ - gb->cpu_reg.a = gb->cpu_reg.a | gb->cpu_reg.e; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(gb->cpu_reg.de.bytes.e); break; case 0xB4: /* OR H */ - gb->cpu_reg.a = gb->cpu_reg.a | gb->cpu_reg.h; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(gb->cpu_reg.hl.bytes.h); break; case 0xB5: /* OR L */ - gb->cpu_reg.a = gb->cpu_reg.a | gb->cpu_reg.l; - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(gb->cpu_reg.hl.bytes.l); break; case 0xB6: /* OR (HL) */ - gb->cpu_reg.a = gb->cpu_reg.a | __gb_read(gb, gb->cpu_reg.hl); - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(__gb_read(gb, gb->cpu_reg.hl.reg)); break; case 0xB7: /* OR A */ - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(gb->cpu_reg.a); break; case 0xB8: /* CP B */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.b; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.b ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; + PGB_INSTR_CP_R8(gb->cpu_reg.bc.bytes.b); break; - } case 0xB9: /* CP C */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.c; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.c ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; + PGB_INSTR_CP_R8(gb->cpu_reg.bc.bytes.c); break; - } case 0xBA: /* CP D */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.d; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.d ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; + PGB_INSTR_CP_R8(gb->cpu_reg.de.bytes.d); break; - } case 0xBB: /* CP E */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.e; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.e ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; + PGB_INSTR_CP_R8(gb->cpu_reg.de.bytes.e); break; - } case 0xBC: /* CP H */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.h; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.h ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; + PGB_INSTR_CP_R8(gb->cpu_reg.hl.bytes.h); break; - } case 0xBD: /* CP L */ - { - uint16_t temp = gb->cpu_reg.a - gb->cpu_reg.l; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ gb->cpu_reg.l ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; + PGB_INSTR_CP_R8(gb->cpu_reg.hl.bytes.l); break; - } - /* TODO: Optimsation by combining similar opcode routines. */ - case 0xBE: /* CP B */ - { - uint8_t val = __gb_read(gb, gb->cpu_reg.hl); - uint16_t temp = gb->cpu_reg.a - val; - gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ val ^ temp) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp & 0xFF00) ? 1 : 0; + case 0xBE: /* CP (HL) */ + PGB_INSTR_CP_R8(__gb_read(gb, gb->cpu_reg.hl.reg)); break; - } case 0xBF: /* CP A */ gb->cpu_reg.f_bits.z = 1; @@ -2887,108 +3168,106 @@ void __gb_step_cpu(struct gb_s *gb) case 0xC0: /* RET NZ */ if(!gb->cpu_reg.f_bits.z) { - gb->cpu_reg.pc = __gb_read(gb, gb->cpu_reg.sp++); - gb->cpu_reg.pc |= __gb_read(gb, gb->cpu_reg.sp++) << 8; + gb->cpu_reg.pc.bytes.c = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.pc.bytes.p = __gb_read(gb, gb->cpu_reg.sp.reg++); inst_cycles += 12; } break; case 0xC1: /* POP BC */ - gb->cpu_reg.c = __gb_read(gb, gb->cpu_reg.sp++); - gb->cpu_reg.b = __gb_read(gb, gb->cpu_reg.sp++); + gb->cpu_reg.bc.bytes.c = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.bc.bytes.b = __gb_read(gb, gb->cpu_reg.sp.reg++); break; case 0xC2: /* JP NZ, imm */ if(!gb->cpu_reg.f_bits.z) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 4; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; case 0xC3: /* JP imm */ { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc) << 8; - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; break; } case 0xC4: /* CALL NZ imm */ if(!gb->cpu_reg.f_bits.z) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg++); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 12; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; case 0xC5: /* PUSH BC */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.b); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.c); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.bc.bytes.b); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.bc.bytes.c); break; case 0xC6: /* ADD A, imm */ { - /* Taken from SameBoy, which is released under MIT Licence. */ - uint8_t value = __gb_read(gb, gb->cpu_reg.pc++); - uint16_t calc = gb->cpu_reg.a + value; - gb->cpu_reg.f_bits.z = ((uint8_t)calc == 0) ? 1 : 0; - gb->cpu_reg.f_bits.h = - ((gb->cpu_reg.a & 0xF) + (value & 0xF) > 0x0F) ? 1 : 0; - gb->cpu_reg.f_bits.c = calc > 0xFF ? 1 : 0; - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.a = (uint8_t)calc; + uint8_t val = __gb_read(gb, gb->cpu_reg.pc.reg++); + PGB_INSTR_ADC_R8(val, 0); break; } case 0xC7: /* RST 0x0000 */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0000; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0000; break; case 0xC8: /* RET Z */ if(gb->cpu_reg.f_bits.z) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.sp++); - temp |= __gb_read(gb, gb->cpu_reg.sp++) << 8; - gb->cpu_reg.pc = temp; + gb->cpu_reg.pc.bytes.c = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.pc.bytes.p = __gb_read(gb, gb->cpu_reg.sp.reg++); inst_cycles += 12; } - break; case 0xC9: /* RET */ { - uint16_t temp = __gb_read(gb, gb->cpu_reg.sp++); - temp |= __gb_read(gb, gb->cpu_reg.sp++) << 8; - gb->cpu_reg.pc = temp; + gb->cpu_reg.pc.bytes.c = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.pc.bytes.p = __gb_read(gb, gb->cpu_reg.sp.reg++); break; } case 0xCA: /* JP Z, imm */ if(gb->cpu_reg.f_bits.z) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 4; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; @@ -2999,103 +3278,100 @@ void __gb_step_cpu(struct gb_s *gb) case 0xCC: /* CALL Z, imm */ if(gb->cpu_reg.f_bits.z) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg++); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 12; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; case 0xCD: /* CALL imm */ { - uint16_t addr = __gb_read(gb, gb->cpu_reg.pc++); - addr |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = addr; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg++); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; } break; case 0xCE: /* ADC A, imm */ { - uint8_t value, a, carry; - value = __gb_read(gb, gb->cpu_reg.pc++); - a = gb->cpu_reg.a; - carry = gb->cpu_reg.f_bits.c; - gb->cpu_reg.a = a + value + carry; - - gb->cpu_reg.f_bits.z = gb->cpu_reg.a == 0 ? 1 : 0; - gb->cpu_reg.f_bits.h = - ((a & 0xF) + (value & 0xF) + carry > 0x0F) ? 1 : 0; - gb->cpu_reg.f_bits.c = - (((uint16_t) a) + ((uint16_t) value) + carry > 0xFF) ? 1 : 0; - gb->cpu_reg.f_bits.n = 0; + uint8_t val = __gb_read(gb, gb->cpu_reg.pc.reg++); + PGB_INSTR_ADC_R8(val, gb->cpu_reg.f_bits.c); break; } case 0xCF: /* RST 0x0008 */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0008; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0008; break; case 0xD0: /* RET NC */ if(!gb->cpu_reg.f_bits.c) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.sp++); - temp |= __gb_read(gb, gb->cpu_reg.sp++) << 8; - gb->cpu_reg.pc = temp; + gb->cpu_reg.pc.bytes.c = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.pc.bytes.p = __gb_read(gb, gb->cpu_reg.sp.reg++); inst_cycles += 12; } break; case 0xD1: /* POP DE */ - gb->cpu_reg.e = __gb_read(gb, gb->cpu_reg.sp++); - gb->cpu_reg.d = __gb_read(gb, gb->cpu_reg.sp++); + gb->cpu_reg.de.bytes.e = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.de.bytes.d = __gb_read(gb, gb->cpu_reg.sp.reg++); break; case 0xD2: /* JP NC, imm */ if(!gb->cpu_reg.f_bits.c) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 4; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; case 0xD4: /* CALL NC, imm */ if(!gb->cpu_reg.f_bits.c) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg++); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 12; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; case 0xD5: /* PUSH DE */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.d); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.e); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.de.bytes.d); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.de.bytes.e); break; case 0xD6: /* SUB imm */ { - uint8_t val = __gb_read(gb, gb->cpu_reg.pc++); + uint8_t val = __gb_read(gb, gb->cpu_reg.pc.reg++); uint16_t temp = gb->cpu_reg.a - val; gb->cpu_reg.f_bits.z = ((temp & 0xFF) == 0x00); gb->cpu_reg.f_bits.n = 1; @@ -3107,17 +3383,16 @@ void __gb_step_cpu(struct gb_s *gb) } case 0xD7: /* RST 0x0010 */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0010; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0010; break; case 0xD8: /* RET C */ if(gb->cpu_reg.f_bits.c) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.sp++); - temp |= __gb_read(gb, gb->cpu_reg.sp++) << 8; - gb->cpu_reg.pc = temp; + gb->cpu_reg.pc.bytes.c = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.pc.bytes.p = __gb_read(gb, gb->cpu_reg.sp.reg++); inst_cycles += 12; } @@ -3125,9 +3400,8 @@ void __gb_step_cpu(struct gb_s *gb) case 0xD9: /* RETI */ { - uint16_t temp = __gb_read(gb, gb->cpu_reg.sp++); - temp |= __gb_read(gb, gb->cpu_reg.sp++) << 8; - gb->cpu_reg.pc = temp; + gb->cpu_reg.pc.bytes.c = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.pc.bytes.p = __gb_read(gb, gb->cpu_reg.sp.reg++); gb->gb_ime = 1; } break; @@ -3135,72 +3409,70 @@ void __gb_step_cpu(struct gb_s *gb) case 0xDA: /* JP C, imm */ if(gb->cpu_reg.f_bits.c) { - uint16_t addr = __gb_read(gb, gb->cpu_reg.pc++); - addr |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - gb->cpu_reg.pc = addr; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 4; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; case 0xDC: /* CALL C, imm */ if(gb->cpu_reg.f_bits.c) { - uint16_t temp = __gb_read(gb, gb->cpu_reg.pc++); - temp |= __gb_read(gb, gb->cpu_reg.pc++) << 8; - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = temp; + uint8_t p, c; + c = __gb_read(gb, gb->cpu_reg.pc.reg++); + p = __gb_read(gb, gb->cpu_reg.pc.reg++); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.bytes.c = c; + gb->cpu_reg.pc.bytes.p = p; inst_cycles += 12; } else - gb->cpu_reg.pc += 2; + gb->cpu_reg.pc.reg += 2; break; case 0xDE: /* SBC A, imm */ { - uint8_t temp_8 = __gb_read(gb, gb->cpu_reg.pc++); - uint16_t temp_16 = gb->cpu_reg.a - temp_8 - gb->cpu_reg.f_bits.c; - gb->cpu_reg.f_bits.z = ((temp_16 & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = - (gb->cpu_reg.a ^ temp_8 ^ temp_16) & 0x10 ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp_16 & 0xFF00) ? 1 : 0; - gb->cpu_reg.a = (temp_16 & 0xFF); + uint8_t val = __gb_read(gb, gb->cpu_reg.pc.reg++); + PGB_INSTR_SBC_R8(val, gb->cpu_reg.f_bits.c); break; } case 0xDF: /* RST 0x0018 */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0018; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0018; break; case 0xE0: /* LD (0xFF00+imm), A */ - __gb_write(gb, 0xFF00 | __gb_read(gb, gb->cpu_reg.pc++), + __gb_write(gb, 0xFF00 | __gb_read(gb, gb->cpu_reg.pc.reg++), gb->cpu_reg.a); break; case 0xE1: /* POP HL */ - gb->cpu_reg.l = __gb_read(gb, gb->cpu_reg.sp++); - gb->cpu_reg.h = __gb_read(gb, gb->cpu_reg.sp++); + gb->cpu_reg.hl.bytes.l = __gb_read(gb, gb->cpu_reg.sp.reg++); + gb->cpu_reg.hl.bytes.h = __gb_read(gb, gb->cpu_reg.sp.reg++); break; case 0xE2: /* LD (C), A */ - __gb_write(gb, 0xFF00 | gb->cpu_reg.c, gb->cpu_reg.a); + __gb_write(gb, 0xFF00 | gb->cpu_reg.bc.bytes.c, gb->cpu_reg.a); break; case 0xE5: /* PUSH HL */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.h); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.l); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.hl.bytes.h); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.hl.bytes.l); break; case 0xE6: /* AND imm */ /* TODO: Optimisation? */ - gb->cpu_reg.a = gb->cpu_reg.a & __gb_read(gb, gb->cpu_reg.pc++); + gb->cpu_reg.a = gb->cpu_reg.a & __gb_read(gb, gb->cpu_reg.pc.reg++); gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); gb->cpu_reg.f_bits.n = 0; gb->cpu_reg.f_bits.h = 1; @@ -3208,67 +3480,65 @@ void __gb_step_cpu(struct gb_s *gb) break; case 0xE7: /* RST 0x0020 */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0020; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0020; break; case 0xE8: /* ADD SP, imm */ { - int8_t offset = (int8_t) __gb_read(gb, gb->cpu_reg.pc++); - /* TODO: Move flag assignments for optimisation. */ + int8_t offset = (int8_t) __gb_read(gb, gb->cpu_reg.pc.reg++); gb->cpu_reg.f_bits.z = 0; gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.sp & 0xF) + (offset & 0xF) > 0xF) ? 1 : 0; - gb->cpu_reg.f_bits.c = ((gb->cpu_reg.sp & 0xFF) + (offset & 0xFF) > 0xFF); - gb->cpu_reg.sp += offset; + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.sp.reg & 0xF) + (offset & 0xF) > 0xF) ? 1 : 0; + gb->cpu_reg.f_bits.c = ((gb->cpu_reg.sp.reg & 0xFF) + (offset & 0xFF) > 0xFF); + gb->cpu_reg.sp.reg += offset; break; } case 0xE9: /* JP (HL) */ - gb->cpu_reg.pc = gb->cpu_reg.hl; + gb->cpu_reg.pc.reg = gb->cpu_reg.hl.reg; break; case 0xEA: /* LD (imm), A */ { - uint16_t addr = __gb_read(gb, gb->cpu_reg.pc++); - addr |= __gb_read(gb, gb->cpu_reg.pc++) << 8; + uint8_t h, l; + uint16_t addr; + l = __gb_read(gb, gb->cpu_reg.pc.reg++); + h = __gb_read(gb, gb->cpu_reg.pc.reg++); + addr = PEANUT_GB_U8_TO_U16(h, l); __gb_write(gb, addr, gb->cpu_reg.a); break; } case 0xEE: /* XOR imm */ - gb->cpu_reg.a = gb->cpu_reg.a ^ __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_XOR_R8(__gb_read(gb, gb->cpu_reg.pc.reg++)); break; case 0xEF: /* RST 0x0028 */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0028; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0028; break; case 0xF0: /* LD A, (0xFF00+imm) */ gb->cpu_reg.a = - __gb_read(gb, 0xFF00 | __gb_read(gb, gb->cpu_reg.pc++)); + __gb_read(gb, 0xFF00 | __gb_read(gb, gb->cpu_reg.pc.reg++)); break; case 0xF1: /* POP AF */ { - uint8_t temp_8 = __gb_read(gb, gb->cpu_reg.sp++); + uint8_t temp_8 = __gb_read(gb, gb->cpu_reg.sp.reg++); gb->cpu_reg.f_bits.z = (temp_8 >> 7) & 1; gb->cpu_reg.f_bits.n = (temp_8 >> 6) & 1; gb->cpu_reg.f_bits.h = (temp_8 >> 5) & 1; gb->cpu_reg.f_bits.c = (temp_8 >> 4) & 1; - gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.sp++); + gb->cpu_reg.a = __gb_read(gb, gb->cpu_reg.sp.reg++); break; } case 0xF2: /* LD A, (C) */ - gb->cpu_reg.a = __gb_read(gb, 0xFF00 | gb->cpu_reg.c); + gb->cpu_reg.a = __gb_read(gb, 0xFF00 | gb->cpu_reg.bc.bytes.c); break; case 0xF3: /* DI */ @@ -3276,47 +3546,46 @@ void __gb_step_cpu(struct gb_s *gb) break; case 0xF5: /* PUSH AF */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.a); - __gb_write(gb, --gb->cpu_reg.sp, + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.a); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.f_bits.z << 7 | gb->cpu_reg.f_bits.n << 6 | gb->cpu_reg.f_bits.h << 5 | gb->cpu_reg.f_bits.c << 4); break; case 0xF6: /* OR imm */ - gb->cpu_reg.a = gb->cpu_reg.a | __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.f_bits.z = (gb->cpu_reg.a == 0x00); - gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = 0; - gb->cpu_reg.f_bits.c = 0; + PGB_INSTR_OR_R8(__gb_read(gb, gb->cpu_reg.pc.reg++)); break; case 0xF7: /* PUSH AF */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0030; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0030; break; case 0xF8: /* LD HL, SP+/-imm */ { /* Taken from SameBoy, which is released under MIT Licence. */ - int8_t offset = (int8_t) __gb_read(gb, gb->cpu_reg.pc++); - gb->cpu_reg.hl = gb->cpu_reg.sp + offset; + int8_t offset = (int8_t) __gb_read(gb, gb->cpu_reg.pc.reg++); + gb->cpu_reg.hl.reg = gb->cpu_reg.sp.reg + offset; gb->cpu_reg.f_bits.z = 0; gb->cpu_reg.f_bits.n = 0; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.sp & 0xF) + (offset & 0xF) > 0xF) ? 1 : 0; - gb->cpu_reg.f_bits.c = ((gb->cpu_reg.sp & 0xFF) + (offset & 0xFF) > 0xFF) ? 1 : + gb->cpu_reg.f_bits.h = ((gb->cpu_reg.sp.reg & 0xF) + (offset & 0xF) > 0xF) ? 1 : 0; + gb->cpu_reg.f_bits.c = ((gb->cpu_reg.sp.reg & 0xFF) + (offset & 0xFF) > 0xFF) ? 1 : 0; break; } case 0xF9: /* LD SP, HL */ - gb->cpu_reg.sp = gb->cpu_reg.hl; + gb->cpu_reg.sp.reg = gb->cpu_reg.hl.reg; break; case 0xFA: /* LD A, (imm) */ { - uint16_t addr = __gb_read(gb, gb->cpu_reg.pc++); - addr |= __gb_read(gb, gb->cpu_reg.pc++) << 8; + uint8_t h, l; + uint16_t addr; + l = __gb_read(gb, gb->cpu_reg.pc.reg++); + h = __gb_read(gb, gb->cpu_reg.pc.reg++); + addr = PEANUT_GB_U8_TO_U16(h, l); gb->cpu_reg.a = __gb_read(gb, addr); break; } @@ -3327,198 +3596,241 @@ void __gb_step_cpu(struct gb_s *gb) case 0xFE: /* CP imm */ { - uint8_t temp_8 = __gb_read(gb, gb->cpu_reg.pc++); - uint16_t temp_16 = gb->cpu_reg.a - temp_8; - gb->cpu_reg.f_bits.z = ((temp_16 & 0xFF) == 0x00); - gb->cpu_reg.f_bits.n = 1; - gb->cpu_reg.f_bits.h = ((gb->cpu_reg.a ^ temp_8 ^ temp_16) & 0x10) ? 1 : 0; - gb->cpu_reg.f_bits.c = (temp_16 & 0xFF00) ? 1 : 0; + uint8_t val = __gb_read(gb, gb->cpu_reg.pc.reg++); + PGB_INSTR_CP_R8(val); break; } case 0xFF: /* RST 0x0038 */ - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc >> 8); - __gb_write(gb, --gb->cpu_reg.sp, gb->cpu_reg.pc & 0xFF); - gb->cpu_reg.pc = 0x0038; + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.p); + __gb_write(gb, --gb->cpu_reg.sp.reg, gb->cpu_reg.pc.bytes.c); + gb->cpu_reg.pc.reg = 0x0038; break; default: - (gb->gb_error)(gb, GB_INVALID_OPCODE, opcode); + /* Return address where invlid opcode that was read. */ + (gb->gb_error)(gb, GB_INVALID_OPCODE, gb->cpu_reg.pc.reg - 1); + PGB_UNREACHABLE(); } - /* DIV register timing */ - gb->counter.div_count += inst_cycles; - - if(gb->counter.div_count >= DIV_CYCLES) + do { - gb->gb_reg.DIV++; - gb->counter.div_count -= DIV_CYCLES; - } + /* DIV register timing */ + gb->counter.div_count += inst_cycles; + while(gb->counter.div_count >= DIV_CYCLES) + { + gb->hram_io[IO_DIV]++; + gb->counter.div_count -= DIV_CYCLES; + } - /* Check serial transmission. */ - if(gb->gb_reg.SC & SERIAL_SC_TX_START) - { - /* If new transfer, call TX function. */ - if(gb->counter.serial_count == 0 && gb->gb_serial_tx != NULL) - (gb->gb_serial_tx)(gb, gb->gb_reg.SB); + /* Check serial transmission. */ + if(gb->hram_io[IO_SC] & SERIAL_SC_TX_START) + { + unsigned int serial_cycles = SERIAL_CYCLES_1KB; - gb->counter.serial_count += inst_cycles; + /* If new transfer, call TX function. */ + if(gb->counter.serial_count == 0 && + gb->gb_serial_tx != NULL) + (gb->gb_serial_tx)(gb, gb->hram_io[IO_SB]); - /* If it's time to receive byte, call RX function. */ - if(gb->counter.serial_count >= SERIAL_CYCLES) - { - /* If RX can be done, do it. */ - /* If RX failed, do not change SB if using external - * clock, or set to 0xFF if using internal clock. */ - uint8_t rx; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->hram_io[IO_SC] & 0x3) + serial_cycles = SERIAL_CYCLES_32KB; +#endif - if(gb->gb_serial_rx != NULL && - (gb->gb_serial_rx(gb, &rx) == - GB_SERIAL_RX_SUCCESS)) - { - gb->gb_reg.SB = rx; + gb->counter.serial_count += inst_cycles; - /* Inform game of serial TX/RX completion. */ - gb->gb_reg.SC &= 0x01; - gb->gb_reg.IF |= SERIAL_INTR; - } - else if(gb->gb_reg.SC & SERIAL_SC_CLOCK_SRC) - { - /* If using internal clock, and console is not - * attached to any external peripheral, shifted - * bits are replaced with logic 1. */ - gb->gb_reg.SB = 0xFF; - - /* Inform game of serial TX/RX completion. */ - gb->gb_reg.SC &= 0x01; - gb->gb_reg.IF |= SERIAL_INTR; - } - else + /* If it's time to receive byte, call RX function. */ + if(gb->counter.serial_count >= serial_cycles) { - /* If using external clock, and console is not - * attached to any external peripheral, bits are - * not shifted, so SB is not modified. */ - } - - gb->counter.serial_count = 0; - } - } + /* If RX can be done, do it. */ + /* If RX failed, do not change SB if using external + * clock, or set to 0xFF if using internal clock. */ + uint8_t rx; + + if(gb->gb_serial_rx != NULL && + (gb->gb_serial_rx(gb, &rx) == + GB_SERIAL_RX_SUCCESS)) + { + gb->hram_io[IO_SB] = rx; - /* TIMA register timing */ - /* TODO: Change tac_enable to struct of TAC timer control bits. */ - if(gb->gb_reg.tac_enable) - { - static const uint_fast16_t TAC_CYCLES[4] = {1024, 16, 64, 256}; + /* Inform game of serial TX/RX completion. */ + gb->hram_io[IO_SC] &= 0x01; + gb->hram_io[IO_IF] |= SERIAL_INTR; + } + else if(gb->hram_io[IO_SC] & SERIAL_SC_CLOCK_SRC) + { + /* If using internal clock, and console is not + * attached to any external peripheral, shifted + * bits are replaced with logic 1. */ + gb->hram_io[IO_SB] = 0xFF; + + /* Inform game of serial TX/RX completion. */ + gb->hram_io[IO_SC] &= 0x01; + gb->hram_io[IO_IF] |= SERIAL_INTR; + } + else + { + /* If using external clock, and console is not + * attached to any external peripheral, bits are + * not shifted, so SB is not modified. */ + } - gb->counter.tima_count += inst_cycles; + gb->counter.serial_count = 0; + } + } - while(gb->counter.tima_count >= TAC_CYCLES[gb->gb_reg.tac_rate]) + /* TIMA register timing */ + /* TODO: Change tac_enable to struct of TAC timer control bits. */ + if(gb->hram_io[IO_TAC] & IO_TAC_ENABLE_MASK) { - gb->counter.tima_count -= TAC_CYCLES[gb->gb_reg.tac_rate]; + gb->counter.tima_count += inst_cycles; - if(++gb->gb_reg.TIMA == 0) + while(gb->counter.tima_count >= + TAC_CYCLES[gb->hram_io[IO_TAC] & IO_TAC_RATE_MASK]) { - gb->gb_reg.IF |= TIMER_INTR; - /* On overflow, set TMA to TIMA. */ - gb->gb_reg.TIMA = gb->gb_reg.TMA; + gb->counter.tima_count -= + TAC_CYCLES[gb->hram_io[IO_TAC] & IO_TAC_RATE_MASK]; + + if(++gb->hram_io[IO_TIMA] == 0) + { + gb->hram_io[IO_IF] |= TIMER_INTR; + /* On overflow, set TMA to TIMA. */ + gb->hram_io[IO_TIMA] = gb->hram_io[IO_TMA]; + } } } - } - - /* TODO Check behaviour of LCD during LCD power off state. */ - /* If LCD is off, don't update LCD state. */ - if((gb->gb_reg.LCDC & LCDC_ENABLE) == 0) - return; - /* LCD Timing */ - gb->counter.lcd_count += inst_cycles; + /* If LCD is off, don't update LCD state or increase the LCD + * ticks. */ + if(!(gb->hram_io[IO_LCDC] & LCDC_ENABLE)) + continue; - /* New Scanline */ - if(gb->counter.lcd_count > LCD_LINE_CYCLES) - { - gb->counter.lcd_count -= LCD_LINE_CYCLES; + /* LCD Timing */ +#if PEANUT_FULL_GBC_SUPPORT + if (inst_cycles > 1) + gb->counter.lcd_count += (inst_cycles >> gb->cgb.doubleSpeed); + else +#endif + gb->counter.lcd_count += inst_cycles; - /* LYC Update */ - if(gb->gb_reg.LY == gb->gb_reg.LYC) + /* New Scanline */ + if(gb->counter.lcd_count >= LCD_LINE_CYCLES) { - gb->gb_reg.STAT |= STAT_LYC_COINC; + gb->counter.lcd_count -= LCD_LINE_CYCLES; - if(gb->gb_reg.STAT & STAT_LYC_INTR) - gb->gb_reg.IF |= LCDC_INTR; - } - else - gb->gb_reg.STAT &= 0xFB; + /* Next line */ + gb->hram_io[IO_LY] = (gb->hram_io[IO_LY] + 1) % LCD_VERT_LINES; - /* Next line */ - gb->gb_reg.LY = (gb->gb_reg.LY + 1) % LCD_VERT_LINES; + /* LYC Update */ + if(gb->hram_io[IO_LY] == gb->hram_io[IO_LYC]) + { + gb->hram_io[IO_STAT] |= STAT_LYC_COINC; - /* VBLANK Start */ - if(gb->gb_reg.LY == LCD_HEIGHT) - { - gb->lcd_mode = LCD_VBLANK; - gb->gb_frame = 1; - gb->gb_reg.IF |= VBLANK_INTR; + if(gb->hram_io[IO_STAT] & STAT_LYC_INTR) + gb->hram_io[IO_IF] |= LCDC_INTR; + } + else + gb->hram_io[IO_STAT] &= 0xFB; + + /* VBLANK Start */ + if(gb->hram_io[IO_LY] == LCD_HEIGHT) + { + gb->hram_io[IO_STAT] = + (gb->hram_io[IO_STAT] & ~STAT_MODE) | IO_STAT_MODE_VBLANK; + gb->gb_frame = 1; + gb->hram_io[IO_IF] |= VBLANK_INTR; + gb->lcd_blank = 0; - if(gb->gb_reg.STAT & STAT_MODE_1_INTR) - gb->gb_reg.IF |= LCDC_INTR; + if(gb->hram_io[IO_STAT] & STAT_MODE_1_INTR) + gb->hram_io[IO_IF] |= LCDC_INTR; #if ENABLE_LCD + /* If frame skip is activated, check if we need to draw + * the frame or skip it. */ + if(gb->direct.frame_skip) + { + gb->display.frame_skip_count = + !gb->display.frame_skip_count; + } - /* If frame skip is activated, check if we need to draw - * the frame or skip it. */ - if(gb->direct.frame_skip) - { - gb->display.frame_skip_count = - !gb->display.frame_skip_count; + /* If interlaced is activated, change which lines get + * updated. Also, only update lines on frames that are + * actually drawn when frame skip is enabled. */ + if(gb->direct.interlace && + (!gb->direct.frame_skip || + gb->display.frame_skip_count)) + { + gb->display.interlace_count = + !gb->display.interlace_count; + } +#endif } - - /* If interlaced is activated, change which lines get - * updated. Also, only update lines on frames that are - * actually drawn when frame skip is enabled. */ - if(gb->direct.interlace && - (!gb->direct.frame_skip || - gb->display.frame_skip_count)) + /* Normal Line */ + else if(gb->hram_io[IO_LY] < LCD_HEIGHT) { - gb->display.interlace_count = - !gb->display.interlace_count; - } + if(gb->hram_io[IO_LY] == 0) + { + /* Clear Screen */ + gb->display.WY = gb->hram_io[IO_WY]; + gb->display.window_clear = 0; + } + + gb->hram_io[IO_STAT] = + (gb->hram_io[IO_STAT] & ~STAT_MODE) | IO_STAT_MODE_HBLANK; +#if PEANUT_FULL_GBC_SUPPORT + //DMA GBC + if(gb->cgb.cgbMode && !gb->cgb.dmaActive && gb->cgb.dmaMode) + { + for (uint8_t i = 0; i < 0x10; i++) + { + __gb_write(gb, ((gb->cgb.dmaDest & 0x1FF0) | 0x8000) + i, + __gb_read(gb, (gb->cgb.dmaSource & 0xFFF0) + i)); + } + gb->cgb.dmaSource += 0x10; + gb->cgb.dmaDest += 0x10; + if(!(--gb->cgb.dmaSize)) gb->cgb.dmaActive = 1; + } #endif + if(gb->hram_io[IO_STAT] & STAT_MODE_0_INTR) + gb->hram_io[IO_IF] |= LCDC_INTR; + + /* If halted immediately jump to next LCD mode. */ + if(gb->counter.lcd_count < LCD_MODE_2_CYCLES) + inst_cycles = LCD_MODE_2_CYCLES - gb->counter.lcd_count; + } } - /* Normal Line */ - else if(gb->gb_reg.LY < LCD_HEIGHT) + /* OAM access */ + else if((gb->hram_io[IO_STAT] & STAT_MODE) == IO_STAT_MODE_HBLANK && + gb->counter.lcd_count >= LCD_MODE_2_CYCLES) { - if(gb->gb_reg.LY == 0) - { - /* Clear Screen */ - gb->display.WY = gb->gb_reg.WY; - gb->display.window_clear = 0; - } + gb->hram_io[IO_STAT] = + (gb->hram_io[IO_STAT] & ~STAT_MODE) | IO_STAT_MODE_SEARCH_OAM; - gb->lcd_mode = LCD_HBLANK; + if(gb->hram_io[IO_STAT] & STAT_MODE_2_INTR) + gb->hram_io[IO_IF] |= LCDC_INTR; - if(gb->gb_reg.STAT & STAT_MODE_0_INTR) - gb->gb_reg.IF |= LCDC_INTR; + /* If halted immediately jump to next LCD mode. */ + if (gb->counter.lcd_count < LCD_MODE_3_CYCLES) + inst_cycles = LCD_MODE_3_CYCLES - gb->counter.lcd_count; } - } - /* OAM access */ - else if(gb->lcd_mode == LCD_HBLANK - && gb->counter.lcd_count >= LCD_MODE_2_CYCLES) - { - gb->lcd_mode = LCD_SEARCH_OAM; - - if(gb->gb_reg.STAT & STAT_MODE_2_INTR) - gb->gb_reg.IF |= LCDC_INTR; - } - /* Update LCD */ - else if(gb->lcd_mode == LCD_SEARCH_OAM - && gb->counter.lcd_count >= LCD_MODE_3_CYCLES) - { - gb->lcd_mode = LCD_TRANSFER; + /* Update LCD */ + else if((gb->hram_io[IO_STAT] & STAT_MODE) == IO_STAT_MODE_SEARCH_OAM && + gb->counter.lcd_count >= LCD_MODE_3_CYCLES) + { + gb->hram_io[IO_STAT] = + (gb->hram_io[IO_STAT] & ~STAT_MODE) | IO_STAT_MODE_SEARCH_TRANSFER; #if ENABLE_LCD - __gb_draw_line(gb); + if(!gb->lcd_blank) + __gb_draw_line(gb); #endif - } + /* If halted immediately jump to next LCD mode. */ + if (gb->counter.lcd_count < LCD_MODE_0_CYCLES) + inst_cycles = LCD_MODE_0_CYCLES - gb->counter.lcd_count; + } + } while(gb->gb_halt && (gb->hram_io[IO_IF] & gb->hram_io[IO_IE]) == 0); + /* If halted, loop until an interrupt occurs. */ } void gb_run_frame(struct gb_s *gb) @@ -3540,15 +3852,14 @@ uint_fast32_t gb_get_save_size(struct gb_s *gb) 0x00, 0x800, 0x2000, 0x8000, 0x20000 }; uint8_t ram_size = gb->gb_rom_read(gb, ram_size_location); + + /* MBC2 always has 512 half-bytes of cart RAM. */ + if(gb->mbc == 2) + return 0x200; + return ram_sizes[ram_size]; } -/** - * Set the function used to handle serial transfer in the front-end. This is - * optional. - * gb_serial_transfer takes a byte to transmit and returns the received byte. If - * no cable is connected to the console, return 0xFF. - */ void gb_init_serial(struct gb_s *gb, void (*gb_serial_tx)(struct gb_s*, const uint8_t), enum gb_serial_rx_ret_e (*gb_serial_rx)(struct gb_s*, @@ -3564,22 +3875,21 @@ uint8_t gb_colour_hash(struct gb_s *gb) #define ROM_TITLE_END_ADDR 0x0143 uint8_t x = 0; + uint16_t i; - for(uint16_t i = ROM_TITLE_START_ADDR; i <= ROM_TITLE_END_ADDR; i++) + for(i = ROM_TITLE_START_ADDR; i <= ROM_TITLE_END_ADDR; i++) x += gb->gb_rom_read(gb, i); return x; } /** - * Resets the context, and initialises startup values. + * Resets the context, and initialises startup values for a DMG console. */ void gb_reset(struct gb_s *gb) { gb->gb_halt = 0; gb->gb_ime = 1; - gb->gb_bios_enable = 0; - gb->lcd_mode = LCD_HBLANK; /* Initialise MBC values. */ gb->selected_rom_bank = 1; @@ -3587,52 +3897,111 @@ void gb_reset(struct gb_s *gb) gb->enable_cart_ram = 0; gb->cart_mode_select = 0; - /* Initialise CPU registers as though a DMG. */ - gb->cpu_reg.af = 0x01B0; - gb->cpu_reg.bc = 0x0013; - gb->cpu_reg.de = 0x00D8; - gb->cpu_reg.hl = 0x014D; - gb->cpu_reg.sp = 0xFFFE; - /* TODO: Add BIOS support. */ - gb->cpu_reg.pc = 0x0100; + /* Use values as though the boot ROM was already executed. */ + if(gb->gb_bootrom_read == NULL) + { + uint8_t hdr_chk; + hdr_chk = gb->gb_rom_read(gb, ROM_HEADER_CHECKSUM_LOC) != 0; + + gb->cpu_reg.a = 0x01; + gb->cpu_reg.f_bits.z = 1; + gb->cpu_reg.f_bits.n = 0; + gb->cpu_reg.f_bits.h = hdr_chk; + gb->cpu_reg.f_bits.c = hdr_chk; + gb->cpu_reg.bc.reg = 0x0013; + gb->cpu_reg.de.reg = 0x00D8; + gb->cpu_reg.hl.reg = 0x014D; + gb->cpu_reg.sp.reg = 0xFFFE; + gb->cpu_reg.pc.reg = 0x0100; + + gb->hram_io[IO_DIV ] = 0xAB; + gb->hram_io[IO_LCDC] = 0x91; + gb->hram_io[IO_STAT] = 0x85; + gb->hram_io[IO_BANK] = 0x01; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) + { + gb->cpu_reg.a = 0x11; + gb->cpu_reg.f_bits.z = 1; + gb->cpu_reg.f_bits.n = 0; + gb->cpu_reg.f_bits.h = hdr_chk; + gb->cpu_reg.f_bits.c = hdr_chk; + gb->cpu_reg.bc.reg = 0x0000; + gb->cpu_reg.de.reg = 0x0008; + gb->cpu_reg.hl.reg = 0x007C; + gb->hram_io[IO_DIV] = 0xFF; + } +#endif + + memset(gb->vram, 0x00, VRAM_SIZE); + } + else + { + /* Set value as though the console was just switched on. + * CPU registers are uninitialised. */ + gb->cpu_reg.pc.reg = 0x0000; + gb->hram_io[IO_DIV ] = 0x00; + gb->hram_io[IO_LCDC] = 0x00; + gb->hram_io[IO_STAT] = 0x84; + gb->hram_io[IO_BANK] = 0x00; + } gb->counter.lcd_count = 0; gb->counter.div_count = 0; gb->counter.tima_count = 0; gb->counter.serial_count = 0; - gb->gb_reg.TIMA = 0x00; - gb->gb_reg.TMA = 0x00; - gb->gb_reg.TAC = 0xF8; - gb->gb_reg.DIV = 0xAC; - - gb->gb_reg.IF = 0xE1; - - gb->gb_reg.LCDC = 0x91; - gb->gb_reg.SCY = 0x00; - gb->gb_reg.SCX = 0x00; - gb->gb_reg.LYC = 0x00; - - /* Appease valgrind for invalid reads and unconditional jumps. */ - gb->gb_reg.SC = 0x7E; - gb->gb_reg.STAT = 0; - gb->gb_reg.LY = 0; - - __gb_write(gb, 0xFF47, 0xFC); // BGP - __gb_write(gb, 0xFF48, 0xFF); // OBJP0 - __gb_write(gb, 0xFF49, 0x0F); // OBJP1 - gb->gb_reg.WY = 0x00; - gb->gb_reg.WX = 0x00; - gb->gb_reg.IE = 0x00; - gb->direct.joypad = 0xFF; - gb->gb_reg.P1 = 0xCF; + gb->hram_io[IO_JOYP] = 0xCF; + gb->hram_io[IO_SB ] = 0x00; + gb->hram_io[IO_SC ] = 0x7E; +#if PEANUT_FULL_GBC_SUPPORT + if(gb->cgb.cgbMode) gb->hram_io[IO_SC] = 0x7F; +#endif + /* DIV */ + gb->hram_io[IO_TIMA] = 0x00; + gb->hram_io[IO_TMA ] = 0x00; + gb->hram_io[IO_TAC ] = 0xF8; + gb->hram_io[IO_IF ] = 0xE1; + + /* LCDC */ + /* STAT */ + gb->hram_io[IO_SCY ] = 0x00; + gb->hram_io[IO_SCX ] = 0x00; + gb->hram_io[IO_LY ] = 0x00; + gb->hram_io[IO_LYC ] = 0x00; + __gb_write(gb, 0xFF47, 0xFC); // BGP + __gb_write(gb, 0xFF48, 0xFF); // OBJP0 + __gb_write(gb, 0xFF49, 0xFF); // OBJP1 + gb->hram_io[IO_WY] = 0x00; + gb->hram_io[IO_WX] = 0x00; + gb->hram_io[IO_IE] = 0x00; + gb->hram_io[IO_IF] = 0xE1; +#if PEANUT_FULL_GBC_SUPPORT + /* Initialize some CGB registers */ + gb->cgb.doubleSpeed = 0; + gb->cgb.doubleSpeedPrep = 0; + gb->cgb.wramBank = 1; + gb->cgb.wramBankOffset = WRAM_0_ADDR; + gb->cgb.vramBank = 0; + gb->cgb.vramBankOffset = VRAM_ADDR; + for (int i = 0; i < 0x20; i++) + { + gb->cgb.OAMPalette[(i << 1)] = gb->cgb.BGPalette[(i << 1)] = 0x7F; + gb->cgb.OAMPalette[(i << 1) + 1] = gb->cgb.BGPalette[(i << 1) + 1] = 0xFF; + } + gb->cgb.OAMPaletteID = 0; + gb->cgb.BGPaletteID = 0; + gb->cgb.OAMPaletteInc = 0; + gb->cgb.BGPaletteInc = 0; + gb->cgb.dmaActive = 1; // Not active + gb->cgb.dmaMode = 0; + gb->cgb.dmaSize = 0; + gb->cgb.dmaSource = 0; + gb->cgb.dmaDest = 0; +#endif } -/** - * Initialise the emulator context. gb_reset() is also called to initialise - * the CPU. - */ enum gb_init_error_e gb_init(struct gb_s *gb, uint8_t (*gb_rom_read)(struct gb_s*, const uint_fast32_t), uint8_t (*gb_cart_ram_read)(struct gb_s*, const uint_fast32_t), @@ -3640,6 +4009,9 @@ enum gb_init_error_e gb_init(struct gb_s *gb, void (*gb_error)(struct gb_s*, const enum gb_error_e, const uint16_t), void *priv) { +#if PEANUT_FULL_GBC_SUPPORT + const uint16_t cgb_flag = 0x0143; +#endif const uint16_t mbc_location = 0x0147; const uint16_t bank_count_location = 0x0148; const uint16_t ram_size_location = 0x0149; @@ -3653,24 +4025,19 @@ enum gb_init_error_e gb_init(struct gb_s *gb, * TODO: HuC3 is unsupported. * TODO: HuC1 is unsupported. **/ - const uint8_t cart_mbc[] = + const int8_t cart_mbc[] = { 0, 1, 1, 1, -1, 2, 2, -1, 0, 0, -1, 0, 0, 0, -1, 3, 3, 3, 3, 3, -1, -1, -1, -1, -1, 5, 5, 5, 5, 5, 5, -1 }; const uint8_t cart_ram[] = { - 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, + 0, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0 }; - const uint16_t num_rom_banks[] = + const uint16_t num_rom_banks_mask[] = { - 2, 4, 8, 16, 32, 64, 128, 256, 512, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 72, 80, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + 2, 4, 8, 16, 32, 64, 128, 256, 512 }; const uint8_t num_ram_banks[] = { 0, 1, 1, 4, 16, 8 }; @@ -3686,11 +4053,14 @@ enum gb_init_error_e gb_init(struct gb_s *gb, gb->gb_serial_tx = NULL; gb->gb_serial_rx = NULL; + gb->gb_bootrom_read = NULL; + /* Check valid ROM using checksum value. */ { uint8_t x = 0; + uint16_t i; - for(uint16_t i = 0x0134; i <= 0x014C; i++) + for(i = 0x0134; i <= 0x014C; i++) x = x - gb->gb_rom_read(gb, i) - 1; if(x != gb->gb_rom_read(gb, ROM_HEADER_CHECKSUM_LOC)) @@ -3699,17 +4069,25 @@ enum gb_init_error_e gb_init(struct gb_s *gb, /* Check if cartridge type is supported, and set MBC type. */ { +#if PEANUT_FULL_GBC_SUPPORT + gb->cgb.cgbMode = (gb->gb_rom_read(gb, cgb_flag) & 0x80) >> 7; +#endif const uint8_t mbc_value = gb->gb_rom_read(gb, mbc_location); if(mbc_value > sizeof(cart_mbc) - 1 || - (gb->mbc = cart_mbc[gb->gb_rom_read(gb, mbc_location)]) == 255u) + (gb->mbc = cart_mbc[mbc_value]) == -1) return GB_INIT_CARTRIDGE_UNSUPPORTED; } gb->cart_ram = cart_ram[gb->gb_rom_read(gb, mbc_location)]; - gb->num_rom_banks = num_rom_banks[gb->gb_rom_read(gb, bank_count_location)]; + gb->num_rom_banks_mask = num_rom_banks_mask[gb->gb_rom_read(gb, bank_count_location)] - 1; gb->num_ram_banks = num_ram_banks[gb->gb_rom_read(gb, ram_size_location)]; + /* Note that MBC2 will appear to have no RAM banks, but it actually + * always has 512 half-bytes of RAM. Hence, gb->num_ram_banks must be + * ignored for MBC2. */ + + gb->lcd_blank = 0; gb->display.lcd_draw_line = NULL; gb_reset(gb); @@ -3717,14 +4095,7 @@ enum gb_init_error_e gb_init(struct gb_s *gb, return GB_INIT_NO_ERROR; } -/** - * Returns the title of ROM. - * - * \param gb Initialised context. - * \param title_str Allocated string at least 16 characters. - * \returns Pointer to start of string, null terminated. - */ -const char* gb_get_rom_name(struct gb_s* gb, char title_str[static 16]) +const char* gb_get_rom_name(struct gb_s* gb, char *title_str) { uint_fast16_t title_loc = 0x134; /* End of title may be 0x13E for newer games. */ @@ -3750,8 +4121,8 @@ const char* gb_get_rom_name(struct gb_s* gb, char title_str[static 16]) #if ENABLE_LCD void gb_init_lcd(struct gb_s *gb, - void (*lcd_draw_line)(struct gb_s*, - const uint8_t pixels[static 160], + void (*lcd_draw_line)(struct gb_s *gb, + const uint8_t *pixels, const uint_fast8_t line)) { gb->display.lcd_draw_line = lcd_draw_line; @@ -3767,3 +4138,216 @@ void gb_init_lcd(struct gb_s *gb, return; } #endif + +void gb_set_bootrom(struct gb_s *gb, + uint8_t (*gb_bootrom_read)(struct gb_s*, const uint_fast16_t)) +{ + gb->gb_bootrom_read = gb_bootrom_read; +} + +/** + * This was taken from SameBoy, which is released under MIT Licence. + */ +void gb_tick_rtc(struct gb_s *gb) +{ + /* is timer running? */ + if((gb->cart_rtc[4] & 0x40) == 0) + { + if(++gb->rtc_bits.sec == 60) + { + gb->rtc_bits.sec = 0; + + if(++gb->rtc_bits.min == 60) + { + gb->rtc_bits.min = 0; + + if(++gb->rtc_bits.hour == 24) + { + gb->rtc_bits.hour = 0; + + if(++gb->rtc_bits.yday == 0) + { + if(gb->rtc_bits.high & 1) /* Bit 8 of days*/ + { + gb->rtc_bits.high |= 0x80; /* Overflow bit */ + } + + gb->rtc_bits.high ^= 1; + } + } + } + } + } +} + +void gb_set_rtc(struct gb_s *gb, const struct tm * const time) +{ + gb->cart_rtc[0] = time->tm_sec; + gb->cart_rtc[1] = time->tm_min; + gb->cart_rtc[2] = time->tm_hour; + gb->cart_rtc[3] = time->tm_yday & 0xFF; /* Low 8 bits of day counter. */ + gb->cart_rtc[4] = time->tm_yday >> 8; /* High 1 bit of day counter. */ +} +#endif // PEANUT_GB_HEADER_ONLY + +/** Function prototypes: Required functions **/ +/** + * Initialises the emulator context to a known state. Call this before calling + * any other peanut-gb function. + * To reset the emulator, you can call gb_reset() instead. + * + * \param gb Allocated emulator context. Must not be NULL. + * \param gb_rom_read Pointer to function that reads ROM data. ROM banking is + * already handled by Peanut-GB. Must not be NULL. + * \param gb_cart_ram_read Pointer to function that reads Cart RAM. Must not be + * NULL. + * \param gb_cart_ram_write Pointer to function to writes to Cart RAM. Must not + * be NULL. + * \param gb_error Pointer to function that is called when an unrecoverable + * error occurs. Must not be NULL. Returning from this + * function is undefined and will result in SIGABRT. + * \param priv Private data that is stored within the emulator context. Set to + * NULL if unused. + * \returns 0 on success or an enum that describes the error. + */ +enum gb_init_error_e gb_init(struct gb_s *gb, + uint8_t (*gb_rom_read)(struct gb_s*, const uint_fast32_t), + uint8_t (*gb_cart_ram_read)(struct gb_s*, const uint_fast32_t), + void (*gb_cart_ram_write)(struct gb_s*, const uint_fast32_t, const uint8_t), + void (*gb_error)(struct gb_s*, const enum gb_error_e, const uint16_t), + void *priv); + +/** + * Executes the emulator and runs for one frame. + * + * \param An initialised emulator context. Must not be NULL. + */ +void gb_run_frame(struct gb_s *gb); + +/** + * Internal function used to step the CPU. Used mainly for testing. + * Use gb_run_frame() instead. + * + * \param An initialised emulator context. Must not be NULL. + */ +void __gb_step_cpu(struct gb_s *gb); + +/** Function prototypes: Optional Functions **/ +/** + * Reset the emulator, like turning the Game Boy off and on again. + * This function can be called at any time. + * + * \param An initialised emulator context. Must not be NULL. + */ +void gb_reset(struct gb_s *gb); + +/** + * Initialises the display context of the emulator. Only available when + * ENABLE_LCD is defined to a non-zero value. + * The pixel data sent to lcd_draw_line comes with both shade and layer data. + * The first two least significant bits are the shade data (black, dark, light, + * white). Bits 4 and 5 are layer data (OBJ0, OBJ1, BG), which can be used to + * add more colours to the game in the same way that the Game Boy Color does to + * older Game Boy games. + * This function can be called at any time. + * + * \param gb An initialised emulator context. Must not be NULL. + * \param lcd_draw_line Pointer to function that draws the 2-bit pixel data on the line + * "line". Must not be NULL. + */ +#if ENABLE_LCD +void gb_init_lcd(struct gb_s *gb, + void (*lcd_draw_line)(struct gb_s *gb, + const uint8_t *pixels, + const uint_fast8_t line)); +#endif + +/** + * Initialises the serial connection of the emulator. This function is optional, + * and if not called, the emulator will assume that no link cable is connected + * to the game. + * + * \param gb An initialised emulator context. Must not be NULL. + * \param gb_serial_tx Pointer to function that transmits a byte of data over + * the serial connection. Must not be NULL. + * \param gb_serial_rx Pointer to function that receives a byte of data over the + * serial connection. If no byte is received, + * return GB_SERIAL_RX_NO_CONNECTION. Must not be NULL. + */ +void gb_init_serial(struct gb_s *gb, + void (*gb_serial_tx)(struct gb_s*, const uint8_t), + enum gb_serial_rx_ret_e (*gb_serial_rx)(struct gb_s*, + uint8_t*)); + +/** + * Obtains the save size of the game (size of the Cart RAM). Required by the + * frontend to allocate enough memory for the Cart RAM. + * + * \param gb An initialised emulator context. Must not be NULL. + * \returns Size of the Cart RAM in bytes. 0 if Cartridge has not battery + * backed RAM. + */ +uint_fast32_t gb_get_save_size(struct gb_s *gb); + +/** + * Calculates and returns a hash of the game header in the same way the Game + * Boy Color does for colourising old Game Boy games. The frontend can use this + * hash to automatically set a colour palette. + * + * \param gb An initialised emulator context. Must not be NULL. + * \returns Hash of the game header. + */ +uint8_t gb_colour_hash(struct gb_s *gb); + +/** + * Returns the title of ROM. + * + * \param gb An initialised emulator context. Must not be NULL. + * \param title_str Allocated string at least 16 characters. + * \returns Pointer to start of string, null terminated. + */ +const char* gb_get_rom_name(struct gb_s* gb, char *title_str); + +/** + * Tick the internal RTC by one second. This does not affect games with no RTC + * support. + * + * \param gb An initialised emulator context. Must not be NULL. + */ +void gb_tick_rtc(struct gb_s *gb); + +/** + * Set initial values in RTC. + * Should be called after gb_init(). + * + * \param gb An initialised emulator context. Must not be NULL. + * \param time Time structure with date and time. + */ +void gb_set_rtc(struct gb_s *gb, const struct tm * const time); + +/** + * Use boot ROM on reset. gb_reset() must be called for this to take affect. + * \param gb An initialised emulator context. Must not be NULL. + * \param gb_bootrom_read Function pointer to read boot ROM binary. + */ +void gb_set_bootrom(struct gb_s *gb, + uint8_t (*gb_bootrom_read)(struct gb_s*, const uint_fast16_t)); + +/* Undefine CPU Flag helper functions. */ +#undef PEANUT_GB_CPUFLAG_MASK_CARRY +#undef PEANUT_GB_CPUFLAG_MASK_HALFC +#undef PEANUT_GB_CPUFLAG_MASK_ARITH +#undef PEANUT_GB_CPUFLAG_MASK_ZERO +#undef PEANUT_GB_CPUFLAG_BIT_CARRY +#undef PEANUT_GB_CPUFLAG_BIT_HALFC +#undef PEANUT_GB_CPUFLAG_BIT_ARITH +#undef PEANUT_GB_CPUFLAG_BIT_ZERO +#undef PGB_SET_CARRY +#undef PGB_SET_HALFC +#undef PGB_SET_ARITH +#undef PGB_SET_ZERO +#undef PGB_GET_CARRY +#undef PGB_GET_HALFC +#undef PGB_GET_ARITH +#undef PGB_GET_ZERO +#endif //PEANUT_GB_H