gbowne1 / gbowne1/ClassicOS-64bit

[Bug] Framebuffer type and other frame buffer issues

Open
#2 0 comments 0 reactions 0 assignees View on GitHub
bug enhancement help wanted
Dominant language
Assembly
Stars
3
Forks
0
PR merge metrics
No merged PRs in 30d

Description

If the system uses a framebuffer (not VGA text mode), the error message may not be visible. Consider checking the framebuffer type earlier or using a fallback display method

The bootloader provides a graphical framebuffer (type 0) or indexed color (type 2), the function returns an error and halts. This is restrictive, as modern systems may use graphical modes.

The framebuffer_addr is assumed to be accessible directly. Ensure the address is mapped in the page tables (handled in setup_long_mode)

The kernel kmain.c assumes a text-mode framebuffer (type 1) and falls back to VGA (0xb8000) if unavailable. This is problematic for modern systems with graphical framebuffers or no VGA support. Recommendation: Add support for graphical framebuffers or detect VGA availability dynamically.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading kmain.c to trace the type-1 framebuffer assumption and VGA fallback, then inspect setup_long_mode for framebuffer address mapping. Compare the bootloader's graphical, indexed-color, and text framebuffer cases; the issue is complete only when the intended non-text display behavior and fallback path are defined and verified.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
computer-graphics, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.