mirror of
https://github.com/holub/mame
synced 2025-07-03 09:06:08 +03:00
thomson.cpp: Initialize more state variables; clean up video code slightly
This commit is contained in:
parent
5d844e3793
commit
4026e0237c
@ -654,7 +654,6 @@ void thomson_state::to7_base(machine_config &config)
|
|||||||
m_screen->set_palette("palette");
|
m_screen->set_palette("palette");
|
||||||
|
|
||||||
PALETTE(config, "palette", FUNC(thomson_state::thom_palette), 4097); // 12-bit color + transparency
|
PALETTE(config, "palette", FUNC(thomson_state::thom_palette), 4097); // 12-bit color + transparency
|
||||||
MCFG_VIDEO_START_OVERRIDE( thomson_state, thom )
|
|
||||||
|
|
||||||
/* sound */
|
/* sound */
|
||||||
SPEAKER(config, "speaker").front_center();
|
SPEAKER(config, "speaker").front_center();
|
||||||
|
@ -203,6 +203,9 @@ public:
|
|||||||
void overlay3_scandraw_8( uint8_t* vram, uint16_t* dst, uint16_t* pal, int org, int len );
|
void overlay3_scandraw_8( uint8_t* vram, uint16_t* dst, uint16_t* pal, int org, int len );
|
||||||
void bitmap16alt_scandraw_8( uint8_t* vram, uint16_t* dst, uint16_t* pal, int org, int len );
|
void bitmap16alt_scandraw_8( uint8_t* vram, uint16_t* dst, uint16_t* pal, int org, int len );
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual void video_start() override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
DECLARE_FLOPPY_FORMATS(cd90_640_formats);
|
DECLARE_FLOPPY_FORMATS(cd90_640_formats);
|
||||||
|
|
||||||
@ -345,7 +348,6 @@ private:
|
|||||||
TIMER_CALLBACK_MEMBER( thom_set_init );
|
TIMER_CALLBACK_MEMBER( thom_set_init );
|
||||||
|
|
||||||
DECLARE_WRITE_LINE_MEMBER(thom_vblank);
|
DECLARE_WRITE_LINE_MEMBER(thom_vblank);
|
||||||
DECLARE_VIDEO_START( thom );
|
|
||||||
|
|
||||||
uint8_t to7_5p14_r(offs_t offset);
|
uint8_t to7_5p14_r(offs_t offset);
|
||||||
void to7_5p14_w(offs_t offset, uint8_t data);
|
void to7_5p14_w(offs_t offset, uint8_t data);
|
||||||
@ -519,7 +521,7 @@ private:
|
|||||||
emu_timer* m_thom_scanline_timer; /* scan-line update */
|
emu_timer* m_thom_scanline_timer; /* scan-line update */
|
||||||
uint16_t m_thom_last_pal[16]; /* palette at last scanline start */
|
uint16_t m_thom_last_pal[16]; /* palette at last scanline start */
|
||||||
uint16_t m_thom_pal[16]; /* current palette */
|
uint16_t m_thom_pal[16]; /* current palette */
|
||||||
uint8_t m_thom_pal_changed; /* whether pal != old_pal */
|
bool m_thom_pal_changed; /* whether pal != old_pal */
|
||||||
uint8_t m_thom_border_index; /* current border color index */
|
uint8_t m_thom_border_index; /* current border color index */
|
||||||
/* the left and right border color for each row (including top and bottom
|
/* the left and right border color for each row (including top and bottom
|
||||||
border rows); -1 means unchanged wrt last scanline
|
border rows); -1 means unchanged wrt last scanline
|
||||||
@ -538,11 +540,11 @@ private:
|
|||||||
int16_t m_thom_vmodepage[41];
|
int16_t m_thom_vmodepage[41];
|
||||||
uint8_t m_thom_vmodepage_changed;
|
uint8_t m_thom_vmodepage_changed;
|
||||||
/* one dirty flag for each video memory line */
|
/* one dirty flag for each video memory line */
|
||||||
uint8_t m_thom_vmem_dirty[205];
|
bool m_thom_vmem_dirty[205];
|
||||||
/* set to 1 if undirty scanlines need to be redrawn due to other video state
|
/* set to 1 if undirty scanlines need to be redrawn due to other video state
|
||||||
changes */
|
changes */
|
||||||
uint8_t m_thom_vstate_dirty;
|
bool m_thom_vstate_dirty;
|
||||||
uint8_t m_thom_vstate_last_dirty;
|
bool m_thom_vstate_last_dirty;
|
||||||
uint32_t m_thom_mode_point;
|
uint32_t m_thom_mode_point;
|
||||||
uint32_t m_thom_floppy_wcount;
|
uint32_t m_thom_floppy_wcount;
|
||||||
uint32_t m_thom_floppy_rcount;
|
uint32_t m_thom_floppy_rcount;
|
||||||
@ -599,7 +601,7 @@ private:
|
|||||||
void mo5nr_game_init();
|
void mo5nr_game_init();
|
||||||
void mo5nr_game_reset();
|
void mo5nr_game_reset();
|
||||||
|
|
||||||
int thom_update_screen_size();
|
bool update_screen_size();
|
||||||
unsigned thom_video_elapsed();
|
unsigned thom_video_elapsed();
|
||||||
struct thom_vsignal thom_get_vsignal();
|
struct thom_vsignal thom_get_vsignal();
|
||||||
void thom_get_lightpen_pos( int*x, int* y );
|
void thom_get_lightpen_pos( int*x, int* y );
|
||||||
|
@ -11,6 +11,7 @@
|
|||||||
#include "emu.h"
|
#include "emu.h"
|
||||||
#include "includes/thomson.h"
|
#include "includes/thomson.h"
|
||||||
|
|
||||||
|
#include <algorithm>
|
||||||
#include <cmath>
|
#include <cmath>
|
||||||
|
|
||||||
//#define VERBOSE 1
|
//#define VERBOSE 1
|
||||||
@ -30,11 +31,11 @@
|
|||||||
/****************** dynamic screen size *****************/
|
/****************** dynamic screen size *****************/
|
||||||
|
|
||||||
|
|
||||||
int thomson_state::thom_update_screen_size()
|
bool thomson_state::update_screen_size()
|
||||||
{
|
{
|
||||||
const rectangle &visarea = m_screen->visible_area();
|
const rectangle &visarea = m_screen->visible_area();
|
||||||
uint8_t p = m_io_vconfig->read();
|
uint8_t p = m_io_vconfig->read();
|
||||||
int new_w, new_h, changed = 0;
|
bool changed = false;
|
||||||
|
|
||||||
switch ( p & 3 )
|
switch ( p & 3 )
|
||||||
{
|
{
|
||||||
@ -50,11 +51,11 @@ int thomson_state::thom_update_screen_size()
|
|||||||
default: m_thom_hires = m_thom_hires_better; break; /* auto */
|
default: m_thom_hires = m_thom_hires_better; break; /* auto */
|
||||||
}
|
}
|
||||||
|
|
||||||
new_w = ( 320 + m_thom_bwidth * 2 ) * ( m_thom_hires + 1 ) - 1;
|
int new_w = ( 320 + m_thom_bwidth * 2 ) * ( m_thom_hires + 1 ) - 1;
|
||||||
new_h = ( 200 + m_thom_bheight * 2 ) /** (m_thom_hires + 1 )*/ - 1;
|
int new_h = ( 200 + m_thom_bheight * 2 ) /** (m_thom_hires + 1 )*/ - 1;
|
||||||
if ( ( visarea.max_x != new_w ) || ( visarea.max_y != new_h ) )
|
if ( ( visarea.max_x != new_w ) || ( visarea.max_y != new_h ) )
|
||||||
{
|
{
|
||||||
changed = 1;
|
changed = true;
|
||||||
m_screen->set_visible_area(0, new_w, 0, new_h );
|
m_screen->set_visible_area(0, new_w, 0, new_h );
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -242,7 +243,7 @@ void thomson_state::thom_border_changed()
|
|||||||
m_thom_border_l[ y + 1 ] = color;
|
m_thom_border_l[ y + 1 ] = color;
|
||||||
m_thom_border_r[ y + 1 ] = color;
|
m_thom_border_r[ y + 1 ] = color;
|
||||||
}
|
}
|
||||||
m_thom_vstate_dirty = 1;
|
m_thom_vstate_dirty = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -291,8 +292,8 @@ void thomson_state::thom_set_palette( unsigned index, uint16_t color )
|
|||||||
m_thom_pal[ index ] = color;
|
m_thom_pal[ index ] = color;
|
||||||
if ( index == m_thom_border_index )
|
if ( index == m_thom_border_index )
|
||||||
thom_border_changed();
|
thom_border_changed();
|
||||||
m_thom_pal_changed = 1;
|
m_thom_pal_changed = true;
|
||||||
m_thom_vstate_dirty = 1;
|
m_thom_vstate_dirty = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -306,7 +307,7 @@ void thomson_state::thom_set_video_mode( unsigned mode )
|
|||||||
LOG("thom_set_video_mode: %i at line %i, col %i\n", mode, thom_video_elapsed() / 64, thom_video_elapsed() % 64);
|
LOG("thom_set_video_mode: %i at line %i, col %i\n", mode, thom_video_elapsed() / 64, thom_video_elapsed() % 64);
|
||||||
m_thom_vmode = mode;
|
m_thom_vmode = mode;
|
||||||
thom_gplinfo_changed();
|
thom_gplinfo_changed();
|
||||||
m_thom_vstate_dirty = 1;
|
m_thom_vstate_dirty = true;
|
||||||
m_thom_hires_better |= thom_mode_is_hires( mode );
|
m_thom_hires_better |= thom_mode_is_hires( mode );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -322,7 +323,7 @@ void thomson_state::thom_set_video_page( unsigned page )
|
|||||||
LOG("thom_set_video_page: %i at line %i col %i\n", page, thom_video_elapsed() / 64, thom_video_elapsed() % 64);
|
LOG("thom_set_video_page: %i at line %i col %i\n", page, thom_video_elapsed() / 64, thom_video_elapsed() % 64);
|
||||||
m_thom_vpage = page;
|
m_thom_vpage = page;
|
||||||
thom_gplinfo_changed();
|
thom_gplinfo_changed();
|
||||||
m_thom_vstate_dirty = 1;
|
m_thom_vstate_dirty = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -863,7 +864,7 @@ TIMER_CALLBACK_MEMBER( thomson_state::thom_scanline_start )
|
|||||||
m_thom_last_pal, x, xx-x );
|
m_thom_last_pal, x, xx-x );
|
||||||
x = xx;
|
x = xx;
|
||||||
}
|
}
|
||||||
m_thom_vmem_dirty[y] = 0;
|
m_thom_vmem_dirty[y] = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* prepare for next scanline */
|
/* prepare for next scanline */
|
||||||
@ -888,8 +889,8 @@ TIMER_CALLBACK_MEMBER( thomson_state::thom_scanline_start )
|
|||||||
|
|
||||||
if ( m_thom_pal_changed )
|
if ( m_thom_pal_changed )
|
||||||
{
|
{
|
||||||
memcpy( m_thom_last_pal, m_thom_pal, 32 );
|
std::copy_n(&m_thom_pal[0], 16, &m_thom_last_pal[0]);
|
||||||
m_thom_pal_changed = 0;
|
m_thom_pal_changed = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_thom_scanline_timer->adjust(attotime::from_usec(64), y + 1);
|
m_thom_scanline_timer->adjust(attotime::from_usec(64), y + 1);
|
||||||
@ -1088,12 +1089,12 @@ WRITE_LINE_MEMBER(thomson_state::thom_vblank)
|
|||||||
if ( m_thom_border_r[ i ] != -1 )
|
if ( m_thom_border_r[ i ] != -1 )
|
||||||
b = m_thom_border_r[ i ];
|
b = m_thom_border_r[ i ];
|
||||||
}
|
}
|
||||||
memset( m_thom_border_l, 0xff, sizeof( m_thom_border_l ) );
|
std::fill(std::begin(m_thom_border_l), std::end(m_thom_border_l), -1);
|
||||||
memset( m_thom_border_r, 0xff, sizeof( m_thom_border_r ) );
|
std::fill(std::begin(m_thom_border_r), std::end(m_thom_border_r), -1);
|
||||||
m_thom_border_l[ 0 ] = b;
|
m_thom_border_l[ 0 ] = b;
|
||||||
m_thom_border_r[ 0 ] = b;
|
m_thom_border_r[ 0 ] = b;
|
||||||
m_thom_vstate_last_dirty = m_thom_vstate_dirty;
|
m_thom_vstate_last_dirty = m_thom_vstate_dirty;
|
||||||
m_thom_vstate_dirty = 0;
|
m_thom_vstate_dirty = false;
|
||||||
|
|
||||||
/* schedule first init signal */
|
/* schedule first init signal */
|
||||||
m_thom_init_timer->adjust(attotime::from_usec( 64 * THOM_BORDER_HEIGHT + 7 ));
|
m_thom_init_timer->adjust(attotime::from_usec( 64 * THOM_BORDER_HEIGHT + 7 ));
|
||||||
@ -1110,8 +1111,8 @@ WRITE_LINE_MEMBER(thomson_state::thom_vblank)
|
|||||||
m_thom_video_timer->adjust(attotime::zero);
|
m_thom_video_timer->adjust(attotime::zero);
|
||||||
|
|
||||||
/* update screen size according to user options */
|
/* update screen size according to user options */
|
||||||
if ( thom_update_screen_size() )
|
if ( update_screen_size() )
|
||||||
m_thom_vstate_dirty = 1;
|
m_thom_vstate_dirty = true;
|
||||||
|
|
||||||
/* hi-res automatic */
|
/* hi-res automatic */
|
||||||
m_thom_hires_better = thom_mode_is_hires( m_thom_vmode );
|
m_thom_hires_better = thom_mode_is_hires( m_thom_vmode );
|
||||||
@ -1155,16 +1156,16 @@ static const uint16_t mo5_pal_init[16] =
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
VIDEO_START_MEMBER( thomson_state, thom )
|
void thomson_state::video_start()
|
||||||
{
|
{
|
||||||
LOG("thom: video start called\n");
|
LOG("thom: video start called\n");
|
||||||
|
|
||||||
/* scan-line state */
|
/* scan-line state */
|
||||||
memset( m_thom_border_l, 0xff, sizeof( m_thom_border_l ) );
|
std::fill(std::begin(m_thom_border_l), std::end(m_thom_border_l), -1);
|
||||||
memset( m_thom_border_r, 0xff, sizeof( m_thom_border_r ) );
|
std::fill(std::begin(m_thom_border_r), std::end(m_thom_border_r), -1);
|
||||||
memset( m_thom_vbody, 0, sizeof( m_thom_vbody ) );
|
std::fill(std::begin(m_thom_vbody), std::end(m_thom_vbody), 0);
|
||||||
memset( m_thom_vmodepage, 0xffff, sizeof( m_thom_vmodepage ) );
|
std::fill(std::begin(m_thom_vmodepage), std::end(m_thom_vmodepage), -1);
|
||||||
memset( m_thom_vmem_dirty, 0, sizeof( m_thom_vmem_dirty ) );
|
std::fill(std::begin(m_thom_vmem_dirty), std::end(m_thom_vmem_dirty), false);
|
||||||
m_thom_border_l[ 0 ] = 0;
|
m_thom_border_l[ 0 ] = 0;
|
||||||
m_thom_border_r[ 0 ] = 0;
|
m_thom_border_r[ 0 ] = 0;
|
||||||
m_thom_vmodepage[ 0 ] = 0;
|
m_thom_vmodepage[ 0 ] = 0;
|
||||||
@ -1172,8 +1173,8 @@ VIDEO_START_MEMBER( thomson_state, thom )
|
|||||||
m_thom_vmode = 0;
|
m_thom_vmode = 0;
|
||||||
m_thom_vpage = 0;
|
m_thom_vpage = 0;
|
||||||
m_thom_border_index = 0;
|
m_thom_border_index = 0;
|
||||||
m_thom_vstate_dirty = 1;
|
m_thom_vstate_dirty = true;
|
||||||
m_thom_vstate_last_dirty = 1;
|
m_thom_vstate_last_dirty = true;
|
||||||
save_pointer(NAME(m_thom_last_pal), sizeof(m_thom_last_pal));
|
save_pointer(NAME(m_thom_last_pal), sizeof(m_thom_last_pal));
|
||||||
save_pointer(NAME(m_thom_pal), sizeof(m_thom_pal));
|
save_pointer(NAME(m_thom_pal), sizeof(m_thom_pal));
|
||||||
save_pointer(NAME(m_thom_border_l), sizeof(m_thom_border_l));
|
save_pointer(NAME(m_thom_border_l), sizeof(m_thom_border_l));
|
||||||
@ -1213,6 +1214,10 @@ VIDEO_START_MEMBER( thomson_state, thom )
|
|||||||
m_thom_init_cb = nullptr;
|
m_thom_init_cb = nullptr;
|
||||||
m_thom_init_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(thomson_state::thom_set_init),this));
|
m_thom_init_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(thomson_state::thom_set_init),this));
|
||||||
|
|
||||||
|
m_thom_bwidth = 0;
|
||||||
|
m_thom_bheight = 0;
|
||||||
|
m_thom_hires = 0;
|
||||||
|
m_thom_hires_better = 0;
|
||||||
save_item(NAME(m_thom_bwidth));
|
save_item(NAME(m_thom_bwidth));
|
||||||
save_item(NAME(m_thom_bheight));
|
save_item(NAME(m_thom_bheight));
|
||||||
save_item(NAME(m_thom_hires));
|
save_item(NAME(m_thom_hires));
|
||||||
@ -1223,8 +1228,8 @@ VIDEO_START_MEMBER( thomson_state, thom )
|
|||||||
/* sets the fixed palette (for MO5,TO7,TO7/70) and gamma correction */
|
/* sets the fixed palette (for MO5,TO7,TO7/70) and gamma correction */
|
||||||
void thomson_state::thom_configure_palette(double gamma, const uint16_t* pal, palette_device& palette)
|
void thomson_state::thom_configure_palette(double gamma, const uint16_t* pal, palette_device& palette)
|
||||||
{
|
{
|
||||||
memcpy(m_thom_last_pal, pal, 32);
|
std::copy_n(&pal[0], 16, &m_thom_last_pal[0]);
|
||||||
memcpy(m_thom_pal, pal, 32);
|
std::copy_n(&pal[0], 16, &m_thom_pal[0]);
|
||||||
|
|
||||||
for ( int i = 0; i < 4097; i++ )
|
for ( int i = 0; i < 4097; i++ )
|
||||||
{
|
{
|
||||||
@ -1281,7 +1286,7 @@ void thomson_state::to7_vram_w(offs_t offset, uint8_t data)
|
|||||||
return;
|
return;
|
||||||
m_thom_vram[ offset + m_thom_mode_point ] = data;
|
m_thom_vram[ offset + m_thom_mode_point ] = data;
|
||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
m_thom_vmem_dirty[ offset / 40 ] = 1;
|
m_thom_vmem_dirty[ offset / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1317,7 +1322,7 @@ void thomson_state::to770_vram_w(offs_t offset, uint8_t data)
|
|||||||
return;
|
return;
|
||||||
m_thom_vram[ offset + m_thom_mode_point ] = data;
|
m_thom_vram[ offset + m_thom_mode_point ] = data;
|
||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
m_thom_vmem_dirty[ offset / 40 ] = 1;
|
m_thom_vmem_dirty[ offset / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1337,7 +1342,7 @@ void thomson_state::to8_sys_lo_w(offs_t offset, uint8_t data)
|
|||||||
return;
|
return;
|
||||||
*dst = data;
|
*dst = data;
|
||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
m_thom_vmem_dirty[ offset / 40 ] = 1;
|
m_thom_vmem_dirty[ offset / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1349,7 +1354,7 @@ void thomson_state::to8_sys_hi_w(offs_t offset, uint8_t data)
|
|||||||
if ( *dst == data ) return;
|
if ( *dst == data ) return;
|
||||||
*dst = data;
|
*dst = data;
|
||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
m_thom_vmem_dirty[ offset / 40 ] = 1;
|
m_thom_vmem_dirty[ offset / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1366,7 +1371,7 @@ void thomson_state::to8_data_lo_w(offs_t offset, uint8_t data)
|
|||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
if ( m_to8_data_vpage >= 4 )
|
if ( m_to8_data_vpage >= 4 )
|
||||||
return;
|
return;
|
||||||
m_thom_vmem_dirty[ offset / 40 ] = 1;
|
m_thom_vmem_dirty[ offset / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1381,7 +1386,7 @@ void thomson_state::to8_data_hi_w(offs_t offset, uint8_t data)
|
|||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
if ( m_to8_data_vpage >= 4 )
|
if ( m_to8_data_vpage >= 4 )
|
||||||
return;
|
return;
|
||||||
m_thom_vmem_dirty[ offset / 40 ] = 1;
|
m_thom_vmem_dirty[ offset / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -1397,7 +1402,7 @@ void thomson_state::to8_vcart_w(offs_t offset, uint8_t data)
|
|||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
if ( m_to8_cart_vpage >= 4 )
|
if ( m_to8_cart_vpage >= 4 )
|
||||||
return;
|
return;
|
||||||
m_thom_vmem_dirty[ (offset & 0x1fff) / 40 ] = 1;
|
m_thom_vmem_dirty[ (offset & 0x1fff) / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void thomson_state::mo6_vcart_lo_w(offs_t offset, uint8_t data)
|
void thomson_state::mo6_vcart_lo_w(offs_t offset, uint8_t data)
|
||||||
@ -1410,7 +1415,7 @@ void thomson_state::mo6_vcart_lo_w(offs_t offset, uint8_t data)
|
|||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
if ( m_to8_cart_vpage >= 4 )
|
if ( m_to8_cart_vpage >= 4 )
|
||||||
return;
|
return;
|
||||||
m_thom_vmem_dirty[ (offset & 0x1fff) / 40 ] = 1;
|
m_thom_vmem_dirty[ (offset & 0x1fff) / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void thomson_state::mo6_vcart_hi_w(offs_t offset, uint8_t data)
|
void thomson_state::mo6_vcart_hi_w(offs_t offset, uint8_t data)
|
||||||
@ -1423,5 +1428,5 @@ void thomson_state::mo6_vcart_hi_w(offs_t offset, uint8_t data)
|
|||||||
/* dirty whole scanline */
|
/* dirty whole scanline */
|
||||||
if ( m_to8_cart_vpage >= 4 )
|
if ( m_to8_cart_vpage >= 4 )
|
||||||
return;
|
return;
|
||||||
m_thom_vmem_dirty[ (offset & 0x1fff) / 40 ] = 1;
|
m_thom_vmem_dirty[ (offset & 0x1fff) / 40 ] = true;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user