- [FIX] Corregit el acces als port amb OUT

- [NEW] Nou model de gestió de memòria
This commit is contained in:
2025-07-23 13:51:51 +02:00
parent 3fd28136f6
commit 6e3e8e9b69
16 changed files with 315 additions and 94 deletions

View File

@@ -1,13 +1,13 @@
#include "zx_screen.h"
#include "z80.h"
#include "z80mem.h"
#include "zx_mem.h"
#include "zx_ula.h"
#include <SDL2/SDL.h>
#include "zx_tape.h"
#include "ui_window.h"
#include "z80debug.h"
#include "ui.h"
#include "zx_128mem.h"
//#include "zx_128mem.h"
namespace zxscreen
{
@@ -200,7 +200,7 @@ namespace zxscreen
{
zxscreen::mode = mode;
if (mode==SCREEN_MODE_48K) {
setBaseAddresses(0x4000, 0x5800);
setBaseAddresses(0x0000, 0x1800);
t_states_total = 69888;
t_states_per_scanline = 224;
vsync_lines = 16;
@@ -226,8 +226,8 @@ namespace zxscreen
void refresh(const uint32_t dt, const bool full)
{
const uint8_t* pixel_mem = z80mem::get()->rawPtr(pixel_base_addr);
const uint8_t* color_mem = z80mem::get()->rawPtr(color_base_addr);
const uint8_t* pixel_mem = mem::rawPtr(pixel_base_addr);
const uint8_t* color_mem = mem::rawPtr(color_base_addr);
const uint8_t border_color = zx_ula::get_border_color();
for (int i=0;i<dt;++i)
@@ -301,8 +301,8 @@ namespace zxscreen
// Pintem la textura a pantalla
SDL_RenderCopy(ren, tex, NULL, &dest_rect);
zx_128mem* mem = ((zx_128mem*)z80mem::get());
ui::printtxt(0,0,mem->getShadowScreen()?"SHADOW":"NORMAL", COLOR_WHITE);
//zx_128mem* mem = ((zx_128mem*)z80mem::get());
//ui::printtxt(0,0,mem->getShadowScreen()?"SHADOW":"NORMAL", COLOR_WHITE);
if (present)
SDL_RenderPresent(ren);