09-14-2025, 02:41 AM
(This post was last modified: 09-14-2025, 02:42 AM by Stuart McLachlan.)
Instead of a preprogrammed Base Frequency macro, you can determine it at run time so your code is not machine specific 
'

'
Code:
#COMPILE EXE
#DIM ALL
#INCLUDE "win32api.inc"
GLOBAL CPUBaseFreq AS QUAD
FUNCTION PBMAIN () AS LONG
CPUBaseFreq = GetBaseCPUFreq
? "CPU Base Frequency: " & STR$(CPUBaseFreq) & " Hz"
'...
END FUNCTION
FUNCTION GetBaseCPUFreq() AS QUAD
LOCAL retval , hkey AS DWORD
LOCAL MHz AS DWORD
retval = RegOpenKeyEx( %HKLM,"HARDWARE\DESCRIPTION\System\CentralProcessor\0" ,0,%key_query_value,hkey)
retval = regqueryvalueex(hkey,"~Mhz",0,%REG_DWORD,MHZ,4)
retval = regclosekey(hkey)
FUNCTION = MHZ * 10 ^6
END FUNCTION
'