Where to find AGP details

View: New views
7 Messages — Rating Filter:   Alert me  

Where to find AGP details

by Jason Kemp-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Good morning all,

I am trying to understand a little about how the AGP works.  How are the
AGP memory addresses determined?  0x0f0000000 is for a fujitsu,
0xE8000000 seems to work on my ATI with Josh Grams's 2005 source. Can
anyone please point me to a datasheet or article that explains AGP
configuration, or is this more a BIOS set-up thing?  It appears that ATI
don't give away any technical info.  I've found
http://download.intel.com/design/chipsets/datashts/25302704.pdf but this
doesn't shed much light (may be I have to spend more time on that though?)

Thanks,
Jason


---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@...
For additional commands, e-mail: colorforth-help@...
Main web page - http://www.colorforth.com


Re: Where to find AGP details

by Nick Maroudas-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Dear Jason,

For what it's worth, I found the Video Electronics
Standards Association (VESA) publication VBE3 very
useful.   VESA BIOS EXTENSION (VBE Core Functions
Standard  Version: 3.0).  If you use Linux, it has
words that reveal the video addresses.  Karig of CF
commentary fame had an appendix on the same website
which illustrates the use of VESA codes.  Also the great
Mark Slicker, who is no longer with us, has site with a
CFO1 that incorporates VBE core functions (I wish I had
access to Mark's site, to download that version; if
anyone can help?)

Sorry not to add more detail, but if any of the above
seems worth pursuing I would try to fill in specifics.
Certainly VDU has been the main cause of CF hardware
incompatability in my limited experience; as Chuck
wrote, you have to find that address.

Caritas,

Nick

Quoting Jason Kemp <jason.kemp@...>:

>... " Good morning all,
>... "
>... " I am trying to understand a little about how the
>... " AGP works.  How are the
>... " AGP memory addresses determined?  0x0f0000000 is
>... " for a fujitsu,
>... " 0xE8000000 seems to work on my ATI with Josh
>... " Grams's 2005 source. Can
>... " anyone please point me to a datasheet or article
>... " that explains AGP
>... " configuration, or is this more a BIOS set-up
>... " thing?  It appears that ATI
>... " don't give away any technical info.  I've found
>... "
>... "
http://download.intel.com/design/chipsets/datashts/25302704.pdf
>... " but this
>... " doesn't shed much light (may be I have to spend
>... " more time on that though?)
>... "
>... " Thanks,
>... " Jason
>... "
>... "
>... "
---------------------------------------------------------------------
>... " To unsubscribe, e-mail:
>... " colorforth-unsubscribe@...
>... " For additional commands, e-mail:
>... " colorforth-help@...
>... " Main web page - http://www.colorforth.com
>... "


--
Dr Nicolas George Maroudas
Avigdor Meiri 9/1
Sea View
Haifa 3 55 00
Israel
Tel +972 048 337 315

****************************

A better world is not only possible but on the way.  On
a quiet day you can hear her breathing.  - Arundhati
Roy

****

---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@...
For additional commands, e-mail: colorforth-help@...
Main web page - http://www.colorforth.com


Re: Where to find AGP details

by Jason Kemp-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks Nick,

VBE3 looks quite manageable so I'll start there.

Jason

Nick Maroudas said the following on 10/09/2008 12:10:

> Dear Jason,
>
> For what it's worth, I found the Video Electronics
> Standards Association (VESA) publication VBE3 very
> useful.   VESA BIOS EXTENSION (VBE Core Functions
> Standard  Version: 3.0).  If you use Linux, it has
> words that reveal the video addresses.  Karig of CF
> commentary fame had an appendix on the same website
> which illustrates the use of VESA codes.  Also the great
> Mark Slicker, who is no longer with us, has site with a
> CFO1 that incorporates VBE core functions (I wish I had
> access to Mark's site, to download that version; if
> anyone can help?)
>
> Sorry not to add more detail, but if any of the above
> seems worth pursuing I would try to fill in specifics.
> Certainly VDU has been the main cause of CF hardware
> incompatability in my limited experience; as Chuck
> wrote, you have to find that address.
>
> Caritas,
>
> Nick
>


---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@...
For additional commands, e-mail: colorforth-help@...
Main web page - http://www.colorforth.com


Re: Where to find AGP details

by Nick Maroudas-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Here is a snippet on AGP from the weblogs:


Anyway, I was trawling through a rather large book
called "PCI System Architecture" from Addison Wesley
and in the section entitled "Configuration Registers"
they provide an example
of how to control a PCI card using what is termed a
'capabilities list'.

Guess what the example is that they used? --- AGP!

No information of the 3D acceleration bit but all the
information on how to turn up the speed of the AGP
slot.

After testing, there was a substantial increase in the
amount of data I could shove accross the connection.
(Depending on your system, there may be a larger or
smaller increase).


Top
 
 
Xardfir
 Post subject: Re:A small tutorial in AGP speed setup
PostPosted: Mon Oct 25, 2004 6:51 am
       
So here it is - a small tutorial in AGP speed setup.

I assume that you have access to the PCI specs and can
read/write PCI configuration registers. If you don't,
what follows isn't going to be much use. I'm assuming
PCI Spec 2.2 or higher. Have no idea if these work on
the PCI Ex cards coming onto the market, somehow I
doubt it.

Firstly, detect the AGP card using standard PCI
interrogation.
The device ID should be 03h with a subclass code of 02h
indicating: display controller - 3D controller.

Next from dword 0dh you will find the capabilities
pointer. This points to a linked list of 'capabilities'
a device may have.
At the Dword pointed by the pointer you'll find another
Dword with the following format
0-7    Capability ID
8-15    Pointer to next capability (points directly to
the next capability in the list)
16 - 31   Feature Specific

So what you do is follow the yellow brick list until you
come to an entry with the capability ID of 02h or
"AGP".
By the way, power management (01h), slot id (04h),
message signaled interrupts (05h), compactpci (06h) -
no information provided.

Once you have the appropriate capability, you can now
check which AGP version you have.
In the same DWord holding the Capability ID - the
following bits have the following meaning:
Bits 16 - 19 Minor revision
Bits 20 - 23 Major revision

Now that you're satisfied that you've got an AGP of the
appropriate revision in custody, the next DWORD holds
the AGP status register(read only unimplemented bits
are 0's):

Bits 0-2   AGP SPEED
This indicates the data transfer rates supported by the
AGP card. All data rates supported are
indicated by set bits.
   Bit      Transfer rate
   0      1X
   1      2X
   2      4X


Top
 
 
Xardfir
 Post subject: Re:A small tutorial in AGP speed setup
PostPosted: Mon Oct 25, 2004 6:51 am
       
Bit 3      Reserved
I don't have an 8X AGP card, but it wouldn't be too much
to assume that this is now the 8X rate

indicator bit, particularly since 16X cards will never
exist due to PCI Ex. On the other hand flipping both 2X
and 4X should equal 8X so.......

Bit 4      Fast Writes supported. (1 - Yes)

Bit 5      Addresses > 4Gbytes. (1 - Yes)
This one's for 64 bit systems Mips, Sparc, PowerPC etc.

Bits 8 - 6   Reserved

Bit 9      Side Band Addressing supported. (1 - Yes)
If supported (and activated) increases the speed of AGP
accesses.

Bits 10 - 23   Reserved

Bits 24 - 31   Maximum depth of the AGP request queue
supported. Unless you're into the 3D stuff - this is
useless.


OK, now we know the rates supported and the AGP's
capabilities, time to speed things up.

The next DWORD is the AGP Command Register where all the
good stuff resides and it's format is exactly the same
as the status register except for one bit - the
activate AGP bit (bit 8).
To increase speed, flip one (and only one) bit in the
data rate section.
For example to enable 4x AGP, set bit 2 of the
configuration register then turn on bit 8 and

- ZIPPPP, ZAPPPP, KAPOWWWW ***** 4X the data rate *****

Set the Fast-write and side-band addressing bits (if
applicable) to get a little bit more speed.
Be warned, some cards do not like these enabled when
installed on particular chipsets (some VIA boards I
believe).

So there, a quick and easy way to boost video speed.
Many thanks to Tom Shanley, Don Anderson and Addison
Wesley for providing the information.
"PCI SYSTEM ARCHITECTURE, Fourth Edition, ISBN
0-201-30974-2"

I also noticed there's an "AGP ARCHITECTURE, ISBN
0-201-37964-3", *currently unavailable (like all the
other AGP programming info)* - Is this some sort of
conspiracy? Is there a secret government agency
determined to suppress all AGP information?
It's not like the PCI hardware specs or anything to do
with actual AGP hardware implemenatation.

All I want to do is know how to program the blasted
thing!

P.S. If you use the above for GUI/graphics/whatever
development, I'd really be interested in the results
obtained.
Not necessarily a detailed analysis, just a -
"Everything speeded up - happy".



Quoting Jason Kemp <jason.kemp@...>:

