먼저 답변 주신것 감사 합니다.
그리고 추가 질의 좀 드립니다.
VESA 확장 바이오스 함수로 화면 전환은 어떻게 구현하는지 힌트좀 주시면 안될까요?
즉
그리고 추가 질의 좀 드립니다.
VESA 확장 바이오스 함수로 화면 전환은 어떻게 구현하는지 힌트좀 주시면 안될까요?
즉
MOV AH, 04FH
MOV AL, 05H
MOV BH, <00H=뱅크선택, 01H=뱅크얻기>
MOV BL, <00H=페이지0, 01H=페이지1>
MOV DX, <뱅크번호>
INT 10H
이 기능으로 화면 전환을 어떻게 구현 할수 있나요?
그리고 페이지0,페이지1,뱅크번호란 것이 뭔지 도무지 어려워서 검색해서 찾기가 힘드네요.혹이 이것도 좀 추가로 답변좀 부탁 드립니다.
가령, 눈에 보이는 현재 화면을 1페이지라 했을때 2페이지에 데이터를 채운후 순간적으로 페이지를 변환시키면 부드러운 화면의 전환이 이루어 집니다.
두번째로 뱅크라는 개념은-
PC에서 비디오 메모리 영역은 A000:0000 부터 B000:FFFF까지 총 128KB입니다.
하지만, 예를 들어
1024 * 768에 256색상을 지원하려면 780KB정도가 필요 합니다. 즉, 모든 정보를 한번에 나타낼 수가 없기에 뱅크라는 개념을 두어 다루게 됩니다.
한 뱅크의 크기를 64KB정도로 둔다면, 64KB로 화면의 64줄을 관리 할수 있고, 12개의 뱅크가 필요하게 되는 것이지요.
그렇게, 0~63번째줄 사이의 어느곳에 픽셀을 찍으려면 0번 뱅크를 선택하고 계산을 하신후(A000:0000 ~ A000:FFFF 사이의) 메모리에 색상데이터를 쓰시면 됩니다.
뱅크 전환 방법이라던가, 페이지의 크기-, 뱅크의 갯수등은 비디오 카드에 따라 다를 수 있습니다. VESA 문서와 각종 비디오 카드 정보를 찾아 참조하셔야 할 수도 있습니다.
도움이 되었길 바라겠습니다.^^
>먼저 답변 주신것 감사 합니다.
>그리고 추가 질의 좀 드립니다.
>VESA 확장 바이오스 함수로 화면 전환은 어떻게 구현하는지 힌트좀 주시면 안될까요?
>즉
>
> MOV AH, 04FH
> MOV AL, 05H
> MOV BH, <00H=뱅크선택, 01H=뱅크얻기>
> MOV BL, <00H=페이지0, 01H=페이지1>
> MOV DX, <뱅크번호>
> INT 10H
>이 기능으로 화면 전환을 어떻게 구현 할수 있나요?
>그리고 페이지0,페이지1,뱅크번호란 것이 뭔지 도무지 어려워서 검색해서 찾기가 힘드네요.혹이 이것도 좀 추가로 답변좀 부탁 드립니다.
>