Merge remote-tracking branch 'origin/main' into Windows-Manager
This commit is contained in:
commit
acf04e6d1d
11 changed files with 40 additions and 6 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
|
@ -8,5 +8,4 @@ build/
|
|||
gfx/
|
||||
roms/
|
||||
tools/
|
||||
doc/generated
|
||||
assets/
|
||||
doc/generated/
|
||||
BIN
doc/assets/Screenshot-VGA.png
Normal file
BIN
doc/assets/Screenshot-VGA.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 8.5 KiB |
24
readme.md
24
readme.md
|
|
@ -12,6 +12,12 @@ Rather than booting an operating system from disk, the PC starts **directly from
|
|||
|
||||

|
||||
|
||||
Screenshot from a CGA Hi res test on 86Box.
|
||||
|
||||

|
||||
|
||||
Screenshot from a VGA Hi res test on QEMU with "italic Font".
|
||||
|
||||
You may want to get a look at the [Older screenshots](/doc/assets/screenshot.md)
|
||||
|
||||
The project is intentionally educational, experimental, and minimalist.
|
||||
|
|
@ -64,6 +70,12 @@ To build and run this project, the following tools and components are required:
|
|||
- **QEMU VGA BIOS**
|
||||
The standard QEMU VGA BIOS (`vgabios.bin`) is required to initialize the VGA hardware, allowing the custom BIOS to rely on a known and stable VGA implementation while focusing on its own core logic.
|
||||
|
||||
- **VGA Text Font**
|
||||
You may want to use "custom" font; you can pick any "F08" (8 bytes per character) font from this repo:
|
||||
|
||||
https://github.com/viler-int10h/vga-text-mode-fonts
|
||||
|
||||
|
||||
---
|
||||
|
||||
### API
|
||||
|
|
@ -98,6 +110,12 @@ Au lieu de charger un système d’exploitation depuis un disque, le PC **démar
|
|||
|
||||

|
||||
|
||||
Screenshot d'un EcranCGA Hi res test sur 86Box.
|
||||
|
||||

|
||||
|
||||
screenshot d'un ecran VGA Hi res test avec police Italique sur QEMU.
|
||||
|
||||
You may want to get a look at the [Older screenshots](/doc/assets/screenshot.md)
|
||||
|
||||
---
|
||||
|
|
@ -148,6 +166,12 @@ Utilisé comme émulateur PC principal pour tester et déboguer le BIOS personna
|
|||
- **BIOS VGA de QEMU**
|
||||
Le BIOS VGA standard de QEMU (vgabios.bin) est utilisé pour initialiser le matériel vidéo, ce qui permet au projet de se concentrer sur le développement du BIOS sans réimplémenter la logique VGA complète.
|
||||
|
||||
- **VGA Text Font**
|
||||
Vous pouvez utiliser des polices de caractères personnalisées. Vous pouvez choisir n'importe quelle police 'F08' (8 octets par caractère) de ce référentiel:
|
||||
|
||||
https://github.com/viler-int10h/vga-text-mode-fonts
|
||||
|
||||
|
||||
----
|
||||
|
||||
### API
|
||||
|
|
|
|||
BIN
src/assets/6X8.F08
Normal file
BIN
src/assets/6X8.F08
Normal file
Binary file not shown.
BIN
src/assets/8X8.F08
Normal file
BIN
src/assets/8X8.F08
Normal file
Binary file not shown.
BIN
src/assets/8X8ITAL.F08
Normal file
BIN
src/assets/8X8ITAL.F08
Normal file
Binary file not shown.
BIN
src/assets/8X8THIN.F08
Normal file
BIN
src/assets/8X8THIN.F08
Normal file
Binary file not shown.
BIN
src/assets/CGA-TH.F08
Normal file
BIN
src/assets/CGA-TH.F08
Normal file
Binary file not shown.
BIN
src/assets/FM-T-437.F08
Normal file
BIN
src/assets/FM-T-437.F08
Normal file
Binary file not shown.
|
|
@ -21,6 +21,17 @@
|
|||
; =============================================================================
|
||||
|
||||
font8x8:
|
||||
; on importe uniquement les caractères entre ' ' (0x20) et '~' (0x7E)
|
||||
incbin "./assets/FM-T-437.F08", 0x20*8, 0x7e*8
|
||||
;
|
||||
; https://github.com/viler-int10h/vga-text-mode-fonts
|
||||
;
|
||||
; Bien que le fichiers F08 définissent les 256 caractères de la table ASCII,
|
||||
; on importe uniquement les caractères entre ' ' (0x20) et '~' (0x7E).
|
||||
; ce choix est fait pour limiter la taille de la police; de même nous ne gérons
|
||||
; qu'une seule police.
|
||||
;
|
||||
; Si l'on désire augmenter le nombre de caratères ou ajouter plusieurs polices, il faudra
|
||||
; adapter les fonctions "putc" en accord.
|
||||
;
|
||||
incbin "./assets/8X8ITAL.F08", 0x20*8, 0x7e*8
|
||||
; incbin "./assets/FM-T-437.F08", 0x20*8, 0x7e*8
|
||||
;incbin "./assets/CGA-TH.F08", 0x20*8, 0x7e*8
|
||||
|
|
@ -311,10 +311,10 @@ gui_slider_update_pixels:
|
|||
|
||||
.set_min:
|
||||
; Si la valeur est sous le minimum, on colle au début
|
||||
movzx ax, word [gs:si + widget.x]
|
||||
mov ax, word [gs:si + widget.x]
|
||||
cmp byte [gs:si + widget.attr_mode], 2
|
||||
jne .force_store
|
||||
movzx ax, word [gs:si + widget.y]
|
||||
mov ax, word [gs:si + widget.y]
|
||||
.force_store:
|
||||
mov [gs:si + widget.thumb_pos], ax
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue