Discussion:
CTPCI and ATI Radeon
(too old to reply)
unknown
2007-02-15 22:56:44 UTC
Permalink
Seeing that Didier is working on an ATI Radeon driver for the CT-PCI project
I went and bought one to try it in the Milan.

http://perso.orange.fr/didierm/ct60/ctpci-e.htm

Sadly it doesn't boot. Presumably the code that bootstraps the card doesn't
work. The Milan seems to boot, based on the disc activity that I can see.

Is it the bootblock code that starts the gfx card ?

Peter
Michael Schwingen
2007-02-16 08:22:56 UTC
Permalink
Post by unknown
Sadly it doesn't boot. Presumably the code that bootstraps the card doesn't
work. The Milan seems to boot, based on the disc activity that I can see.
Is it the bootblock code that starts the gfx card ?
Yes. The bootblock has to bring up the card at least in textmode and switch
to VGA mono before starting TOS. There is a (limited) X86 emulator that can
emulate the card BIOS, but that may need fixing for newer BIOSses.

cu
Michael
--
Some people have no respect of age unless it is bottled.
Didier Méquignon
2007-02-16 16:37:41 UTC
Permalink
Post by Michael Schwingen
Post by unknown
Sadly it doesn't boot. Presumably the code that bootstraps the card doesn't
work. The Milan seems to boot, based on the disc activity that I can see.
Is it the bootblock code that starts the gfx card ?
Yes. The bootblock has to bring up the card at least in textmode and switch
to VGA mono before starting TOS. There is a (limited) X86 emulator that can
emulate the card BIOS, but that may need fixing for newer BIOSses.
I know nothing about the Milan, but the TOS404 works on the M5484LITE
Coldfire board so nothing is impossible, if the flash size is 512 KB I
can create a 3rd target.
The TOS boot for example in 1280 x 1024 x 16M (boot and desktop) on a
CompactFlash card. A 2nd life for the Milan, just an idea... Peter you
have a 060 on your Milan ?
The PCI bridge isn't a problem the PLX 9054 is compatible with the PLX
9080, but I need some sources for insert some patchs like serial port,
keyboard and mouse, disks, there are an IKBD on the Milan ? Else it's
impossible without lost time, without hardware to create another target.
Maybe another problem the PCI drivers and TOS patches are GPL.

Regards,

Didier.
--
Didier MEQUIGNON Aniplayer download: http://aniplay.atari.org
CT60 package download: http://ct60conf.atari.org
CTPCI: http://ctpci.atari.org
Didier Méquignon
2007-02-16 16:39:05 UTC
Permalink
Post by Didier Méquignon
Post by Michael Schwingen
Post by unknown
Sadly it doesn't boot. Presumably the code that bootstraps the card doesn't
work. The Milan seems to boot, based on the disc activity that I can see.
Is it the bootblock code that starts the gfx card ?
Yes. The bootblock has to bring up the card at least in textmode and switch
to VGA mono before starting TOS. There is a (limited) X86 emulator that can
emulate the card BIOS, but that may need fixing for newer BIOSses.
I know nothing about the Milan, but the TOS404 works on the M5484LITE
Coldfire board so nothing is impossible, if the flash size is 512 KB I
can create a 3rd target.
Oh sorry not 512, 1MB !
Post by Didier Méquignon
The TOS boot for example in 1280 x 1024 x 16M (boot and desktop) on a
CompactFlash card. A 2nd life for the Milan, just an idea... Peter you
have a 060 on your Milan ?
The PCI bridge isn't a problem the PLX 9054 is compatible with the PLX
9080, but I need some sources for insert some patchs like serial port,
keyboard and mouse, disks, there are an IKBD on the Milan ? Else it's
impossible without lost time, without hardware to create another target.
Maybe another problem the PCI drivers and TOS patches are GPL.
Regards,
Didier.
--
Didier MEQUIGNON Aniplayer download: http://aniplay.atari.org
CT60 package download: http://ct60conf.atari.org
CTPCI: http://ctpci.atari.org
Michael Schwingen
2007-02-16 21:59:16 UTC
Permalink
Post by Didier Méquignon
I know nothing about the Milan, but the TOS404 works on the M5484LITE
Coldfire board so nothing is impossible, if the flash size is 512 KB I
can create a 3rd target.
The Milan has 512KB Flash - part of that is used by bootblock and modular
drivers (eg. for PCI SCSI cards), but since the TOS is compressed, there is
plenty of space left.
Post by Didier Méquignon
The PCI bridge isn't a problem the PLX 9054 is compatible with the PLX
9080, but I need some sources for insert some patchs like serial port,
keyboard and mouse, disks, there are an IKBD on the Milan ? Else it's
impossible without lost time, without hardware to create another target.
Maybe another problem the PCI drivers and TOS patches are GPL.
GPL would definitely be a problem - I doubt that you can legally incorporate
GPL code into TOS on any machine, because TOS is not GPL and not
GPL-compatible. Distributing patches only moves that problem to the user.

However, even without the licensing issues, it would not be that easy: the
Milan uses a heavily modified TOS which integrates code for the Milan
hardware, PCI BIOS, hardware emulation etc. - I doubt any patches against a
binary TOS 4.04 would apply easily.

However, i do not see why TOS patches should be needed at all: the graphics
driver can be loaded from the auto folder (or as a pre-auto flash resident
module on the Milan). That only requires basic standard VGA init code in the
bootblock - does ATI provide documentation on that part that is usually
handled by the X86 BIOS ROM?

cu
Michael
--
Some people have no respect of age unless it is bottled.
Didier Méquignon
2007-02-17 10:10:44 UTC
Permalink
Post by Michael Schwingen
Post by Didier Méquignon
I know nothing about the Milan, but the TOS404 works on the M5484LITE
Coldfire board so nothing is impossible, if the flash size is 512 KB I
can create a 3rd target.
The Milan has 512KB Flash - part of that is used by bootblock and modular
drivers (eg. for PCI SCSI cards), but since the TOS is compressed, there is
plenty of space left.
I use also an LZ77 compression for the PCI part (above 0xEA0000), I
think also use space between 0xFC0000 and 0xFF0000 for get free space
for USB drivers.
Post by Michael Schwingen
Post by Didier Méquignon
The PCI bridge isn't a problem the PLX 9054 is compatible with the PLX
9080, but I need some sources for insert some patchs like serial port,
keyboard and mouse, disks, there are an IKBD on the Milan ? Else it's
impossible without lost time, without hardware to create another target.
Maybe another problem the PCI drivers and TOS patches are GPL.
GPL would definitely be a problem - I doubt that you can legally incorporate
GPL code into TOS on any machine, because TOS is not GPL and not
GPL-compatible. Distributing patches only moves that problem to the user.
However, even without the licensing issues, it would not be that easy: the
Milan uses a heavily modified TOS which integrates code for the Milan
hardware, PCI BIOS, hardware emulation etc. - I doubt any patches against a
binary TOS 4.04 would apply easily.
With sources of specific hardware, it's easy, else without sources and
hardware for test it, it's just impossible. I have worked on M5484LITE
board patches, on month before get the card, and 2 months for get a TOS
working with the Radeon.
Post by Michael Schwingen
However, i do not see why TOS patches should be needed at all: the graphics
driver can be loaded from the auto folder (or as a pre-auto flash resident
module on the Milan). That only requires basic standard VGA init code in the
bootblock - does ATI provide documentation on that part that is usually
handled by the X86 BIOS ROM?
I don't know, actually the X86EMU used works fine for start the VGA BIOS
(91KB), but I have tried INT 10 without success (black screen), it's not
important for me because the init of the card is finished and the radeon
driver works fine (256 / 65K / 16M), the driver start before the
Setscreen 1st call. The VDI rebuild in assembly language in ROM is also
faster than fVDI because direct calls are used for replace generic fVDI
calls, something than 10 times faster on blitting and text functions.
And the BIOS part is not inside the FVDI.SYS drivers, so it's impossible
to use new Setscreen modes, and other functions added like VIDIX
(actually fulscreen with the scaler for Aniplayer with a YUV or RVB
source), or TV port on the Radeon AIW (this lastest part isn't
finished). Sure it's always possible to work on a TSR program started
before fVDI.

Regards,

Didier.
--
Didier MEQUIGNON Aniplayer download: http://aniplay.atari.org
CT60 package download: http://ct60conf.atari.org
CTPCI: http://ctpci.atari.org
unknown
2007-02-18 18:32:06 UTC
Permalink
Let me see if I understand all this...

Didier, your Radeon code is in a modified TOS ?
The Milan uses a bootblock routine to get into VGA mode and then starts
the ATIDRV.PRG from the AUTO folder to provide the full driver.

The current Milan bootblock doesn't start the Radeon in VGA mode.
What documentation is there about booting the Radeon ? Is it very
different to booting the Rage ?

Other thoughts

Future version of FreeMint may not rely on TOS to boot.
Could EmuTOS be patched to work on the Milan to avoid licensing issues ?

Anyone wamt to borrow a Radeon card ?

Regards,

Peter
Didier Méquignon
2007-02-18 19:07:06 UTC
Permalink
Post by unknown
Let me see if I understand all this...
Didier, your Radeon code is in a modified TOS ?
Yes but it's possible tu use the VDI part (radeon.sys) with fvdi.
Post by unknown
The Milan uses a bootblock routine to get into VGA mode and then starts
the ATIDRV.PRG from the AUTO folder to provide the full driver.
Actually with X86EMU I run the VGABIOS of the Radeon. I have tried
without succes to set a monochrome screen with INT 10, but it's not
important on the CT60 because the radeon driver works before the boot
screen, the XBIOS Setscreen has new modes until 1600 x 1200 x 16M (with
virtual screen or not).
Post by unknown
The current Milan bootblock doesn't start the Radeon in VGA mode.
What documentation is there about booting the Radeon ? Is it very
different to booting the Rage ?
You need to run the VGA bios with a good X86 emulator. Latest VGA BIOS
has 80386 code.
Post by unknown
Other thoughts
Future version of FreeMint may not rely on TOS to boot.
Could EmuTOS be patched to work on the Milan to avoid licensing issues ?
Humm, not by me... For you I have just my solution (a 3rd target), but I
need sources for specific Milan hardware.
Emutos is a sort of alpha TOS, on the Coldfire board I use his BDOS part
and for exmple it's impossible to rename a folder. For me Emutos is too
light for run Falcon and Milan machines, it's just a tool for Aranym.
Post by unknown
Anyone wamt to borrow a Radeon card ?
Regards,

Didier.
--
Didier MEQUIGNON Aniplayer download: http://aniplay.atari.org
CT60 package download: http://ct60conf.atari.org
CTPCI: http://ctpci.atari.org
Michael Schwingen
2007-02-19 08:11:37 UTC
Permalink
Post by Didier Méquignon
Humm, not by me... For you I have just my solution (a 3rd target), but I
need sources for specific Milan hardware.
That would be lots of code which I can not disclose.

cu
Michael
--
Some people have no respect of age unless it is bottled.
unknown
2007-02-24 17:18:55 UTC
Permalink
Post by Didier Méquignon
Post by unknown
Let me see if I understand all this...
Didier, your Radeon code is in a modified TOS ?
Yes but it's possible tu use the VDI part (radeon.sys) with fvdi.
Post by unknown
The Milan uses a bootblock routine to get into VGA mode and then starts
the ATIDRV.PRG from the AUTO folder to provide the full driver.
Actually with X86EMU I run the VGABIOS of the Radeon. I have tried
without succes to set a monochrome screen with INT 10, but it's not
important on the CT60 because the radeon driver works before the boot
screen, the XBIOS Setscreen has new modes until 1600 x 1200 x 16M (with
virtual screen or not).
Would the X86emu code be of any use to the Milan TOS ? If it has better
80386 emulation then it might start the Radeon.

I am not familiar with X86emu but I see that others are using it to
start Radeon cards:

http://www.mail-archive.com/***@xfree86.org/msg07860.html

Regards,

Peter
Didier Méquignon
2007-02-24 17:46:08 UTC
Permalink
Post by unknown
Post by Didier Méquignon
Post by unknown
Let me see if I understand all this...
Didier, your Radeon code is in a modified TOS ?
Yes but it's possible tu use the VDI part (radeon.sys) with fvdi.
Post by unknown
The Milan uses a bootblock routine to get into VGA mode and then starts
the ATIDRV.PRG from the AUTO folder to provide the full driver.
Actually with X86EMU I run the VGABIOS of the Radeon. I have tried
without succes to set a monochrome screen with INT 10, but it's not
important on the CT60 because the radeon driver works before the boot
screen, the XBIOS Setscreen has new modes until 1600 x 1200 x 16M (with
virtual screen or not).
Would the X86emu code be of any use to the Milan TOS ? If it has better
80386 emulation then it might start the Radeon.
Yes but maybe his code size is too big for the bootblock.
Post by unknown
I am not familiar with X86emu but I see that others are using it to
I remember to fix problems with big endian. The VGA BIOS works until the
end (no crashes, the end is a halt code because the caller is 68K).

Regards,

Didier.
--
Didier MEQUIGNON Aniplayer download: http://aniplay.atari.org
CT60 package download: http://ct60conf.atari.org
CTPCI: http://ctpci.atari.org
Michael Schwingen
2007-02-24 19:22:20 UTC
Permalink
Post by unknown
Would the X86emu code be of any use to the Milan TOS ? If it has better
80386 emulation then it might start the Radeon.
That might be used - If I google'd right, x86emu has a BSD-style license.

That leaves only the matter of space[1]: the current X86 emulator in the
Milan bootblock is below 32k of 68k assembler, and there is not much space
left.

cu
Michael
[1] plus the time to really implement this.
--
Some people have no respect of age unless it is bottled.
Ekkehard Flessa
2007-02-24 20:31:50 UTC
Permalink
Hi Michael!


MS>That leaves only the matter of space[1]: the current X86 emulator in
MS>the Milan bootblock is below 32k of 68k assembler, and there is not
MS>much space left.

Why would that be a problem? Couldn't you put that code somewhere
else in the flash? Or is it impossible to access the flash from
within bootblock code?


With best regards
Ekkehard

Loading...