- blank out left/right sides

based on kernel modifications by Thomas Jentzch
  work in progress, stray pixel remaining
This commit is contained in:
Lo Def 2021-09-12 05:30:20 -04:00
parent 2a646c5564
commit 51d856f9a5
1 changed files with 39 additions and 49 deletions

View File

@ -93,7 +93,7 @@ class StreamReader : public Serializable
myColor = offset + COLOR_DATA_OFFSET;
myColorBK = offset + COLORBK_DATA_OFFSET;
myColorBK++;
// myColorBK++;
if (!(frame & 1))
myColorBK++;
}
@ -305,42 +305,40 @@ class MovieInputs : public Serializable
#define addr_kernel_48 0x800
#define addr_transport_direction 0x880
#define addr_transport_buttons 0x896
#define addr_right_line 0x944
#define addr_set_aud_right 0x948
#define addr_set_gdata9 0x94a
#define addr_set_gcol9 0x94e
#define addr_set_gdata6 0x950
#define addr_set_gcol6 0x954
#define addr_set_gdata5 0x958
#define addr_set_gcol5 0x95c
#define addr_set_gdata8 0x960
#define addr_set_gcol7 0x964
#define addr_set_gdata7 0x968
#define addr_set_gcol8 0x96c
#define addr_set_colubk_r 0x976
#define addr_set_colupf_r 0x97c
#define addr_right_line 0x948
#define addr_set_gdata6 0x948
#define addr_set_aud_right 0x94e
#define addr_set_gdata9 0x952
#define addr_set_gcol9 0x954
#define addr_set_gcol6 0x956
#define addr_set_gdata5 0x95a
#define addr_set_gcol5 0x95e
#define addr_set_gdata8 0x962
#define addr_set_colubk_r 0x966
#define addr_set_gcol7 0x96a
#define addr_set_gdata7 0x96e
#define addr_set_gcol8 0x972
#define addr_left_line 0x980
#define addr_set_gdata1 0x982
#define addr_set_aud_left 0x986
#define addr_set_gdata4 0x98a
#define addr_set_gcol4 0x98c
#define addr_set_gcol1 0x98e
#define addr_set_gdata1 0x980
#define addr_set_gcol1 0x986
#define addr_set_aud_left 0x98a
#define addr_set_gdata4 0x98e
#define addr_set_gcol4 0x990
#define addr_set_gdata0 0x992
#define addr_set_gcol0 0x996
#define addr_set_gdata3 0x99a
#define addr_set_gcol2 0x99e
#define addr_set_gdata2 0x9a2
#define addr_set_gcol3 0x9a6
#define addr_set_colubk_l 0x9b4
#define addr_set_colupf_l 0x9b8
#define addr_pick_continue 0x9ba
#define addr_set_colupf_l 0x99e
#define addr_set_gcol2 0x9a2
#define addr_set_gdata2 0x9a6
#define addr_set_gcol3 0x9aa
#define addr_pick_continue 0x9be
#define addr_main_start 0xa00
#define addr_aud_bank_setup 0xa0c
#define addr_tg0 0xa24
#define addr_title_again 0xa3b
#define addr_wait_cnt 0xa77
#define addr_end_lines 0xa80
#define addr_set_aud_endlines 0xa8c
#define addr_set_aud_endlines 0xa86
#define addr_set_overscan_size 0xa9c
#define addr_set_vblank_size 0xab2
#define addr_pick_extra_lines 0xabb
@ -412,8 +410,8 @@ static constexpr unsigned char kernelROM[] = {
24, 25, 24, 24, 24, 24, 126, 0, 249, 97, 97, 97, 97, 249, 0, 0,
0, 0, 0, 0, 248, 128, 128, 224, 128, 248, 255, 255, 255, 255, 255, 255,
173, 128, 2, 74, 74, 74, 133, 129, 234, 133, 128, 133, 128, 133, 128, 133,
128, 169, 0, 76, 68, 249, 165, 12, 10, 173, 130, 2, 42, 41, 23, 133,
129, 234, 133, 128, 133, 128, 133, 128, 169, 0, 76, 68, 249, 255, 255, 255,
128, 169, 0, 76, 72, 249, 165, 12, 10, 173, 130, 2, 42, 41, 23, 133,
129, 234, 133, 128, 133, 128, 133, 128, 169, 0, 76, 72, 249, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
@ -423,15 +421,15 @@ static constexpr unsigned char kernelROM[] = {
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 133, 8, 133, 42, 169, 0, 162, 223, 133, 25, 160, 98,
169, 159, 133, 28, 169, 248, 133, 7, 169, 231, 133, 27, 169, 242, 133, 6,
169, 247, 133, 28, 169, 172, 133, 6, 169, 253, 133, 27, 169, 216, 133, 7,
134, 27, 132, 6, 133, 43, 169, 0, 133, 9, 169, 0, 169, 0, 133, 42,
133, 8, 169, 207, 133, 28, 169, 0, 133, 25, 162, 191, 160, 114, 169, 54,
133, 7, 169, 243, 133, 27, 169, 66, 133, 6, 169, 239, 133, 28, 169, 238,
133, 6, 169, 251, 133, 27, 169, 182, 133, 7, 134, 27, 132, 6, 169, 128,
133, 32, 133, 33, 169, 0, 133, 9, 169, 0, 76, 68, 249, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 169, 159, 133, 28, 133, 42, 169, 0,
133, 25, 162, 223, 160, 98, 169, 248, 133, 7, 169, 231, 133, 27, 169, 242,
133, 6, 169, 247, 133, 28, 169, 0, 133, 9, 169, 172, 133, 6, 169, 253,
133, 27, 169, 216, 133, 7, 134, 27, 132, 6, 169, 0, 133, 9, 133, 43,
169, 207, 133, 42, 133, 28, 169, 54, 133, 7, 169, 0, 133, 25, 162, 191,
160, 114, 169, 243, 133, 27, 169, 66, 133, 6, 169, 239, 133, 28, 169, 0,
133, 8, 169, 238, 133, 6, 169, 251, 133, 27, 169, 182, 133, 7, 134, 27,
132, 6, 169, 0, 133, 8, 169, 128, 133, 32, 133, 33, 169, 0, 76, 72,
249, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,
@ -443,8 +441,8 @@ static constexpr unsigned char kernelROM[] = {
133, 37, 133, 27, 133, 16, 234, 133, 17, 133, 28, 133, 27, 133, 28, 169,
6, 133, 4, 169, 2, 133, 5, 169, 1, 133, 38, 169, 0, 133, 32, 169,
240, 133, 33, 133, 42, 162, 5, 202, 208, 253, 133, 43, 76, 128, 250, 255,
160, 0, 132, 27, 132, 28, 132, 27, 169, 0, 169, 0, 169, 0, 133, 25,
169, 48, 133, 13, 169, 204, 133, 14, 169, 51, 133, 15, 162, 29, 32, 203,
160, 0, 132, 27, 132, 28, 169, 0, 133, 25, 132, 27, 169, 0, 169, 0,
169, 207, 133, 13, 169, 51, 133, 14, 169, 204, 133, 15, 162, 29, 32, 203,
250, 169, 2, 133, 0, 162, 3, 32, 203, 250, 169, 0, 133, 0, 169, 2,
133, 1, 162, 37, 32, 203, 250, 162, 0, 134, 1, 162, 0, 240, 9, 32,
203, 250, 234, 234, 133, 128, 133, 128, 76, 150, 248, 133, 2, 169, 0, 177,
@ -1124,15 +1122,11 @@ void MovieCart::fill_addr_right_line()
{
v = 0;
writeROM(addr_set_colubk_r + 1, v);
writeROM(addr_set_colupf_r + 1, v);
}
else
{
v = myStream.readColorBK();
writeColor(addr_set_colubk_r + 1, v);
v = 0;
writeROM(addr_set_colupf_r + 1, v); // don't modify black color
writeColor(addr_set_colubk_r + 1, v);
}
}
@ -1169,14 +1163,10 @@ void MovieCart::fill_addr_left_line(bool again)
if (myForceColor)
{
v = 0;
writeROM(addr_set_colubk_l + 1, v); // don't modify black color
writeROM(addr_set_colupf_l + 1, v);
}
else
{
v = 0;
writeROM(addr_set_colubk_l + 1, v); // don't modify black color
v = myStream.readColorBK();
writeColor(addr_set_colupf_l + 1, v);
}