Pommel, Tachyon, Baryon
-
- Posts: 23
- Joined: Sun Feb 17, 2008 12:32 am
Pommel, Tachyon, Baryon
What are the header files to use for Pommel, Tachyon and Baryon?
Or are they something only moonlight holds.
Thanks.
Or are they something only moonlight holds.
Thanks.
-
- Posts: 328
- Joined: Sun Jun 03, 2007 10:05 pm
KickinAezz is this em',
If so, how do ya use em'
like this??,
lol
Code: Select all
int sceSysconGetTachyonWDTStatus();
int sceSysconGetPommelVersion();
int sceUpdaterGetBaryonVersion();
like this??,
Code: Select all
int sceSysconGetTachyonWDTStatus(void);
int sceSysconGetPommelVersion(void);
int sceUpdaterGetBaryonVersion(void);
printf("Your Tachyon Number is: 0x%08X\n\n",sceSysconGetTachyonWDTStatus());
printf("Your Pommel Number is: 0x%08X\n\n",sceSysconGetPommelVersion());
printf("Your Baryon Number is: 0x%08X\n\n",sceUpdaterGetBaryonVersion());
No and no ;)
You use them like this:
Note, the old function names were:
u32 sceSyscon_driver_7EC5A957(u32 *baryon); // get baryon
u32 sceSyscon_driver_E7E87741(u32 *pommel); // get pommel
u32 sceSysreg_driver_E2A5D1EE(void); // get tachyon
Tachyon is the overall version of the motherboard (TA-0XX) or the version of the CPU/ME
Baryon is the Syscon chip version number
Pommel is the GPIO/watchdog version number
You use them like this:
Code: Select all
u32 tachyon;
u32 baryon;
u32 pommel;
tachyon = sceSysregGetTachyonVersion();
sceSysconGetBaryonVersion(&baryon);
sceSysconGetPommelVersion(&pommel);
printf("Tachyon: 0x%08X\n", tachyon);
printf("Baryon: 0x%08X\n", baryon);
printf("Pommel: 0x%08X\n", pommel);
u32 sceSyscon_driver_7EC5A957(u32 *baryon); // get baryon
u32 sceSyscon_driver_E7E87741(u32 *pommel); // get pommel
u32 sceSysreg_driver_E2A5D1EE(void); // get tachyon
Tachyon is the overall version of the motherboard (TA-0XX) or the version of the CPU/ME
Baryon is the Syscon chip version number
Pommel is the GPIO/watchdog version number
-
- Posts: 23
- Joined: Sun Feb 17, 2008 12:32 am
k, I'm doing it exactly as you posted jas0nuk, I've located a syscon library from one of DA's releases, but can't find a library for sysreg
I comment the Tachyon code out the app builds fine but get the Library not found error when running.
I have also located some stub files for both.
Do you have any more pointers?
gh0st
I comment the Tachyon code out the app builds fine but get the Library not found error when running.
I have also located some stub files for both.
Do you have any more pointers?
gh0st
Try this... I made it myself for PSPident.
http://rapidshare.com/files/96754529/libpspident.a.html
You can then use the following functions
u32 sceSyscon_driver_7EC5A957(u32 *baryon); // get baryon
u32 sceSyscon_driver_E7E87741(u32 *pommel); // get pommel
u32 sceSysreg_driver_E2A5D1EE(void); // get tachyon
http://rapidshare.com/files/96754529/libpspident.a.html
You can then use the following functions
u32 sceSyscon_driver_7EC5A957(u32 *baryon); // get baryon
u32 sceSyscon_driver_E7E87741(u32 *pommel); // get pommel
u32 sceSysreg_driver_E2A5D1EE(void); // get tachyon
-
- Posts: 23
- Joined: Sun Feb 17, 2008 12:32 am
jas0nuk wrote:Try this... I made it myself for PSPident.
http://rapidshare.com/files/96754529/libpspident.a.html
You can then use the following functions
u32 sceSyscon_driver_7EC5A957(u32 *baryon); // get baryon
u32 sceSyscon_driver_E7E87741(u32 *pommel); // get pommel
u32 sceSysreg_driver_E2A5D1EE(void); // get tachyon
Thanks jas0nuk, I can now get Tachyon to show the correct value, but when I include both pommel and baryon, it don't show the correct value and then the psp shuts down.
I'm loading a kernel prx to retrieve the values.
Do you still use these functions like this.
Code: Select all
u32 tachyon;
u32 pommel;
u32 baryon;
tachyon = sceSysreg_driver_E2A5D1EE();
sceSyscon_driver_E7E87741(&pommel);
//sceSyscon_driver_7EC5A957(&baryon);
printf("Tachyon: 0x%08X\n", tachyon);
printf("Pommel: 0x%08X\n", pommel);
//printf(" Baryon: 0x%08X\n\n", baryon);
Thanks
Does this work on the 1.50 Kernel, its loads but the pommel etc doesnt work, only the sceKernelDevkitVersion does.
Did i do it wrong....again? lolol sorry
Code: Select all
int sceKernelDevkitVersion(void);
u32 pommel;
u32 baryon;
u32 tachyon;
u32 sceSyscon_driver_7EC5A957(u32 *baryon); // get baryon
u32 sceSyscon_driver_E7E87741(u32 *pommel); // get pommel
u32 sceSysreg_driver_E2A5D1EE(void); // get tachyon
printf("devkit Version: 0x%08X\n",sceKernelDevkitVersion());
printf("Tachyon: 0x%08X\n",tachyon);
printf("Baryon: 0x%08X\n",baryon);
printf("Pommel: 0x%08X\n\n\n",pommel);
Gh0st-UPMS: that is the correct way to do it, at least my code is basically doing this. As to why it's crashing, I've no idea. :/
PSPfreak!: The functions aren't being called therefore the values aren't being set.are just function prototypes.
You need to do...like Gh0st-UPMS, too.
PSPfreak!: The functions aren't being called therefore the values aren't being set.
Code: Select all
u32 sceSyscon_driver_7EC5A957(u32 *baryon); // get baryon
u32 sceSyscon_driver_E7E87741(u32 *pommel); // get pommel
u32 sceSysreg_driver_E2A5D1EE(void); // get tachyon
You need to do...
Code: Select all
tachyon = sceSysreg_driver_E2A5D1EE();
sceSyscon_driver_E7E87741(&pommel);
sceSyscon_driver_7EC5A957(&baryon);
-
- Posts: 23
- Joined: Sun Feb 17, 2008 12:32 am
I'm not sure why it crashes either, going to look into it more when I get home from work, hopefully will get more time to study it. I'll post my results.
Thanks
Edit:
k, got home from work and took a look at the code, deleted it all and redone it, and guess what, it all worked, here is the code that I used.
Thanks for the help and the lib file jas0nuk, appreciated.
gh0st
Thanks
Edit:
k, got home from work and took a look at the code, deleted it all and redone it, and guess what, it all worked, here is the code that I used.
Code: Select all
u32 sceSysreg_driver_E2A5D1EE(void);
u32 sceSyscon_driver_E7E87741(u32 *pommel);
u32 sceSyscon_driver_7EC5A957(u32 *baryon);
Code: Select all
u32 tachyon;
u32 pommel;
u32 baryon;
tachyon = sceSysreg_driver_E2A5D1EE();
sceSyscon_driver_E7E87741(&pommel);
sceSyscon_driver_7EC5A957(&baryon);
Code: Select all
printf("Tachyon: 0x%08X", tachyon);
printf("Pommel: 0x%08X", pommel);
printf("Baryon: 0x%08X", baryon);
gh0st
mine now is crashing, even after i started again!. but, i think i figured out my problem, It may be because im getting them in the wrong place, i've tried them everywhere, just exept the correct place.
This is main() {, (commented the stuff out, it works, got more stuff in it though)
before main() {, (still commented out)
Without the commented out parts, it crashes....did i put em' in the wrong place??
This is main() {, (commented the stuff out, it works, got more stuff in it though)
Code: Select all
/*int tachyon;
int pommel;
int baryon;
tachyon = sceSysreg_driver_E2A5D1EE();
sceSyscon_driver_E7E87741(&pommel);
sceSyscon_driver_7EC5A957(&baryon); */
printf("devKit Version: 0x%08X\n", sceKernelDevkitVersion());
/*printf("Tachyon: 0x%08X\n", tachyon);
printf("Baryon: 0x%08X\n", baryon);
printf("Pommel: 0x%08X\n\n\n", pommel);*/
Code: Select all
int sceKernelDevkitVersion(void);
/*u32 sceSysreg_driver_E2A5D1EE(void);
u32 sceSyscon_driver_E7E87741(u32 *pommel);
u32 sceSyscon_driver_7EC5A957(u32 *baryon);*/
Thanks for the response J.F. and i am using the 1.50 Kernel, it still crashes.J.F. wrote:Are these kernel-level functions? If so, you either need to compile as kernel-mode 1.50-based homebrew, or move them into an external kernel-level prx for 3.xx user-level homebrew.
I can't see these functions as user-level... users don't need to know the version of the hardware.
lol i basically always base my apps on 1.50
-
- Posts: 23
- Joined: Sun Feb 17, 2008 12:32 am
@PSPfreak!PSPfreak! wrote:Thanks for the response J.F. and i am using the 1.50 Kernel, it still crashes.J.F. wrote:Are these kernel-level functions? If so, you either need to compile as kernel-mode 1.50-based homebrew, or move them into an external kernel-level prx for 3.xx user-level homebrew.
I can't see these functions as user-level... users don't need to know the version of the hardware.
lol i basically always base my apps on 1.50
Do you have the library file jas0nuk posted.
Yea i have,Gh0st-UPMS wrote: @PSPfreak!
Do you have the library file jas0nuk posted.
Code: Select all
LIBS = -lpspgu -lpng -lz -lm -lpspumd -lpspusb -lpspusbstor -lpspctrl libpspident.A
p.s. i dont really need all of those libs, so ill remove some crap i dont need
Like J.F. said, the app needs to run in kernel mode.
I have successfully compiled it and it runs on 1.50.
---------------------
Main.c:
Makefile:
I have successfully compiled it and it runs on 1.50.
---------------------
Main.c:
Code: Select all
/*
What: Pommel, Tachyon and Baryon viewer
Thanks to: jas0nuk for libpspident.a
*/
#include <pspkernel.h>
#include <pspdebug.h>
PSP_MODULE_INFO("tpb", 0x1000, 1, 0); //RUN IT IN KERNEL MODE
PSP_MAIN_THREAD_ATTR(0);
#define printf pspDebugScreenPrintf
/* Exit callback */
int exit_callback(int arg1, int arg2, void *common) {
sceKernelExitGame();
return 0;
}
/* Callback thread */
int CallbackThread(SceSize args, void *argp) {
int cbid;
cbid = sceKernelCreateCallback("Exit Callback", exit_callback, NULL);
sceKernelRegisterExitCallback(cbid);
sceKernelSleepThreadCB();
return 0;
}
/* Sets up the callback thread and returns its thread id */
int SetupCallbacks(void) {
int thid = 0;
thid = sceKernelCreateThread("update_thread", CallbackThread, 0x11, 0xFA0, 0, 0);
if(thid >= 0) {
sceKernelStartThread(thid, 0, 0);
}
return thid;
}
int main() {
pspDebugScreenInit();
SetupCallbacks();
u32 sceSysreg_driver_E2A5D1EE(void);
u32 sceSyscon_driver_E7E87741(u32 *pommel);
u32 sceSyscon_driver_7EC5A957(u32 *baryon);
u32 tachyon;
u32 pommel;
u32 baryon;
tachyon = sceSysreg_driver_E2A5D1EE();
sceSyscon_driver_E7E87741(&pommel);
sceSyscon_driver_7EC5A957(&baryon);
printf("Tachyon: 0x%08X\n", tachyon);
printf("Pommel: 0x%08X\n", pommel);
printf("Baryon: 0x%08X\n", baryon);
sceKernelSleepThread();
return 0;
}
Makefile:
Code: Select all
TARGET = hello
OBJS = main.o
CFLAGS = -O2 -G0 -Wall
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)
LIBS = libpspident.A
EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = TBP
PSPSDK=$(shell psp-config --pspsdk-path)
include $(PSPSDK)/lib/build.mak
so how do we specify which PSP model we have, like this??
i really dont know how to get the standard mobo, if you know...please tell me...pleasseeee
the above code was just a random guess btw
Code: Select all
if (tachyon = 0x00200000|baryon = 0x00040600)
{
printf("Motherboard = TA-079 v3\n");
}
the above code was just a random guess btw
Tachyon = 0x00140000, Baryon = 0x00030600 TA-079 v1 1g
Tachyon = 0x00200000, Baryon = 0x00030600 TA-079 v2 1g
Tachyon = 0x00200000, Baryon = 0x00040600 TA-079 v3 1g
Tachyon = 0x00300000, Baryon = 0x00040600 TA-081 1g
Tachyon = 0x00400000, Baryon = 0x00114000 TA-082 1g
Tachyon = 0x00400000, Baryon = 0x00121000 TA-086 1g
Tachyon = 0x00500000, Baryon = 0x0022B200 TA-085 2g
Tachyon = 0x00500000, Baryon = 0x00234000 TA-085 2g
Tachyon = 0x00200000, Baryon = 0x00030600 TA-079 v2 1g
Tachyon = 0x00200000, Baryon = 0x00040600 TA-079 v3 1g
Tachyon = 0x00300000, Baryon = 0x00040600 TA-081 1g
Tachyon = 0x00400000, Baryon = 0x00114000 TA-082 1g
Tachyon = 0x00400000, Baryon = 0x00121000 TA-086 1g
Tachyon = 0x00500000, Baryon = 0x0022B200 TA-085 2g
Tachyon = 0x00500000, Baryon = 0x00234000 TA-085 2g
Thanks jas0nuk!
@FaderX-
It would be like this:
@FaderX-
It would be like this:
Code: Select all
if ((tachyon == 0x00140000 && baryon == 0x00030600))
{
printf("Motherboard = TA-079 v1 1g\n");
}
Ok, Thanks bromirzab14 wrote:Thanks jas0nuk!
@FaderX-
It would be like this:
Code: Select all
if ((tachyon == 0x00140000 && baryon == 0x00030600)) { printf("Motherboard = TA-079 v1 1g\n"); }