>... " Good morning all,
>... "
>... " I am trying to understand a little about how the
>... " AGP works.  How are the
>... " AGP memory addresses determined?  0x0f0000000 is
>... " for a fujitsu,
>... " 0xE8000000 seems to work on my ATI with Josh
>... " Grams's 2005 source. Can
>... " anyone please point me to a datasheet or article
>... " that explains AGP
>... " configuration, or is this more a BIOS set-up
>... " thing?  It appears that ATI
>... " don't give away any technical info.  I've found
>... "
>... "
http://download.intel.com/design/chipsets/datashts/25302704.pdf
>... " but this
>... " doesn't shed much light (may be I have to spend
>... " more time on that though?)
>... "
>... " Thanks,
>... " Jason
>... "
>... "
>... "
---------------------------------------------------------------------
>... " To unsubscribe, e-mail:
>... " colorforth-unsubscribe@...
>... " For additional commands, e-mail:
>... " colorforth-help@...
>... " Main web page - http://www.colorforth.com
>... "


--
Dr Nicolas George Maroudas
Avigdor Meiri 9/1
Sea View
Haifa 3 55 00
Israel
Tel +972 048 337 315

****************************

A better world is not only possible but on the way.  On
a quiet day you can hear her breathing.  - Arundhati
Roy

****

---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@...
For additional commands, e-mail: colorforth-help@...
Main web page - http://www.colorforth.com


Re: Where to find AGP details

by Nick Maroudas-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Here is another snippet on PCI details - from a
tutorial
that Ray and I are working on.

