Merge pull request #2205 from RadWolfie/move-minor-changes

move minor changes into upstream from chihiro branch
This commit is contained in:
PatrickvL 2021-04-23 08:22:47 +02:00 committed by GitHub
commit e6e0d5da9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 16 additions and 22 deletions

View File

@ -774,8 +774,8 @@ bool Xbe::CheckSignature()
// Hash against all currently known public keys, if these pass, we can guarantee the Xbe is unmodified
std::array<RSA_PUBLIC_KEY, 3> keys = { 0 };
memcpy(keys[0].Default, (void*)xbox::XePublicKeyDataRetail, 284);
memcpy(keys[1].Default, (void*)xbox::XePublicKeyDataChihiroGame, 284);
memcpy(keys[2].Default, (void*)xbox::XePublicKeyDataChihiroBoot, 284);
memcpy(keys[1].Default, (void*)xbox::XePublicKeyDataDebug, 284);
memcpy(keys[2].Default, (void*)xbox::XePublicKeyDataChihiro, 284);
// TODO: memcpy(keys[3].Default, (void*)xbox::XePublicKeyDataDebug, 284);
for (unsigned int i = 0; i < keys.size(); i++) {

View File

@ -484,8 +484,8 @@ XBSYSAPI EXPORTNUM(354) XBOX_KEY_DATA XboxAlternateSignatureKeys[ALTERNATE_SIGNA
// ******************************************************************
XBSYSAPI EXPORTNUM(355) uchar_xt XePublicKeyData[284];
XBSYSAPI EXPORTNUM(355) uchar_xt XePublicKeyDataRetail[284];
XBSYSAPI EXPORTNUM(355) uchar_xt XePublicKeyDataChihiroGame[284];
XBSYSAPI EXPORTNUM(355) uchar_xt XePublicKeyDataChihiroBoot[284];
XBSYSAPI EXPORTNUM(355) uchar_xt XePublicKeyDataDebug[284];
XBSYSAPI EXPORTNUM(355) uchar_xt XePublicKeyDataChihiro[284];
// ******************************************************************
// * 0x0165 - IdexChannelObject

View File

@ -101,27 +101,20 @@ void ARX_WR(void *Ptr, xbox::uchar_xt i, xbox::uchar_xt d)
g_NV2A->BlockWrite(block, NV_PRMCIO_ARX, d, sizeof(uint8_t));
}
// Global Variable(s)
PVOID g_pPersistedData = NULL;
ULONG AvpCurrentMode = 0;
ULONG AvSMCVideoModeToAVPack(ULONG VideoMode)
{
switch (VideoMode)
{
case 0x0: return AV_PACK_SCART;
case 0x1: return AV_PACK_HDTV;
case 0x2: return AV_PACK_VGA;
case 0x3: return AV_PACK_RFU;
case 0x4: return AV_PACK_SVIDEO;
case 0x6: return AV_PACK_STANDARD;
switch (VideoMode) {
case 0x0: return g_bIsChihiro ? AV_PACK_VGA : AV_PACK_SCART; // Scart on Retail/Debug, VGA on Chihiro
case 0x1: return AV_PACK_HDTV;
case 0x2: return AV_PACK_VGA;
case 0x3: return AV_PACK_RFU;
case 0x4: return AV_PACK_SVIDEO;
case 0x6: return AV_PACK_STANDARD;
}
return AV_PACK_NONE;
}
ULONG AvQueryAvCapabilities()
{
ULONG avpack = AvSMCVideoModeToAVPack(xbox::HalBootSMCVideoMode);
@ -306,6 +299,7 @@ XBSYSAPI EXPORTNUM(3) xbox::ulong_xt NTAPI xbox::AvSetDisplayMode
Pitch /= 8;
static xbox::ulong_xt AvpCurrentMode = 0;
if (AvpCurrentMode == Mode) {
REG_WR32(RegisterBase, NV_PRAMDAC_GENERAL_CONTROL, GeneralControl);
CRTC_WR(RegisterBase, NV_CIO_SR_LOCK_INDEX /*=0x1c*/, NV_CIO_SR_UNLOCK_RW_VALUE); /* crtc lock */

View File

@ -190,8 +190,8 @@ xbox::uchar_xt xbox::XePublicKeyDataRetail[284] = {
0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00
};
// Chihiro Game Public Key
xbox::uchar_xt xbox::XePublicKeyDataChihiroGame[284] = {
// Debug Public Key
xbox::uchar_xt xbox::XePublicKeyDataDebug[284] = {
0x52, 0x53, 0x41, 0x31, 0x08, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
0xFF, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x9B, 0x83, 0xD4, 0xD5,
0xDE, 0x16, 0x25, 0x8E, 0xE5, 0x15, 0xF2, 0x18, 0x9D, 0x19, 0x1C, 0xF8,
@ -218,8 +218,8 @@ xbox::uchar_xt xbox::XePublicKeyDataChihiroGame[284] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
};
// Chihiro bootloader public key (Segaboot)
xbox::uchar_xt xbox::XePublicKeyDataChihiroBoot[284] = {
// Chihiro public key (Segaboot)
xbox::uchar_xt xbox::XePublicKeyDataChihiro[284] = {
0x52, 0x53, 0x41, 0x31, 0x08, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00,
0xFF, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x6B, 0x7B, 0x38, 0x78,
0xE3, 0x16, 0x04, 0x88, 0x1D, 0xAF, 0x63, 0x4E, 0x23, 0xDB, 0x10, 0x14,