forked from Dniel97/segatools
platform: make billing type configurable
This commit is contained in:
parent
8f0d21200a
commit
dce5bbe66d
@ -326,6 +326,20 @@ Bit values are:
|
||||
- 3: EXP: Export (for Asian markets)
|
||||
- 4: CHS: China (Simplified Chinese?)
|
||||
|
||||
### `billingType`
|
||||
|
||||
Default: `1`
|
||||
|
||||
Set the billing "type" for the keychip. The type determins what kind of revenue share,
|
||||
if any, the game maker has with SEGA. Some games may be picky and require types other
|
||||
then 1 (ex. Crossbeats requires billing type 2), so this option is provided if this
|
||||
is an issue. Billing types are:
|
||||
|
||||
- 0: No billing?
|
||||
- 1: Billing type A
|
||||
- 2: Billing type B1
|
||||
- 3: Billing type B2
|
||||
|
||||
### `systemFlag`
|
||||
|
||||
Default: `0x64`
|
||||
|
@ -222,6 +222,7 @@ void nusec_config_load(struct nusec_config *cfg, const wchar_t *filename)
|
||||
filename);
|
||||
|
||||
cfg->region = GetPrivateProfileIntW(L"keychip", L"region", 1, filename);
|
||||
cfg->region = GetPrivateProfileIntW(L"keychip", L"billingType", 1, filename);
|
||||
cfg->system_flag = GetPrivateProfileIntW(
|
||||
L"keychip",
|
||||
L"systemFlag",
|
||||
|
@ -134,8 +134,9 @@ HRESULT nusec_hook_init(
|
||||
if (nusec_cfg.platform_id[0] == '\0') {
|
||||
memcpy(nusec_cfg.platform_id, platform_id, sizeof(nusec_cfg.platform_id));
|
||||
}
|
||||
|
||||
nusec_nearfull = 0x00010200;
|
||||
|
||||
// High 16 bits is billing type, low is actual playlimit
|
||||
nusec_nearfull = (nusec_cfg.billing_type << 16) + 512;
|
||||
nusec_play_count = 0;
|
||||
nusec_play_limit = 1024;
|
||||
|
||||
|
@ -14,6 +14,7 @@ struct nusec_config {
|
||||
uint8_t region;
|
||||
uint8_t system_flag;
|
||||
uint32_t subnet;
|
||||
uint16_t billing_type;
|
||||
wchar_t billing_ca[MAX_PATH];
|
||||
wchar_t billing_pub[MAX_PATH];
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user