S3 오래된 비디오 카드의 VBIOS를 열어 검정색을 진하게 만든 열정가
비트스 앤 볼츠 유튜브 채널이 S3 Virge DX 4MB 그래픽 카드에서 검은색이 순수한 검정이 아니라 어두운 회색으로 표시되는 것을 발견했습니다. 이는 제조사의 의도적인 결정—“검정 레벨 상승”(pedestal bit)으로, NTSC 표준의 CRT 모니터에서 이미지를 부드럽게 보이도록 하기 위한 것이었습니다. 영상 제작자는 VBIOS를 수정해 진짜 검정을 되돌릴 수 있었습니다.
1. 무슨 일이 있었나요?
- S3 Virge DX는 “상승된” 검정 레벨을 사용했습니다:
- BIOS에서 색은 `0x3F`로 설정되었습니다.
- 비트를 0으로 리셋하면 `0x1F`가 되어 이미지가 더 어두워졌습니다.
- 이는 오래된 모니터에서 어두운 영역이 “희미해지지 않도록” 특별히 설계되었습니다.
2. 제작자가 문제를 어떻게 찾았나요?
1) 준비
- 이미 비디오 카드 작업 경험이 있었고 커뮤니티 토론을 읽었습니다.
- 디버거를 열어 레지스터 값을 실시간으로 확인했습니다.
2) 비트 탐색
- 대상 주소를 추적하며 Windows 계산기를 사용해 16진수를 이진수로 변환했습니다.
- 발견된 비트는 `0x3C4` 주소에 있었습니다.
- 값이 0으로 바뀌면 배경이 검정색이 되었습니다.
3) 영향 확인
- 원래 값을 복원해 8비트 중 하나가 검정 레벨 상승을 담당한다는 것을 확인했습니다.
- 어떤 비트인지 제외법으로 파악했습니다.
3. VBIOS 편집
1) 내보내기 및 수정
- VBIOS를 파일로 추출하고 수동으로 변경했습니다.
- 어셈블리 코드를 분석해 두 개의 일치 항목이 필요한 매개변수를 가리켰습니다.
2) 기록 변경
- `0x20`을 `0x00`으로 바꾸면 검정 레벨 상승이 해제됩니다.
- 변경 후 VBIOS 체크섬을 재계산했습니다:
- 이전 체크섬 = `0x77`
- 새 체크섬 = `0x97`
3) 다시 기록
- 수정된 BIOS를 비디오 카드 칩에 업로드해 원본을 교체했습니다.
4) 결과
펌프 후 첫 부팅에서 검정색이 실제 검정으로 변했으며, 어두운 회색 톤이 사라졌습니다. 이는 버그가 아니라 제조사의 의도적인 해결책임을 증명합니다.
요약:
- 문제: S3 Virge DX의 인위적 검정 레벨 상승.
- 해결법: VBIOS를 수정해 비트와 체크섬을 고침.
- 결론: 펌프 후 화면이 더 자연스럽게 보입니다.
댓글 (0)
의견을 남겨 주세요. 예의를 지키고 주제에서 벗어나지 말아 주세요.
댓글을 남기려면 로그인