A Tutorial on the PCI block 46
___________________{{_________

The pci bus is the one that most other PCI devices hang
from:  graphics, souncard, ethernet, usb, etc.  The PCI
ADDRESS system is a bit confusing at first, but Chuck's
code is elegantly simple.  Also, he has set it out
better in his original CF of 2001 than in his later
release of 2005.  Accordingly, we shall start with
block 46 of CF01 and show how this explains some things
in CF05.    

Firstly, to address any pci device, one has to WRITE
its
REGISTER ADDRESS into pci bus port  CF8  then  R/W data
to/from that device register via pci bus port  CFC

By register address we mean the address (on the bus) of
any one of the 64 (or 256?) registers which belong to
(are bound to) a particular pci device.  So Chuck, in
CF01, defines the word  ADD  (for pci ADDress)

            : ADD  CF8 a!  CFC a! ;  

which loads the COLORFORTH address register (a!) with
the PCI bus addresses  cf8  and  cfc.
   
Now suppose we wish to query one of a particular
device's registers (say the one at regaddr) and read
its data.  CF01 has the word  Q  (for Query); it adds a
1 to the msb of regadr then puts the resultant 4byte
regadr into cf8 and fetches the 4byte regdata from cfc

        regaddr-- : Q  80000000 +  ADD 4@ ;  --regdata

Now, as a dangerous tutorial exercise, we can define
our own word  P  to write our data to a device register

regdata regadr--  : P  80000000 +  ADD 4! ;  
 
Now that we know about CFO1, we can appreciate what is
happening on block 46 of CF05.  Firstly, regaddr has
been redefined as a 4byte address 8regaddr so its msb
is already set.  Accordingly Q has been redefined as
PCI  which does the same query job

        8regaddr--  <PCI>   --regdata

But where is this new word  PCI  defined? Unfortunately
not in block 46; it must have been written somewhere
else in assembly code - a retrograde step from CF01.
On the other hand CF05 has a new word  PCI!  which does
the same put job as our  P  above

   regdata 8regaddr--  : PCI!  pci drop 4! ;    

The reason why PCI is predefined in assembly in CF05
might be that CF05 begins with a new block 20 for USB
which needs PCI - but CF words for PCI will only come
later, in block 46.

Incidentally the word "k" in CF05 46, which is supposed
to find
all the PCI devices, does not find the USB controller
on
my new
Intel board.  This is because CF05 has been set to
search in steps
of 800h (like CF01); I soon found this USB controller
by
searching
upwards in steps of 200, and adjusted the address "USB"
in block
46 accordingly.  But there was no difficulty with
finding the AGP
video card on my old ASUS P2 with "k", and its
registers
with "ok" after putting the right address into the
variable "AGP".  Nor was there much problem adjusting
for the nVidia Force video card in my new Intel board.
Once the address had been found (by Linux) I added the
following word to block 30:  

   : display 40000000 3e8 ! ;  display

I guess CF address 3E8 must hold the display address, in
Josh's CF05 image that I use.

Hope it helps - anyway, got that off my chest,

Nick


Quoting Jason Kemp <jason.kemp@...>:

>... " Good morning all,
>... "
>... " I am trying to understand a little about how the
>... " AGP works.  How are the
>... " AGP memory addresses determined?  0x0f0000000 is
>... " for a fujitsu,
>... " 0xE8000000 seems to work on my ATI with Josh
>... " Grams's 2005 source. Can
>... " anyone please point me to a datasheet or article
>... " that explains AGP
>... " configuration, or is this more a BIOS set-up
>... " thing?  It appears that ATI
>... " don't give away any technical info.  I've found
>... "
>... "
http://download.intel.com/design/chipsets/datashts/25302704.pdf
>... " but this
>... " doesn't shed much light (may be I have to spend
>... " more time on that though?)
>... "
>... " Thanks,
>... " Jason
>... "
>... "


---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@...
For additional commands, e-mail: colorforth-help@...
Main web page - http://www.colorforth.com


Re: Where to find AGP details

by Ray St. Marie :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Thanks Nick,
Ray here-- Hi all

I'm off line again. Not sure when I can return, possibly mid October,
I hope. When it's a choice between meds and webs, meds win, no matter
how many times you flip the w to an m and the b to a d. I've been able
to get quick 30 minute sessions when I have occasion to pass the
library, about 3-4 miles from the house. I can get a two hour block
reserved and as soon as I have that much info to add to the wiki or
what not, then I'll do that.

Speaking of which... I can get to the library on foot now. This is new
for me. Since the day I fell near dead at work, just about 3 years ago
now, this is the farthest i've set afield, on my own. The last few
months I've been building up to the task, knowing one day I might not
be able to pay the cable bill. Wish I could pay the Fiber bill. It's
being installed in our area currently. Can't wait for that.

My Pentium 4's original Harddrive, the one that was giving me so much
trouble has finally released it's magic smoke. Not having another
harddrive of that size about the house, I finally settled for a very
much smaller one. One I'm not able to get Windows on. I was able (
don't ask me how 'cus' it's quite involved) to get an old linux Debian
Woody booted. That gave me enough tools to get a Ubuntu disk made (
how do you access the CDROM in linux again!?!?!?!?!) booted that and
the very next day my cable cut me off. It's a fairly bare installation
with out web.

In the mean time, I've borrowed a few books on the subject from the
library and I hope to be a pretty Penguin pretty soon.

God - the universal spirit ( insert your favorite diety here ) seems
to be trying to tell me that my computer and inter-next web
connections are not going to be reliable or some such. The tea is
still too cloudy to read. It is quite possible that the Ultimate Power
That Is has something in-store for me to do. Like everything else,
I'll have to prob'ly step in it to find it.

My wife has started to put applications for new positions around. For
the first time in years, I feel like I might could work somewhere
outside of the house now. I can go about 4 hours with out rest or
falling over dizzy now. This is very exciting for me. Much more then
having a web connection. If anybody knows of a good business to start
in the home, I could try that.

If I had my dreams...
I'd get that Charles Childers' RetroForth10, Charles, a few others,
and begin to develop Forth software that will run on Everything!
Everything? Everything. PDA's, Mac's, X86 windows or linux, phones....
Everything.

In the past I had developed an organizer that I call UMN-FOLENDAR (
read as hUMaN Fol-e (folly) Ndar( end-er) ). It has developed over the
years into a full blown product at this point and I'd like to
incorporate it into RetroForth and then run on EVERYTHING!

Life. Get in the game, baby!
Ray

On Sun, Sep 14, 2008 at 12:36 AM, Nick Maroudas
<alice@...> wrote:

> Here is another snippet on PCI details - from a
> tutorial
> that Ray and I are working on.
>
> A Tutorial on the PCI block 46
> ___________________{{_________
>
> The pci bus is the one that most other PCI devices hang
> from:  graphics, souncard, ethernet, usb, etc.  The PCI
> ADDRESS system is a bit confusing at first, but Chuck's
> code is elegantly simple.  Also, he has set it out
> better in his original CF of 2001 than in his later
> release of 2005.  Accordingly, we shall start with
> block 46 of CF01 and show how this explains some things
> in CF05.
>
> Firstly, to address any pci device, one has to WRITE
> its
> REGISTER ADDRESS into pci bus port  CF8  then  R/W data
> to/from that device register via pci bus port  CFC
>
> By register address we mean the address (on the bus) of
> any one of the 64 (or 256?) registers which belong to
> (are bound to) a particular pci device.  So Chuck, in
> CF01, defines the word  ADD  (for pci ADDress)
>
>            : ADD  CF8 a!  CFC a! ;
>
> which loads the COLORFORTH address register (a!) with
> the PCI bus addresses  cf8  and  cfc.
>
> Now suppose we wish to query one of a particular
> device's registers (say the one at regaddr) and read
> its data.  CF01 has the word  Q  (for Query); it adds a
> 1 to the msb of regadr then puts the resultant 4byte
> regadr into cf8 and fetches the 4byte regdata from cfc
>
>        regaddr-- : Q  80000000 +  ADD 4@ ;  --regdata
>
> Now, as a dangerous tutorial exercise, we can define
> our own word  P  to write our data to a device register
>
> regdata regadr--  : P  80000000 +  ADD 4! ;
>
> Now that we know about CFO1, we can appreciate what is
> happening on block 46 of CF05.  Firstly, regaddr has
> been redefined as a 4byte address 8regaddr so its msb
> is already set.  Accordingly Q has been redefined as
> PCI  which does the same query job
>
>        8regaddr--  <PCI>   --regdata
>
> But where is this new word  PCI  defined? Unfortunately
> not in block 46; it must have been written somewhere
> else in assembly code - a retrograde step from CF01.
> On the other hand CF05 has a new word  PCI!  which does
> the same put job as our  P  above
>
>   regdata 8regaddr--  : PCI!  pci drop 4! ;
>
> The reason why PCI is predefined in assembly in CF05
> might be that CF05 begins with a new block 20 for USB
> which needs PCI - but CF words for PCI will only come
> later, in block 46.
>
> Incidentally the word "k" in CF05 46, which is supposed
> to find
> all the PCI devices, does not find the USB controller
> on
> my new
> Intel board.  This is because CF05 has been set to
> search in steps
> of 800h (like CF01); I soon found this USB controller
> by
> searching
> upwards in steps of 200, and adjusted the address "USB"
> in block
> 46 accordingly.  But there was no difficulty with
> finding the AGP
> video card on my old ASUS P2 with "k", and its
> registers
> with "ok" after putting the right address into the
> variable "AGP".  Nor was there much problem adjusting
> for the nVidia Force video card in my new Intel board.
> Once the address had been found (by Linux) I added the
> following word to block 30:
>
>   : display 40000000 3e8 ! ;  display
>
> I guess CF address 3E8 must hold the display address, in
> Josh's CF05 image that I use.
>
> Hope it helps - anyway, got that off my chest,
>
> Nick
>
>
> Quoting Jason Kemp <jason.kemp@...>:
>
>>... " Good morning all,
>>... "
>>... " I am trying to understand a little about how the
>>... " AGP works.  How are the
>>... " AGP memory addresses determined?  0x0f0000000 is
>>... " for a fujitsu,
>>... " 0xE8000000 seems to work on my ATI with Josh
>>... " Grams's 2005 source. Can
>>... " anyone please point me to a datasheet or article
>>... " that explains AGP
>>... " configuration, or is this more a BIOS set-up
>>... " thing?  It appears that ATI
>>... " don't give away any technical info.  I've found
>>... "
>>... "
> http://download.intel.com/design/chipsets/datashts/25302704.pdf
>>... " but this
>>... " doesn't shed much light (may be I have to spend
>>... " more time on that though?)
>>... "
>>... " Thanks,
>>... " Jason
>>... "
>>... "
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: colorforth-unsubscribe@...
> For additional commands, e-mail: colorforth-help@...
> Main web page - http://www.colorforth.com
>
>



--
Raymond St. Marie ii,
public E-mail Ray.stmarie@...
a quickstart guide http://colorforthray.info
Community Blog http://colorForth.net
Community Wiki http://ForthWorks.com/c4th

---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@...
For additional commands, e-mail: colorforth-help@...
Main web page - http://www.colorforth.com


Re: Where to find AGP details

by Jason Kemp-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Nick,

Thanks for that.  Sorry for not replying sooner but I've been off on my
summer hols; caravan in sunny Devon (I think we managed to get the only
week of sun Britain's had this year).

Jason

Nick Maroudas said the following on 14/09/2008 07:36:

> Here is another snippet on PCI details - from a
> tutorial
> that Ray and I are working on.
>
> A Tutorial on the PCI block 46
> ___________________{{_________
>
> The pci bus is the one that most other PCI devices hang
> from:  graphics, souncard, ethernet, usb, etc.  The PCI
> ADDRESS system is a bit confusing at first, but Chuck's
> code is elegantly simple.  Also, he has set it out
> better in his original CF of 2001 than in his later
> release of 2005.  Accordingly, we shall start with
> block 46 of CF01 and show how this explains some things
> in CF05.    
>
> Firstly, to address any pci device, one has to WRITE
> its
> REGISTER ADDRESS into pci bus port  CF8  then  R/W data
> to/from that device register via pci bus port  CFC
>
> By register address we mean the address (on the bus) of
> any one of the 64 (or 256?) registers which belong to
> (are bound to) a particular pci device.  So Chuck, in
> CF01, defines the word  ADD  (for pci ADDress)
>
>             : ADD  CF8 a!  CFC a! ;  
>
> which loads the COLORFORTH address register (a!) with
> the PCI bus addresses  cf8  and  cfc.
>    
> Now suppose we wish to query one of a particular
> device's registers (say the one at regaddr) and read
> its data.  CF01 has the word  Q  (for Query); it adds a
> 1 to the msb of regadr then puts the resultant 4byte
> regadr into cf8 and fetches the 4byte regdata from cfc
>
>         regaddr-- : Q  80000000 +  ADD 4@ ;  --regdata
>
> Now, as a dangerous tutorial exercise, we can define
> our own word  P  to write our data to a device register
>
> regdata regadr--  : P  80000000 +  ADD 4! ;  
>  
> Now that we know about CFO1, we can appreciate what is
> happening on block 46 of CF05.  Firstly, regaddr has
> been redefined as a 4byte address 8regaddr so its msb
> is already set.  Accordingly Q has been redefined as
> PCI  which does the same query job
>
>         8regaddr--  <PCI>   --regdata
>
> But where is this new word  PCI  defined? Unfortunately
> not in block 46; it must have been written somewhere
> else in assembly code - a retrograde step from CF01.
> On the other hand CF05 has a new word  PCI!  which does
> the same put job as our  P  above
>
>    regdata 8regaddr--  : PCI!  pci drop 4! ;    
>
> The reason why PCI is predefined in assembly in CF05
> might be that CF05 begins with a new block 20 for USB
> which needs PCI - but CF words for PCI will only come
> later, in block 46.
>
> Incidentally the word "k" in CF05 46, which is supposed
> to find
> all the PCI devices, does not find the USB controller
> on
> my new
> Intel board.  This is because CF05 has been set to
> search in steps
> of 800h (like CF01); I soon found this USB controller
> by
> searching
> upwards in steps of 200, and adjusted the address "USB"
> in block
> 46 accordingly.  But there was no difficulty with
> finding the AGP
> video card on my old ASUS P2 with "k", and its
> registers
> with "ok" after putting the right address into the
> variable "AGP".  Nor was there much problem adjusting
> for the nVidia Force video card in my new Intel board.
> Once the address had been found (by Linux) I added the
> following word to block 30:  
>
>    : display 40000000 3e8 ! ;  display
>
> I guess CF address 3E8 must hold the display address, in
> Josh's CF05 image that I use.
>
> Hope it helps - anyway, got that off my chest,
>
> Nick
>
>
> Quoting Jason Kemp <jason.kemp@...>:
>
>  
>> ... " Good morning all,
>> ... "
>> ... " I am trying to understand a little about how the
>> ... " AGP works.  How are the
>> ... " AGP memory addresses determined?  0x0f0000000 is
>> ... " for a fujitsu,
>> ... " 0xE8000000 seems to work on my ATI with Josh
>> ... " Grams's 2005 source. Can
>> ... " anyone please point me to a datasheet or article
>> ... " that explains AGP
>> ... " configuration, or is this more a BIOS set-up
>> ... " thing?  It appears that ATI
>> ... " don't give away any technical info.  I've found
>> ... "
>> ... "
>>    
> http://download.intel.com/design/chipsets/datashts/25302704.pdf
>  
>> ... " but this
>> ... " doesn't shed much light (may be I have to spend
>> ... " more time on that though?)
>> ... "
>> ... " Thanks,
>> ... " Jason
>> ... "
>> ... "
>>    
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: colorforth-unsubscribe@...
> For additional commands, e-mail: colorforth-help@...
> Main web page - http://www.colorforth.com
>
>
>
>  


---------------------------------------------------------------------
To unsubscribe, e-mail: colorforth-unsubscribe@...
For additional commands, e-mail: colorforth-help@...
Main web page - http://www.colorforth.com