Welcome, Guest. Please login or register.

Author Topic: WhichAmiga crashes!  (Read 3512 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: WhichAmiga crashes!
« on: April 08, 2007, 02:38:21 PM »
I'm afraid WhichAmiga pokes and peeks way too much low level HW to ever run on Pegasos. ;-)

 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: WhichAmiga crashes!
« Reply #1 on: April 08, 2007, 04:40:11 PM »
Fetching PVR is no problem. However, I will not add support for non-classic systems.
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: WhichAmiga crashes!
« Reply #2 on: April 08, 2007, 05:40:21 PM »
Quote
I assume you mean via ppc.library / powerpc.library for classics

For PUP it can use the query function in ppc.library.
For WOS it executes a small PPC routine with RunPPC. This routine in turn calls another routine in supervisor, which fetches the PVR.
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: WhichAmiga crashes!
« Reply #3 on: April 08, 2007, 06:08:06 PM »
Well, actually for PUP it just fetches the stored value from the library base, and with original ppc.library it's all pure m68k code.



Anyhoo, this hardly is any rocket science.
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
    • Show all replies
    • http://www.iki.fi/sintonen/
Re: WhichAmiga crashes!
« Reply #4 on: April 08, 2007, 06:24:56 PM »
Quote
Ah, is this why it often misreports the hardware then (PUP, I mean, it often reported my 240MHz PPC as 160MHz, despite the fact the CPU is definately a 240MHz part)?

In most cases that was just applications being buggy. They assumed the PLL multiplier value was direct multiplier, instead of index to multiplier table specific to each CPU (well some CPUs share the PLL multiplier tables). For example some Doom version blasted "buggy ppc.library" for this, when in fact the app itself was broken.

But if your CPU speed appears randomly change between 240 and 160, then I have no clue.
Quote
- unless the value in the library base is hard coded, at some point during initialisation it must be read from the physical PVR, regardless of what happens on subsequent library calls...

Sure, it's read at library init. However, your query doesn't trigger any PPC code execution... :-)