commit de la noche
This commit is contained in:
parent
6c50eade80
commit
71be2d3bf0
1 changed files with 24 additions and 13 deletions
37
src/main.cpp
37
src/main.cpp
|
|
@ -59,23 +59,24 @@ ECX Bits 31-00: An unsigned integer which is the nominal frequency of the core c
|
|||
EDX Bits 31-00: Reserved = 0.
|
||||
|
||||
*/
|
||||
|
||||
char** AMDMeCagoEnTusPutosMuertos () {
|
||||
char** palabritas = (char**)malloc(sizeof(char) * 48);
|
||||
uint64_t siguienteLetra = 0;
|
||||
//Extended name on AMD systems when using 8000_002-4. Now converted to Extpagequant/vendor. Hijos de puta.
|
||||
char* AMDMeCagoEnTusPutosMuertos () {
|
||||
char* palabritas = (char*)malloc(sizeof(char) * 48);
|
||||
//char* palabritas = (char*)calloc(48, sizeof(char));
|
||||
uint8_t siguienteLetra = 0;
|
||||
//char letrita;
|
||||
uint64_t regs[4];//rax rbx, rcx, rdx;
|
||||
asm volatile ( ".intel_syntax noprefix\t\n" \
|
||||
"mov eax, 0x80000002\t\n" \
|
||||
"mov eax, 0x80000000\t\n" \
|
||||
"cpuid\t\n" : "=a" (regs[0]), "=b" (regs[1]), "=c" (regs[2]), "=d" (regs[3]) );
|
||||
int byte = 0;
|
||||
for (int reg = 0; reg < 4; reg++, siguienteLetra++, byte = 0){
|
||||
char* letrita = nullptr;
|
||||
for (int reg = 0; reg < 4; reg++, byte = 0){
|
||||
char* charifiedReg = (char*)®s[reg];
|
||||
for(; byte < 4; byte++){
|
||||
letrita = (char*)malloc(sizeof(char));
|
||||
*letrita = charifiedReg[byte];
|
||||
*palabritas[siguienteLetra] = *letrita;
|
||||
for(; byte < 4; byte++, siguienteLetra++ ){
|
||||
//letrita = (char*)malloc(sizeof(char));
|
||||
//*letrita = charifiedReg[byte];
|
||||
//*palabritas[siguienteLetra] = *letrita;
|
||||
palabritas[siguienteLetra] = charifiedReg[byte];
|
||||
}
|
||||
//uint8_t num = 0;
|
||||
//byte = 0;
|
||||
|
|
@ -85,10 +86,19 @@ char** AMDMeCagoEnTusPutosMuertos () {
|
|||
//letrita* |= (;
|
||||
|
||||
}
|
||||
*palabritas[siguienteLetra + 1] = '\0';
|
||||
palabritas[(siguienteLetra + 1)] = '\0';
|
||||
return palabritas;
|
||||
}
|
||||
|
||||
//GMET on??????????? jfc wtf
|
||||
bool AMDJoder(){
|
||||
uint64_t rdx;
|
||||
asm volatile ( ".intel_syntax noprefix\t\n" \
|
||||
"mov eax, 0x8000000A\t\n" \
|
||||
"cpuid\t\n" : "=d" (rdx));
|
||||
return (((1<<17) & rdx));
|
||||
}
|
||||
|
||||
int16_t checkFrequencyTSC(uint64_t* freq){
|
||||
if (freq == nullptr) return -1;
|
||||
uint64_t raxde;
|
||||
|
|
@ -147,7 +157,8 @@ uint64_t rdtscp(uint64_t* logicore ) {
|
|||
|
||||
int main(int argc, char** argv){
|
||||
//AMD Momento
|
||||
char** opiniones = AMDMeCagoEnTusPutosMuertos();
|
||||
char* opiniones = AMDMeCagoEnTusPutosMuertos();
|
||||
bool w11 = AMDJoder();
|
||||
//Cordura
|
||||
int16_t result;
|
||||
uint64_t tf = 0;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue