English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   request.UAE Wishlist (https://eab.abime.net/forumdisplay.php?f=56)
-   -   Hardware RTG board emulation (https://eab.abime.net/showthread.php?t=67879)

Toni Wilen 13 February 2013 20:41

Hardware RTG board emulation
 
Last missing feature for nice looking non-AOS emulation (NetBSD, Linux etc..) is hardware level RTG board emulation.

Any suggestions for emulated board model? It must have:

a) Full GPL compatible driver available for at least one OS.
b) Has drivers for all operating systems (At least Picasso96+AOS, NetBSD, Linux, Amix) Can be closed source.
c) Is not too complex to emulate. (=not too flexible blitter, no useless 3D support)
d) Used VGA chip is already emulated by Dosbox or other GPL compatible virtual machine/emulator.
e) Must support all bit depths: 8/15 or 16/24 or 32 bit.

Max resolution or VRAM support is not that important.

mark_k 13 February 2013 21:00

Any of the Cirrus Logic-based cards would be a good choice; Picasso II/II+/IV, Piccolo etc. They were some of the most popular Amiga RTG cards so a large proportion of the RTG-card-owning population would have had one. I have a Piccolo in my A2000. Supported by Picasso96 and CyberGraphX. They have good support in NetBSD/Linux so no problem getting GPL or BSD-licensed driver source, and comprehensive chip PDF databooks are available. Dosbox and Bochs can emulate some types of Cirrus card. I think VMWare can too (not open source of course).

I don't think there's an AMIX driver for any of those cards though. And writing A2410 emulation - the only RTG card supported by AMIX natively - would be waaaay too hard.

Coming at it from the other side, would it be feasible for a NetBSD developer (say) to write a driver for WinUAE's native RTG card?

cosmicfrog 14 February 2013 00:06

i vote for CyberVision64/3D plz yes I know it has 3d but its S3 from virge and its in dosbox too

pandy71 14 February 2013 11:53

MAME have TMS34010 emulator http://mamedev.org/source/src/emu/cp...010/index.html thus A2410 emulation should be quite simple.

Toni Wilen 14 February 2013 12:04

A2410: No. Practically useless Amix-only board. (I did say it must support Picasso96 and all bit depths) (and MAME has incompatible license)

Apparently there is 3rd party PicassoII/II+ driver for Amix.

PicassoII driver source is also included with Picasso96 driver SDK.

AmigaFriend 14 February 2013 12:27

Cybervision 64 (original non 3D model) is a very well supported model. It's fully supported in Debian, as also in BSD. It has CGX drivers and P96 drivers for Amiga OS side.

Toni Wilen 14 February 2013 13:13

But is it supported in Amix?

I only add support for single board type = it must have driver support for all existing Amiga compatible operating systems.

(Yes, Amix support is required)

AmigaFriend 14 February 2013 13:56

Quote:

Originally Posted by Toni Wilen (Post 868328)
But is it supported in Amix?

I only add support for single board type = it must have driver support for all existing Amiga compatible operating systems.

(Yes, Amix support is required)

I'm afraid I cannot answer that since I've never used Amix. I only can say that Debian and NetBSD worked very well in A4000 + CV64.

Maybe someone can have some knowledge about that. I'll try do dig more info if i can.


EDIT: There is a successful install of a PicassoII+ board in AMIX. All the other VGA boards I came through are very obscure and only work in AMIX, not AmigaOS or other OSes: http://amigaunix.com/tiki-index.php?page=X11PicassoII

mark_k 14 February 2013 15:49

The Cybervision 64 probably couldn't be made to work with Amix. It's a Zorro III-only card and the readme for the third-party Amix graphics card drivers mentions this:
The limitation to ZorroII mode is because the AMIX memeory mapping
system can't deal with ZorroIII boards and the source for the important
parts is not prvided with AMIX... :-(
Looking at the NetBSD driver source, it seems to support all the Cirrus-based cards. Hopefully it would be possible to emulate all the different cards too. That way you could use a Picasso II/II+/Piccolo/Spectrum for Amix, but with NetBSD etc. you could use an emulated Picasso IV or Piccolo SD64. (Those can have 4MB instead of 2MB RAM, so they support higher bit depths. The highest Picasso II/II+ resolutions are only 8-bit.)

Toni Wilen 14 February 2013 15:54

Memory limits or bit depth limits in high resolution modes don't matter. It is more complex to support hardware limits than ignore them in emulation :)

It shouldn't be that difficult to hack existing drivers to ignore hardware limits.

Picasso IV is not acceptable: it is too complex and has boot rom.

mark_k 14 February 2013 17:41

For the CL-GD542x-based cards (Picasso II/II+/Piccolo/Spectum)...
CL-GD542X Preliminary Data Book v7.0 (104 pages)
CL-GD542x Technical Reference Manual (614 pages)

Happy reading. :)

The Piccolo SD64 can have 4MB RAM and it doesn't look like it has a boot ROM. Uses CL-GD5434 chip. Emulating that would probably be less work than modifying existing drivers to work with larger amounts of RAM.

CL-GD543X/4X Preliminary Data Book (95 pages)
I couldn't find the CL-GD543X Technical Reference Manual using a quick Google search, but I might have a copy here somewhere if you need it.

One more thing: The Picasso II and II+ are Zorro II only. The Spectrum, Piccolo and Piccolo SD64 are Zorro II/III.

AmigaFriend 14 February 2013 22:50

Quote:

Originally Posted by mark_k (Post 868416)
One more thing: The Picasso II and II+ are Zorro II only. The Spectrum, Piccolo and Piccolo SD64 are Zorro II/III.

Just a note: AMIX can only deal with Zorro II address space.

mark_k 14 February 2013 23:13

Yes, on a real Amiga 3000/4000 you'd need to jumper a Spectrum/Piccolo/SD64 to Zorro II mode, instead of auto-sensing. If WinUAE emulated any of those you'd need to force the emulated card to Zorro II, in order to use it with Amix. (The existing RTG Zorro II/III option could be used for that.)

strim 15 February 2013 20:46

Quote:

Originally Posted by mark_k (Post 868185)
Coming at it from the other side, would it be feasible for a NetBSD developer (say) to write a driver for WinUAE's native RTG card?

That'd be quite difficult due to how uaegfx driver communicates with this native RTG card. The interface on UAE side would have to be redesigned.

Quote:

Any of the Cirrus Logic-based cards would be a good choice; Picasso II/II+/IV, Piccolo etc.
Agreed. These cards are quite well supported by AmigaOS RTG systems and also by other OSes (NetBSD, Linux, AMIX with 3rd party driver).

Also: Cirrus Technical Reference Manual is sw33t. I couldn't find it before, thanks.

Toni Wilen 15 February 2013 21:10

Quote:

Originally Posted by strim (Post 868718)
That'd be quite difficult due to how uaegfx driver communicates with this native RTG card. The interface on UAE side would have to be redesigned.

I don't think it needs anything else than moving those trap-instructions from UAE boot rom to end of VRAM (last 32k or so is reserved for resolution list and other stuff). UAE Boot ROM is AOS only.

It uses A-traps but because they don't trigger any real exceptions (if it is located in call trap address range), no special handling needed.

But if OS drivers really want IO access only (instead of register based jumps to mysterious non-existing code), it can be done easily: write parameters to reserved memory region, write command code to memory: command executes.

mark_k 15 February 2013 22:02

Apart from the Cirrus chips, another possible candidate for emulation might be a card which uses a Tseng Labs ET4000(/W32) chip. Chip docs are available and I think Dosbox can emulate it.

Tseng Labs ET4000/W32i Graphics Accelerator Data Book (295 pages)
Tseng Labs ET4000/W32p Graphics Accelerator Data Book (279 pages)
ET4000 application notes/schematics (61 pages)
The ET4000 seems to be an earlier chip than the ET4000/W32(i). I'm not sure how it relates to the ET4000/AX.

The ArMax oMniBus uses an ET4000/AX, 1MB RAM. It's actually an ISA card with a board that converts it to the Zorro bus.
The Xpert Services/Village Tronic Domino is another ISA card with adaptor board. Zorro II, uses ET4000. 1MB RAM.
The Xpert Services Merlin uses the ET4000/W32 chip. 2MB or 4MB RAM. Zorro II/III card. According to amiga.resource.cx only 2MB is possible in Zorro II mode. Has Picasso96, EGS and ProBench AmigaOS RTG drivers. Works with NetBSD/OpenBSD and apparently with the third-party Amix driver. I have a Merlin card.

mark_k 17 February 2013 14:07

Going through my archives I found a load of Cirrus Logic chip docs. I'll upload a large archive once I've sorted them out, but in the mean time here are...

Alpine Family CL-GD543X/'4X Technical Reference Manual, Fifth Edition January 1996 (634 pages) multiupload link
CL-GD5446 64-bit VisualMedia Accelerator Technical Reference Manual, November 1996 Second Edition (641 pages) multiupload link

Piccolo SD64 uses CL-GD5434, Picasso IV uses CL-GD5446.

strim 18 February 2013 01:59

Can you upload to some site that doesn't need registration to download files?

Alternatively I create you an account on my server.

mark_k 18 February 2013 10:56

I have added multiupload links (see above) and also uploaded the files to The Zone.

strim 18 February 2013 16:30

Quote:

Originally Posted by mark_k (Post 869289)
I have added multiupload links (see above) and also uploaded the files to The Zone.

Thanks!

Slightly OT: got any other interesting datasheets? :) Maybe you could post the list somewhere...


All times are GMT +2. The time now is 03:28.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.08143 seconds with 11 queries