Writing Video Card Drivers In BeOS.
A Thesis By:
Rudolf Cornelissen
part-time student
06 June 2003
email: rag.cornelissen@inter.nl.net
Table Of Contents
- Introduction
- Problem Description
- Thesis
- About The Author
- About BeOS
- About Video Card Drivers
- BeOS API Classes For Video Card Drivers
- BScreen (Interface Kit)
- BWindowsScreen (Game Kit)
- BDirectWindows (Game Kit)
- Classes For Hardware Overlay: BBitmap (Interface Kit)
- Classes For Hardware Overlay: BView (Interface Kit)
- Conclusion
- Kernel Driver
- Interface To The OS
- init_hardware()
- init_driver()
- publish_devices()
- uninit_driver()
- find_device()
- Interface To The User
- open_hook()
- close_hook()
- free_hook()
- control_hook()
- read_hook()
- write_hook()
- Conclusion
- Accelerant
- The Hooks Of The Accelerant
- INIT_ACCELERANT
- CLONE_ACCELERANT
- UNINIT_ACCELERANT
- ACCELERANT_RETRACE_SEMAPHORE
- ACCELERANT_MODE_COUNT &
GET_MODE_LIST
- PROPOSE_DISPLAY_MODE
- SET_DISPLAY_MODE
- GET_FRAME_BUFFER_CONFIG
- GET_PIXEL_CLOCK_LIMITS
- MOVE_DISPLAY
- SET_INDEXED_COLOR
- GET_TIMING_CONSTRAINTS
- SET_CURSOR_SHAPE
- MOVE_CURSOR
- 2D Accelerant Functions
- Hardware Overlay Functions
- Conclusion
- Flags
- Flags For User Overlay
- B_BITMAP_WILL_OVERLAY
- B_BITMAP_RESERVE_OVERLAY_CHANNEL
- B_OVERLAY_TRANSFER_CHANNEL
- B_OVERLAY_MIRROR
- B_OVERLAY_FILTER_HORIZONTAL
- B_OVERLAY_FILTER_VERTICAL
- Flags For Mode Setup: Mode Flags
- B_SUPPORTS_OVERLAYS
- B_HARDWARE_CURSOR
- B_IO_FB_NA
- B_PARALLEL_ACCESS
- B_8_BIT_DAC
- B_DPMS
- B_SCROLL
- Flags For Mode Setup: Mode Timing Flags
- B_BLANK_PEDESTAL
- B_TIMING_INTERLACED
- B_SYNC_ON_GREEN
- B_POSITIVE_HSYNC &
B_POSITIVE_VSYNC
- Conclusion
- Writing The Driver
- Action Plan
- Preparations
- Step 1: VBE2 (Vesa Mode)
Activation
- Step 2: Non-Active Driver
Installation
- Step 3: Hardware Cursor
Building
- Step 4: Setting The Frame Buffer
Start Address
- Step 5: Setting The Frame Buffer
Pitch
- Step 6: Setting The Color
Depth
- Step 7: Setting The Color
Pallete
- Step 8: DPMS
Building
- Step 9: Setting The Refresh
Rate
- Step 10: Setting The Monitor
Timing
- Step 11: Switching On
'Enhanced Mode'
- Step 12: Setting The
Acceleration
- Step 13: Building Hardware
Overlay
- Step 14: Cold Start Of The
Video Card
- Testing The Driver
- Kernel Driver
- Accelerant
- Stability
- Conclusion
- Conclusion
Appendix
- Sources Of Information
- The Manufacturer
- Linux
- The Internet
- Testing For Specifications
- Reverse Engineering
- Glossary
- References
Interested in other languages? Head back to the main project overview.