ladybird/Kernel
Edwin Rijkee 8388fe51b5 Kernel: Add a framebuffer driver for 3Dfx Voodoo 3
A bit old but a relatively uncomplicated device capable of outputting
1920x1080 video with 32-bit color. Tested with a Voodoo 3 3000 16MB
PCI card. Resolution switching from DisplaySettings also works.

If the requested mode contains timing information, it is used directly.
Otherwise, display timing values are selected from the EDID. First the
detailed timings are checked, and then standard and established
timings for which there is a matching DMT mode. The driver does not
(yet) read the actual EDID, so the generic EDID in DisplayConnector now
includes a set of common display modes to make this work.

The driver should also be compatible with the Voodoo Banshee, 4 and 5
but I don't have these cards to test this with. The PCI IDs of these
cards are included as a commented line in case someone wants to give it
a try.
2023-10-16 01:25:45 +02:00
..
API LibC+Kernel: Move GPU-related API methods to a LibC header file 2023-09-15 11:05:25 -06:00
Arch Kernel/HID: Add boot option to disable PS2 Mouse 2023-10-15 22:56:30 +02:00
Boot Kernel/HID: Add boot option to disable PS2 Mouse 2023-10-15 22:56:30 +02:00
Bus Kernel: Add a framebuffer driver for 3Dfx Voodoo 3 2023-10-16 01:25:45 +02:00
Devices Kernel: Add a framebuffer driver for 3Dfx Voodoo 3 2023-10-16 01:25:45 +02:00
FileSystem Kernel: Populate stat.st_dev with fsid 2023-10-01 13:34:41 +02:00
Firmware/ACPI Kernel: Overhaul system shutdown procedure 2023-07-15 00:12:01 +02:00
Heap Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Interrupts Kernel/Interrupts: Move PCIIRQHandler => PCI::IRQHandler 2023-09-16 14:04:17 -06:00
Library AK+Kernel: Introduce StdLib function to copy FixedStringBuffer to user 2023-08-25 11:51:52 +02:00
Locking Kernel: Share Processor class (and others) across architectures 2023-10-03 16:08:29 -06:00
Memory Kernel/Memory: Map framebuffer and address space <4GiB 2023-10-03 16:19:03 -06:00
Net Kernel/VirtIO: Ensure proper error propagation in core methods 2023-09-24 19:54:23 -06:00
Prekernel Prekernel: Fix wrong and misleading comment 2023-10-03 16:19:03 -06:00
Security Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
Syscalls Kernel: Share Processor class (and others) across architectures 2023-10-03 16:08:29 -06:00
Tasks Kernel: Add jail semantics to methods iterating over thread lists 2023-09-15 11:06:48 -06:00
Time Everywhere: Remove needless trailing semi-colons after functions 2023-07-08 10:32:56 +01:00
CMakeLists.txt Kernel: Add a framebuffer driver for 3Dfx Voodoo 3 2023-10-16 01:25:45 +02:00
Debug.h.in Kernel: Add a framebuffer driver for 3Dfx Voodoo 3 2023-10-16 01:25:45 +02:00
embedmap.sh Kernel: Make new kernel build process work on macOS 2021-07-15 11:04:30 +02:00
Forward.h Kernel+LibCore+LibC: Split the mount syscall into multiple syscalls 2023-07-02 01:04:51 +02:00
generate-version-file.sh Kernel: Bake version information into the Kernel 2022-10-14 13:45:33 +02:00
kprintf.cpp Kernel: Move TTY-related code to a new subdirectory under Devices 2023-09-09 12:08:59 -06:00
kstdio.h Kernel: Remove includes to LibC stdarg definitions 2023-03-01 19:36:53 -07:00
KSyms.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
KSyms.h Kernel: Add ability to dump backtrace from provided frame pointer 2022-10-01 14:09:01 +02:00
mkmap.sh Kernel: Use the toolchain's nm in mkmap.sh 2021-12-30 18:10:51 +01:00
SanCov.cpp Kernel: Move all tasks-related code to the Tasks subdirectory 2023-06-04 21:32:34 +02:00
Sections.h Kernel: Move all boot-related code to the new Boot subdirectory 2023-06-04 21:32:34 +02:00
UnixTypes.h Kernel: Add support for SA_SIGINFO 2022-03-04 20:07:05 +01:00