diff --git a/stella/src/emucore/TIA.cxx b/stella/src/emucore/TIA.cxx index 6482be8b9..16a7d935c 100644 --- a/stella/src/emucore/TIA.cxx +++ b/stella/src/emucore/TIA.cxx @@ -13,7 +13,7 @@ // See the file "license" for information on usage and redistribution of // this file, and for a DISCLAIMER OF ALL WARRANTIES. // -// $Id: TIA.cxx,v 1.4 2002-01-13 05:17:33 bwmott Exp $ +// $Id: TIA.cxx,v 1.5 2002-01-15 04:00:33 bwmott Exp $ //============================================================================ #include @@ -2543,139 +2543,139 @@ uInt8 TIA::ourPlayerReflectTable[256]; uInt32 TIA::ourPlayfieldTable[2][160]; // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -const uInt32 TIA::ourNTSCPalette[256] = { - 0x000000, 0x000000, 0x2b2b2b, 0x2b2b2b, // 0x0? +const uInt32 TIA::ourNTSCPalette[256] = { + 0x000000, 0x000000, 0x2b2b2b, 0x2b2b2b, 0x525252, 0x525252, 0x767676, 0x767676, 0x979797, 0x979797, 0xb6b6b6, 0xb6b6b6, 0xd2d2d2, 0xd2d2d2, 0xececec, 0xececec, - 0x444400, 0x444400, 0x666613, 0x666613, // 0x1? - 0x848424, 0x848424, 0xa0a034, 0xa0a034, - 0xbaba42, 0xbaba42, 0xd2d250, 0xd2d250, - 0xe8e85c, 0xe8e85c, 0xfcfc68, 0xfcfc68, - 0x702800, 0x702800, 0x864516, 0x864516, // 0x2? - 0x9b5f29, 0x9b5f29, 0xae783c, 0xae783c, - 0xbf8e4c, 0xbf8e4c, 0xcfa35c, 0xcfa35c, - 0xdeb66a, 0xdeb66a, 0xecc878, 0xecc878, - 0x841800, 0x841800, 0x9a361b, 0x9a361b, // 0x3? - 0xad5133, 0xad5133, 0xc06a4a, 0xc06a4a, - 0xd0815e, 0xd0815e, 0xe09672, 0xe09672, - 0xeeaa83, 0xeeaa83, 0xfcbc94, 0xfcbc94, - 0x880000, 0x880000, 0x9d2121, 0x9d2121, // 0x4? - 0xb03e3e, 0xb03e3e, 0xc25a5a, 0xc25a5a, - 0xd27373, 0xd27373, 0xe18a8a, 0xe18a8a, - 0xefa0a0, 0xefa0a0, 0xfcb4b4, 0xfcb4b4, - 0x78005c, 0x78005c, 0x8d2074, 0x8d2074, // 0x5? - 0xa03d89, 0xa03d89, 0xb2589e, 0xb2589e, - 0xc270b0, 0xc270b0, 0xd187c1, 0xd187c1, - 0xdf9cd1, 0xdf9cd1, 0xecb0e0, 0xecb0e0, - 0x480078, 0x480078, 0x612090, 0x612090, // 0x6? - 0x783da5, 0x783da5, 0x8e58ba, 0x8e58ba, - 0xa170cc, 0xa170cc, 0xb487dd, 0xb487dd, - 0xc49ced, 0xc49ced, 0xd4b0fc, 0xd4b0fc, - 0x140084, 0x140084, 0x33219a, 0x33219a, // 0x7? - 0x4e3ead, 0x4e3ead, 0x685ac0, 0x685ac0, - 0x7f73d0, 0x7f73d0, 0x958ae0, 0x958ae0, - 0xa9a0ee, 0xa9a0ee, 0xbcb4fc, 0xbcb4fc, - 0x000088, 0x000088, 0x1e229d, 0x1e229d, // 0x8? - 0x3940b0, 0x3940b0, 0x525cc2, 0x525cc2, - 0x6976d2, 0x6976d2, 0x7e8ee1, 0x7e8ee1, - 0x92a4ef, 0x92a4ef, 0xa4b8fc, 0xa4b8fc, - 0x00187c, 0x00187c, 0x1e3893, 0x1e3893, // 0x9? - 0x3955a8, 0x3955a8, 0x5270bc, 0x5270bc, - 0x6988ce, 0x6988ce, 0x7e9fde, 0x7e9fde, - 0x92b4ee, 0x92b4ee, 0xa4c8fc, 0xa4c8fc, - 0x002c5c, 0x002c5c, 0x1e4d79, 0x1e4d79, // 0xa? - 0x396a93, 0x396a93, 0x5286ac, 0x5286ac, - 0x699fc2, 0x699fc2, 0x7eb6d7, 0x7eb6d7, - 0x92ccea, 0x92ccea, 0xa4e0fc, 0xa4e0fc, - 0x003c2c, 0x003c2c, 0x1e5f4b, 0x1e5f4b, // 0xb? - 0x397e66, 0x397e66, 0x529c80, 0x529c80, - 0x69b797, 0x69b797, 0x7ed0ad, 0x7ed0ad, - 0x92e7c1, 0x92e7c1, 0xa4fcd4, 0xa4fcd4, - 0x003c00, 0x003c00, 0x225f22, 0x225f22, // 0xc? - 0x407e40, 0x407e40, 0x5c9c5c, 0x5c9c5c, - 0x76b776, 0x76b776, 0x8ed08e, 0x8ed08e, - 0xa4e7a4, 0xa4e7a4, 0xb8fcb8, 0xb8fcb8, - 0x143800, 0x143800, 0x355c1e, 0x355c1e, // 0xd? - 0x527c39, 0x527c39, 0x6e9a52, 0x6e9a52, - 0x87b569, 0x87b569, 0x9ecf7e, 0x9ecf7e, - 0xb4e692, 0xb4e692, 0xc8fca4, 0xc8fca4, - 0x2c3000, 0x2c3000, 0x4d521c, 0x4d521c, // 0xe? - 0x6a7136, 0x6a7136, 0x868e4e, 0x868e4e, - 0x9fa864, 0x9fa864, 0xb6c178, 0xb6c178, - 0xccd78b, 0xccd78b, 0xe0ec9c, 0xe0ec9c, - 0x442800, 0x442800, 0x664a19, 0x664a19, // 0xf? - 0x846830, 0x846830, 0xa08446, 0xa08446, - 0xba9e59, 0xba9e59, 0xd2b66c, 0xd2b66c, - 0xe8cc7c, 0xe8cc7c, 0xfce08c, 0xfce08c + 0x444400, 0x444400, 0x66660f, 0x66660f, + 0x84841d, 0x84841d, 0xa0a02a, 0xa0a02a, + 0xbaba35, 0xbaba35, 0xd2d240, 0xd2d240, + 0xe8e84a, 0xe8e84a, 0xfcfc54, 0xfcfc54, + 0x702800, 0x702800, 0x864512, 0x864512, + 0x9b5f22, 0x9b5f22, 0xae7832, 0xae7832, + 0xbf8e40, 0xbf8e40, 0xcfa34d, 0xcfa34d, + 0xdeb659, 0xdeb659, 0xecc864, 0xecc864, + 0x841800, 0x841800, 0x9a3616, 0x9a3616, + 0xad5129, 0xad5129, 0xc06a3c, 0xc06a3c, + 0xd0814c, 0xd0814c, 0xe0965c, 0xe0965c, + 0xeeaa6a, 0xeeaa6a, 0xfcbc78, 0xfcbc78, + 0x880000, 0x880000, 0x9d1b1b, 0x9d1b1b, + 0xb03333, 0xb03333, 0xc24a4a, 0xc24a4a, + 0xd25e5e, 0xd25e5e, 0xe17272, 0xe17272, + 0xef8383, 0xef8383, 0xfc9494, 0xfc9494, + 0x78005c, 0x78005c, 0x8d1a74, 0x8d1a74, + 0xa03289, 0xa03289, 0xb2489e, 0xb2489e, + 0xc25cb0, 0xc25cb0, 0xd16fc1, 0xd16fc1, + 0xdf80d1, 0xdf80d1, 0xec90e0, 0xec90e0, + 0x480078, 0x480078, 0x611a90, 0x611a90, + 0x7832a5, 0x7832a5, 0x8e48ba, 0x8e48ba, + 0xa15ccc, 0xa15ccc, 0xb46fdd, 0xb46fdd, + 0xc480ed, 0xc480ed, 0xd490fc, 0xd490fc, + 0x140084, 0x140084, 0x331b9a, 0x331b9a, + 0x4e33ad, 0x4e33ad, 0x684ac0, 0x684ac0, + 0x7f5ed0, 0x7f5ed0, 0x9572e0, 0x9572e0, + 0xa983ee, 0xa983ee, 0xbc94fc, 0xbc94fc, + 0x000088, 0x000088, 0x191b9d, 0x191b9d, + 0x2f33b0, 0x2f33b0, 0x444ac2, 0x444ac2, + 0x575ed2, 0x575ed2, 0x6872e1, 0x6872e1, + 0x7983ef, 0x7983ef, 0x8894fc, 0x8894fc, + 0x00187c, 0x00187c, 0x193893, 0x193893, + 0x2f55a8, 0x2f55a8, 0x4470bc, 0x4470bc, + 0x5788ce, 0x5788ce, 0x689fde, 0x689fde, + 0x79b4ee, 0x79b4ee, 0x88c8fc, 0x88c8fc, + 0x002c5c, 0x002c5c, 0x194d79, 0x194d79, + 0x2f6a93, 0x2f6a93, 0x4486ac, 0x4486ac, + 0x579fc2, 0x579fc2, 0x68b6d7, 0x68b6d7, + 0x79ccea, 0x79ccea, 0x88e0fc, 0x88e0fc, + 0x003c2c, 0x003c2c, 0x195f4b, 0x195f4b, + 0x2f7e66, 0x2f7e66, 0x449c80, 0x449c80, + 0x57b797, 0x57b797, 0x68d0ad, 0x68d0ad, + 0x79e7c1, 0x79e7c1, 0x88fcd4, 0x88fcd4, + 0x003c00, 0x003c00, 0x1b5f1b, 0x1b5f1b, + 0x337e33, 0x337e33, 0x4a9c4a, 0x4a9c4a, + 0x5eb75e, 0x5eb75e, 0x72d072, 0x72d072, + 0x83e783, 0x83e783, 0x94fc94, 0x94fc94, + 0x143800, 0x143800, 0x355c19, 0x355c19, + 0x527c2f, 0x527c2f, 0x6e9a44, 0x6e9a44, + 0x87b557, 0x87b557, 0x9ecf68, 0x9ecf68, + 0xb4e679, 0xb4e679, 0xc8fc88, 0xc8fc88, + 0x2c3000, 0x2c3000, 0x4d5217, 0x4d5217, + 0x6a712c, 0x6a712c, 0x868e40, 0x868e40, + 0x9fa852, 0x9fa852, 0xb6c162, 0xb6c162, + 0xccd772, 0xccd772, 0xe0ec80, 0xe0ec80, + 0x442800, 0x442800, 0x664a14, 0x664a14, + 0x846826, 0x846826, 0xa08438, 0xa08438, + 0xba9e47, 0xba9e47, 0xd2b656, 0xd2b656, + 0xe8cc63, 0xe8cc63, 0xfce070, 0xfce070 }; - + // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - const uInt32 TIA::ourPALPalette[256] = { - 0x000000, 0x000000, 0x242424, 0x242424, - 0x484848, 0x484848, 0x6d6d6d, 0x6d6d6d, - 0x919191, 0x919191, 0xb6b6b6, 0xb6b6b6, - 0xdadada, 0xdadada, 0xffffff, 0xffffff, - 0x000000, 0x000000, 0x242424, 0x242424, - 0x484848, 0x484848, 0x6d6d6d, 0x6d6d6d, - 0x919191, 0x919191, 0xb6b6b6, 0xb6b6b6, - 0xdadada, 0xdadada, 0xffffff, 0xffffff, - 0x4a3700, 0x4a3700, 0x705813, 0x705813, - 0x8c732a, 0x8c732a, 0xa68d46, 0xa68d46, - 0xbea767, 0xbea767, 0xd4c18b, 0xd4c18b, - 0xeadcb3, 0xeadcb3, 0xfff6de, 0xfff6de, - 0x284a00, 0x284a00, 0x44700f, 0x44700f, - 0x5c8c21, 0x5c8c21, 0x74a638, 0x74a638, - 0x8cbe51, 0x8cbe51, 0xa6d46e, 0xa6d46e, - 0xc0ea8e, 0xc0ea8e, 0xdbffb0, 0xdbffb0, - 0x4a1300, 0x4a1300, 0x70280f, 0x70280f, - 0x8c3d21, 0x8c3d21, 0xa65438, 0xa65438, - 0xbe6d51, 0xbe6d51, 0xd4886e, 0xd4886e, - 0xeaa58e, 0xeaa58e, 0xffc4b0, 0xffc4b0, - 0x004a22, 0x004a22, 0x0f703b, 0x0f703b, - 0x218c52, 0x218c52, 0x38a66a, 0x38a66a, - 0x51be83, 0x51be83, 0x6ed49d, 0x6ed49d, - 0x8eeab8, 0x8eeab8, 0xb0ffd4, 0xb0ffd4, - 0x4a0028, 0x4a0028, 0x700f44, 0x700f44, - 0x8c215c, 0x8c215c, 0xa63874, 0xa63874, - 0xbe518c, 0xbe518c, 0xd46ea6, 0xd46ea6, - 0xea8ec0, 0xea8ec0, 0xffb0db, 0xffb0db, - 0x00404a, 0x00404a, 0x0f6370, 0x0f6370, - 0x217e8c, 0x217e8c, 0x3897a6, 0x3897a6, - 0x51afbe, 0x51afbe, 0x6ec7d4, 0x6ec7d4, - 0x8edeea, 0x8edeea, 0xb0f4ff, 0xb0f4ff, - 0x43002c, 0x43002c, 0x650f4b, 0x650f4b, - 0x7e2165, 0x7e2165, 0x953880, 0x953880, - 0xa6519a, 0xa6519a, 0xbf6eb7, 0xbf6eb7, - 0xd38ed3, 0xd38ed3, 0xe5b0f1, 0xe5b0f1, - 0x001d4a, 0x001d4a, 0x0f3870, 0x0f3870, - 0x21538c, 0x21538c, 0x386ea6, 0x386ea6, - 0x518dbe, 0x518dbe, 0x6ea8d4, 0x6ea8d4, - 0x8ec8ea, 0x8ec8ea, 0xb0e9ff, 0xb0e9ff, - 0x37004a, 0x37004a, 0x570f70, 0x570f70, - 0x70218c, 0x70218c, 0x8938a6, 0x8938a6, - 0xa151be, 0xa151be, 0xba6ed4, 0xba6ed4, - 0xd28eea, 0xd28eea, 0xeab0ff, 0xeab0ff, - 0x00184a, 0x00184a, 0x0f2e70, 0x0f2e70, - 0x21448c, 0x21448c, 0x385ba6, 0x385ba6, - 0x5174be, 0x5174be, 0x6e8fd4, 0x6e8fd4, - 0x8eabea, 0x8eabea, 0xb0c9ff, 0xb0c9ff, - 0x13004a, 0x13004a, 0x280f70, 0x280f70, - 0x3d218c, 0x3d218c, 0x5438a6, 0x5438a6, - 0x6d51be, 0x6d51be, 0x886ed4, 0x886ed4, - 0xa58eea, 0xa58eea, 0xc4b0ff, 0xc4b0ff, - 0x00014a, 0x00014a, 0x0f1170, 0x0f1170, - 0x21248c, 0x21248c, 0x383aa6, 0x383aa6, - 0x5153be, 0x5153be, 0x6e70d4, 0x6e70d4, - 0x8e8fea, 0x8e8fea, 0xb0b2ff, 0xb0b2ff, - 0x000000, 0x000000, 0x242424, 0x242424, - 0x484848, 0x484848, 0x6d6d6d, 0x6d6d6d, - 0x919191, 0x919191, 0xb6b6b6, 0xb6b6b6, - 0xdadada, 0xdadada, 0xffffff, 0xffffff, - 0x000000, 0x000000, 0x242424, 0x242424, - 0x484848, 0x484848, 0x6d6d6d, 0x6d6d6d, - 0x919191, 0x919191, 0xb6b6b6, 0xb6b6b6, - 0xdadada, 0xdadada, 0xffffff, 0xffffff + 0x000000, 0x000000, 0x2b2b2b, 0x2b2b2b, + 0x525252, 0x525252, 0x767676, 0x767676, + 0x979797, 0x979797, 0xb6b6b6, 0xb6b6b6, + 0xd2d2d2, 0xd2d2d2, 0xececec, 0xececec, + 0x000000, 0x000000, 0x2b2b2b, 0x2b2b2b, + 0x525252, 0x525252, 0x767676, 0x767676, + 0x979797, 0x979797, 0xb6b6b6, 0xb6b6b6, + 0xd2d2d2, 0xd2d2d2, 0xececec, 0xececec, + 0x805800, 0x805800, 0x96711a, 0x96711a, + 0xab8732, 0xab8732, 0xbe9c48, 0xbe9c48, + 0xcfaf5c, 0xcfaf5c, 0xdfc06f, 0xdfc06f, + 0xeed180, 0xeed180, 0xfce090, 0xfce090, + 0x445c00, 0x445c00, 0x5e791a, 0x5e791a, + 0x769332, 0x769332, 0x8cac48, 0x8cac48, + 0xa0c25c, 0xa0c25c, 0xb3d76f, 0xb3d76f, + 0xc4ea80, 0xc4ea80, 0xd4fc90, 0xd4fc90, + 0x703400, 0x703400, 0x89511a, 0x89511a, + 0xa06b32, 0xa06b32, 0xb68448, 0xb68448, + 0xc99a5c, 0xc99a5c, 0xdcaf6f, 0xdcaf6f, + 0xecc280, 0xecc280, 0xfcd490, 0xfcd490, + 0x006414, 0x006414, 0x1a8035, 0x1a8035, + 0x329852, 0x329852, 0x48b06e, 0x48b06e, + 0x5cc587, 0x5cc587, 0x6fd99e, 0x6fd99e, + 0x80ebb4, 0x80ebb4, 0x90fcc8, 0x90fcc8, + 0x700014, 0x700014, 0x891a35, 0x891a35, + 0xa03252, 0xa03252, 0xb6486e, 0xb6486e, + 0xc95c87, 0xc95c87, 0xdc6f9e, 0xdc6f9e, + 0xec80b4, 0xec80b4, 0xfc90c8, 0xfc90c8, + 0x005c5c, 0x005c5c, 0x1a7676, 0x1a7676, + 0x328e8e, 0x328e8e, 0x48a4a4, 0x48a4a4, + 0x5cb8b8, 0x5cb8b8, 0x6fcbcb, 0x6fcbcb, + 0x80dcdc, 0x80dcdc, 0x90ecec, 0x90ecec, + 0x70005c, 0x70005c, 0x841a74, 0x841a74, + 0x963289, 0x963289, 0xa8489e, 0xa8489e, + 0xb75cb0, 0xb75cb0, 0xc66fc1, 0xc66fc1, + 0xd380d1, 0xd380d1, 0xe090e0, 0xe090e0, + 0x003c70, 0x003c70, 0x195a89, 0x195a89, + 0x2f75a0, 0x2f75a0, 0x448eb6, 0x448eb6, + 0x57a5c9, 0x57a5c9, 0x68badc, 0x68badc, + 0x79ceec, 0x79ceec, 0x88e0fc, 0x88e0fc, + 0x580070, 0x580070, 0x6e1a89, 0x6e1a89, + 0x8332a0, 0x8332a0, 0x9648b6, 0x9648b6, + 0xa75cc9, 0xa75cc9, 0xb76fdc, 0xb76fdc, + 0xc680ec, 0xc680ec, 0xd490fc, 0xd490fc, + 0x002070, 0x002070, 0x193f89, 0x193f89, + 0x2f5aa0, 0x2f5aa0, 0x4474b6, 0x4474b6, + 0x578bc9, 0x578bc9, 0x68a1dc, 0x68a1dc, + 0x79b5ec, 0x79b5ec, 0x88c8fc, 0x88c8fc, + 0x340080, 0x340080, 0x4a1a96, 0x4a1a96, + 0x5f32ab, 0x5f32ab, 0x7248be, 0x7248be, + 0x835ccf, 0x835ccf, 0x936fdf, 0x936fdf, + 0xa280ee, 0xa280ee, 0xb090fc, 0xb090fc, + 0x000088, 0x000088, 0x1a1a9d, 0x1a1a9d, + 0x3232b0, 0x3232b0, 0x4848c2, 0x4848c2, + 0x5c5cd2, 0x5c5cd2, 0x6f6fe1, 0x6f6fe1, + 0x8080ef, 0x8080ef, 0x9090fc, 0x9090fc, + 0x000000, 0x000000, 0x2b2b2b, 0x2b2b2b, + 0x525252, 0x525252, 0x767676, 0x767676, + 0x979797, 0x979797, 0xb6b6b6, 0xb6b6b6, + 0xd2d2d2, 0xd2d2d2, 0xececec, 0xececec, + 0x000000, 0x000000, 0x2b2b2b, 0x2b2b2b, + 0x525252, 0x525252, 0x767676, 0x767676, + 0x979797, 0x979797, 0xb6b6b6, 0xb6b6b6, + 0xd2d2d2, 0xd2d2d2, 0xececec, 0xececec }; // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -