I like to write graphic-card.chip file of my own, how do I start? I guess it’s a library, so I guess can generate it with idltool. is there a xml template I can use to get started?
(NutsAboutAmiga)
Basilisk II for AmigaOS4 AmigaInputAnywhere Excalibur and other tools and apps.
People are dying. Entire ecosystems are collapsing. We are in the beginning of a mass extinction. And all you can talk about is money and fairytales of eternal economic growth. How dare you! – Greta Thunberg
People are dying. Entire ecosystems are collapsing. We are in the beginning of a mass extinction. And all you can talk about is money and fairytales of eternal economic growth. How dare you! – Greta Thunberg
I like to write graphic-card.chip file of my own, how do I start?
Details on how to write a Picasso96 graphics driver are top secret, so you'll need to contact Hyperion and beg them to give you access to the files you need. This will involve signing an NDA.
Alternatively, you could have a look in the AROS source code at /arch/m68k-amiga/hidd/p96gfx/. That's AROS' OS 3.x Picasso96 driver wrapper (or whatever it's called). It seems to work at the *.card level, but does show some of the driver interface. Bear in mind that the code is for the pre-OS4 Picasso96, so it's missing newer features like compositing and DDC. Still, it might get you started while you wait for Hyperion to give you access.
When I started with graphics drivers, I wrote a test program that hit the graphics hardware directly. I asked for the driver developer docs once I had proven that I could get a display output.
Sorry this isn't the answer you wanted. I have no idea why graphics driver APIs are so secret in the AmigaOS world. AFAIK, the MorphOS graphics DDK is also not readily available. This is something I'd like to see change.
I have no idea why graphics driver APIs are so secret in the AmigaOS world
Probably because the involved parties had to pay for the sources and don't want their money to be shared
People are dying. Entire ecosystems are collapsing. We are in the beginning of a mass extinction. And all you can talk about is money and fairytales of eternal economic growth. How dare you! – Greta Thunberg
Probably because the involved parties had to pay for the sources and don't want their money to be shared
Maybe, but it's counter-productive. Doing so puts a barrier between those who want to try writing a driver and the files they need to do so.
If the AHI developers had that attitude, then we probably wouldn't have the HDA audio driver, because its author isn't a member of the exclusive insiders club that has access to all the documentation. He could check out the documentation and examples, tinker with it, and then decide to give it a shot without needing to jump through any hoops.
Looks like you're making good progress. The documentation Georg linked to gives the function prototypes for the struct BoardInfo function pointers which you currently have set to uint32.
Quote:
yes some function not documented here, not sure that’s a problem.. i might need needed to write board/card drivers. if they were documented however...
If you are asking if I want to take on that work. I have no idea about the amount of work, I have not looked at the code, I don’t own the card, and it be really difficult as the first driver project.
Many years ago I looked at some Linux drivers for a SCSI controller, and they do not have anything in common with the Amiga API, you need rearrange the code, you need good understanding what etch part does, some drivers contain support for multiple different models and chips.
(NutsAboutAmiga)
Basilisk II for AmigaOS4 AmigaInputAnywhere Excalibur and other tools and apps.