| View previous topic :: View next topic |
| Author |
Message |
radad
Joined: 19 May 2004 Posts: 246 Location: Melbourne, Australia
|
Posted: Fri Jun 24, 2005 1:28 pm Post subject: ps2link crashing |
|
|
I have compiled the latest ps2link and ps2client from cvs. I am getting it crashing exerytime a run a second elf. The first elf runs fine. I can even rerun this elf many times. When I try a different elf it crashes. I have to reboot the ps2 then I run the second elf and everything runs fine.
Anyone else experiencing this problem? |
|
| Back to top |
|
 |
ooPo Site Admin
Joined: 17 Jan 2004 Posts: 2032 Location: Canada
|
Posted: Fri Jun 24, 2005 2:25 pm Post subject: |
|
|
Does it crash if you do a reset before running the second elf?
Is your first elf doing anything 'funny' to sifrpc? Is it loading into a memory location overlapping with ps2link? Did you forget to sacrifice a chicken?
There's many nasty things you can do to make it crash. :)
What do these programs do? |
|
| Back to top |
|
 |
radad
Joined: 19 May 2004 Posts: 246 Location: Melbourne, Australia
|
Posted: Fri Jun 24, 2005 2:50 pm Post subject: |
|
|
I haven't tried resetting, shall try that tonight.
The only sif function it calls is SifInitRpc.
It is a very simple program to get a directly listing output using printf. |
|
| Back to top |
|
 |
urchin
Joined: 02 Jun 2005 Posts: 121
|
Posted: Fri Jun 24, 2005 5:46 pm Post subject: |
|
|
I do a ps2client reset before running each elf - should I need to do this, or should I be able to run one elf after another? (assuming they are not doing anything illegal)
I can run a simple elf several times, but then get a message like "EE needs reset" and the PS2 locks requiring a reboot. |
|
| Back to top |
|
 |
ooPo Site Admin
Joined: 17 Jan 2004 Posts: 2032 Location: Canada
|
Posted: Fri Jun 24, 2005 11:55 pm Post subject: |
|
|
| A well-behaved program shouldn't have to be reset between executions. |
|
| Back to top |
|
 |
pixel
Joined: 30 Jan 2004 Posts: 791
|
Posted: Sat Jun 25, 2005 12:56 am Post subject: |
|
|
Yet, all the ps2 softwares you can find around are not well-behaved :P So, better reset between two execee. It doesn't take long anyway. _________________ pixel: A mischievous magical spirit associated with screen displays. The computer industry has frequently borrowed from mythology. Witness the sprites in computer graphics, the demons in artificial intelligence and the trolls in the marketing department. |
|
| Back to top |
|
 |
radad
Joined: 19 May 2004 Posts: 246 Location: Melbourne, Australia
|
Posted: Sun Jun 26, 2005 10:44 am Post subject: |
|
|
Resetting solved the problem.
I agree that a well-behaved program should not need resetting but obviously that is not possible now. The programs I was trying are not much more complex than the hello world sample. |
|
| Back to top |
|
 |
dlanor
Joined: 28 Oct 2004 Posts: 269 Location: Stockholm, Sweden
|
Posted: Mon Jun 27, 2005 5:38 am Post subject: |
|
|
| radad wrote: | Resetting solved the problem.
I agree that a well-behaved program should not need resetting but obviously that is not possible now. The programs I was trying are not much more complex than the hello world sample.
| There are some known reasons for these problems.
Our programming libraries rely on IOP modules, and usually expect them to have been loaded specifically for the EE program running the EE library code. That is often realistic for newly booted game disks, but less so for homebrew programs under test...
When an EE library and the IOP module it uses were not loaded by the same program, they may be in different operational 'states' causing their cooperation to malfunction in various ways. The same is also true if a program needs to perform an IOP reset while still continuing to use its own EE libraries, since the EE libs are not properly 'informed' of the state change in the IOP modules (usually reloaded from scratch on such occasions).
Solving these problems is not easy, as it needs to be done in ways that ensure maximum flexibility, reliability, as well as compatibility with all existing software. That's a pretty tall order, but I think it can be filled. At least it can be done better than just by ignoring the issue, which is what we have been doing for quite a while (more or less ;) )
(I'm not 'picking' on any person here, just on the situation as such.)
Best regards: dlanor |
|
| Back to top |
|
 |
|