@@ -421,7 +421,10 @@ SDL_bool gimg_load( struct guiimg *gi )
421
421
// Draw the statusbar at the bottom
422
422
void draw_statusbar ( struct machine * oric )
423
423
{
424
- oric -> render_gimg ( GIMG_STATUSBAR , 0 , GIMG_POS_SBARY );
424
+ if (oric -> statusbar_mode == STATUSBARMODE_NONE )
425
+ oric -> render_clear_area ( 0 , GIMG_POS_SBARY , 640 , 480 - GIMG_POS_SBARY );
426
+ else
427
+ oric -> render_gimg ( GIMG_STATUSBAR , 0 , GIMG_POS_SBARY );
425
428
}
426
429
427
430
void draw_keyboard ( struct machine * oric ) {
@@ -447,6 +450,9 @@ void draw_disks( struct machine *oric )
447
450
{
448
451
Sint32 i , j ;
449
452
453
+ if ( oric -> statusbar_mode == STATUSBARMODE_NONE )
454
+ return ;
455
+
450
456
if ( oric -> drivetype == DRV_NONE )
451
457
{
452
458
oric -> render_gimgpart ( GIMG_STATUSBAR , GIMG_POS_DISKX , GIMG_POS_SBARY , GIMG_POS_DISKX , 0 , 18 * 4 , 16 );
@@ -468,6 +474,9 @@ void draw_disks( struct machine *oric )
468
474
// Overlay the AVI record icon onto the status bar
469
475
void draw_avirec ( struct machine * oric , SDL_bool recording )
470
476
{
477
+ if ( oric -> statusbar_mode == STATUSBARMODE_NONE )
478
+ return ;
479
+
471
480
if ( recording )
472
481
{
473
482
oric -> render_gimg ( GIMG_AVI_RECORD , GIMG_POS_AVIRECX , GIMG_POS_SBARY );
@@ -480,6 +489,9 @@ void draw_avirec( struct machine *oric, SDL_bool recording )
480
489
// Overlay the tape icon onto the status bar
481
490
void draw_tape ( struct machine * oric )
482
491
{
492
+ if ( oric -> statusbar_mode == STATUSBARMODE_NONE )
493
+ return ;
494
+
483
495
if ( oric -> tapecap )
484
496
{
485
497
oric -> render_gimg ( GIMG_TAPE_RECORD , GIMG_POS_TAPEX , GIMG_POS_SBARY );
@@ -567,7 +579,7 @@ void render( struct machine *oric )
567
579
case EM_RUNNING :
568
580
oric -> render_video ( oric , SDL_TRUE );
569
581
render_status ( oric );
570
- if ( oric -> showfps )
582
+ if ( oric -> statusbar_mode == STATUSBARMODE_FULL )
571
583
{
572
584
fps = 100000 /(frametimeave ?frametimeave :1 );
573
585
if ( oric -> vid_freq )
@@ -1944,6 +1956,7 @@ void set_render_mode( struct machine *oric, int whichrendermode )
1944
1956
oric -> render_textzone_alloc = render_textzone_alloc_sw8 ;
1945
1957
oric -> render_textzone_free = render_textzone_free_sw8 ;
1946
1958
oric -> render_textzone = render_textzone_sw8 ;
1959
+ oric -> render_clear_area = render_clear_area_sw8 ;
1947
1960
oric -> render_gimg = render_gimg_sw8 ;
1948
1961
oric -> render_gimgpart = render_gimgpart_sw8 ;
1949
1962
oric -> render_video = render_video_sw8 ;
@@ -1962,6 +1975,7 @@ void set_render_mode( struct machine *oric, int whichrendermode )
1962
1975
oric -> render_textzone_alloc = render_textzone_alloc_sw ;
1963
1976
oric -> render_textzone_free = render_textzone_free_sw ;
1964
1977
oric -> render_textzone = render_textzone_sw ;
1978
+ oric -> render_clear_area = render_clear_area_sw ;
1965
1979
oric -> render_gimg = render_gimg_sw ;
1966
1980
oric -> render_gimgpart = render_gimgpart_sw ;
1967
1981
switch (oric -> sw_depth )
@@ -1994,6 +2008,7 @@ void set_render_mode( struct machine *oric, int whichrendermode )
1994
2008
oric -> render_textzone_alloc = render_textzone_alloc_gl ;
1995
2009
oric -> render_textzone_free = render_textzone_free_gl ;
1996
2010
oric -> render_textzone = render_textzone_gl ;
2011
+ oric -> render_clear_area = render_clear_area_gl ;
1997
2012
oric -> render_gimg = render_gimg_gl ;
1998
2013
oric -> render_gimgpart = render_gimgpart_gl ;
1999
2014
oric -> render_video = render_video_gl ;
@@ -2014,6 +2029,7 @@ void set_render_mode( struct machine *oric, int whichrendermode )
2014
2029
oric -> render_textzone_alloc = render_textzone_alloc_null ;
2015
2030
oric -> render_textzone_free = render_textzone_free_null ;
2016
2031
oric -> render_textzone = render_textzone_null ;
2032
+ oric -> render_clear_area = render_clear_area_null ;
2017
2033
oric -> render_gimg = render_gimg_null ;
2018
2034
oric -> render_gimgpart = render_gimgpart_null ;
2019
2035
oric -> render_video = render_video_null ;
0 commit comments