59 lines
2.1 KiB
Plaintext
59 lines
2.1 KiB
Plaintext
|
|
______ ____ ______ _____ ______
|
|
| ____| | _ \| ____| / / _ \| ____|
|
|
| |__ _ __ ___ ___| |_) | |__ / / |_| | |__
|
|
| __| '__/ _ \/ _ \ _ <| __| / /| _ | __|
|
|
| | | | | __/ __/ |_) | |____ / / | | | | |
|
|
|_| |_| \___|\___|____/|______/_/ |_| |_|_|
|
|
|
|
|
|
Cirrus 54x driver implementation notes.
|
|
|
|
Pattern fills may be improved quite a lot for cards which supports starting
|
|
on different place of pattern than upper left corner (now I always assume
|
|
accelerator can't do that so whenever upper left corner changes I change the
|
|
pattern). I also don't understand the notation of raster operations cirrus
|
|
supports and so SetMix isn't probably implemented properly.
|
|
|
|
Because of lack of precise specification of right input data to functions, some
|
|
of them may be implemented wrong.
|
|
|
|
Optimization with -O3 helps a bit, also port accesses are on RING 3 quite slow
|
|
so checking is the content of registers changed helped quite a bit. I expect
|
|
there might be quite a lot of problem with newer cirruses now, definitely
|
|
should work with 5426,5428,7541 and 7543.
|
|
|
|
***Note: Now also tested with a 5446 (rev A) and modified to work
|
|
(Keir Fraser, email: kaf24@cam.ac.uk)
|
|
I have had some problems with the memory-mapped IO, specifically when the
|
|
registers are mapped to low memory (0xb8000). If you are having problems
|
|
getting the driver to work, you can disable MMIO by uncommenting the
|
|
DISABLE_MMIO line at the top of driver.c. You should also contact me at
|
|
the email address given above to look for a more permanent solution!
|
|
|
|
Supported functions:
|
|
|
|
WaitTillIdle()
|
|
SetMix()
|
|
Set8x8MonoPattern()
|
|
Set8x8ColorPattern()
|
|
Use8x8ColorPattern()
|
|
DrawScan()
|
|
DrawPattScan()
|
|
DrawColorPattScan()
|
|
DrawRect()
|
|
DrawPattRect()
|
|
DrawColorPattRect()
|
|
BitBlt()
|
|
SrcTransBlt()
|
|
SetCursor
|
|
SetCursorPos
|
|
SetCursorColor
|
|
ShowCursor
|
|
SrcTransBltSys()
|
|
BitBltSys()
|
|
PutMonoImage()
|
|
|
|
Author: Michal Mertl (Czech Republic)
|
|
Email: mime@eunet.cz
|