diff --git a/apps/tzclk/tzclk.c b/apps/tzclk/tzclk.c index 7bb6fa0..2c6d278 100644 --- a/apps/tzclk/tzclk.c +++ b/apps/tzclk/tzclk.c @@ -194,7 +194,7 @@ uint32_t app(uint32_t param1, uint32_t param2) usage(); return(0); } - if(cpuFreq == 2000000) + if(cpuFreq == 0) { printf("Please specify the CPU frequency with the --freq flag.\n"); return(10); diff --git a/common/tranzputer.c b/common/tranzputer.c index 1940405..637019e 100644 --- a/common/tranzputer.c +++ b/common/tranzputer.c @@ -4080,6 +4080,7 @@ void processServiceRequest(void) // uint8_t refreshCacheDir = 0; uint8_t status = 0; + uint32_t actualFreq; uint32_t copySize = TZSVC_CMD_STRUCT_SIZE; // Update the service control record address according to memory mode. @@ -4296,7 +4297,8 @@ void processServiceRequest(void) // Set the alternate frequency. The TZFS command provides the frequency in KHz so multiply up to Hertz before changing. case TZSVC_CMD_CPU_CHGFREQ: - setZ80CPUFrequency(svcControl.cpuFreq * 1000, 1); + actualFreq = setZ80CPUFrequency(svcControl.cpuFreq * 1000, 1); + svcControl.cpuFreq = (uint16_t)(actualFreq / 1000); break; default: