C++ işletim sistemi kullanıcıdan input nasıl alınır?

nolonger

Hectopat
Katılım
27 Şubat 2021
Mesajlar
153
Merhabalar elimde bir Bootloader var Assembly ile yapıldı C++ dosyalarını çalıştırıyor elimde ekrana yazdırma kodu var 0xb8000 kullanarak yapıyor benim merak ettiğim şey bu kullanıcıdan bir input nasıl alabilirim? Çok fazla araştırdım bulamadım.
Not: C++ dosyaları içinde C kullanıyorum. extern "C"
 
Merhabalar elimde bir Bootloader var Assembly ile yapıldı C++ dosyalarını çalıştırıyor elimde ekrana yazdırma kodu var 0xb8000 kullanarak yapıyor benim merak ettiğim şey bu kullanıcıdan bir input nasıl alabilirim? Çok fazla araştırdım bulamadım.
Not: C++ dosyaları içinde C kullanıyorum. extern "C"
0x16 interruptuna bakabilirsiniz. Ralf'ın interrupt listesine göz atabilirsin.
0x16 interruptuna bakabilirsiniz. Ralf'ın interrupt listesine göz atabilirsin.
Link: Ralf Brown's Files
Rahatsız ediyorum kusura bakmayın ama örnek verebilir misiniz bildiğiniz bir tane varsa?
mikeOS.
Merhabalar elimde bir Bootloader var Assembly ile yapıldı C++ dosyalarını çalıştırıyor elimde ekrana yazdırma kodu var 0xb8000 kullanarak yapıyor benim merak ettiğim şey bu kullanıcıdan bir input nasıl alabilirim? Çok fazla araştırdım bulamadım.
Not: C++ dosyaları içinde C kullanıyorum. extern "C"
Bu arada sıkıntı olmazsa Bootloader'in kodunu paylaşabilirmisin?
Klavyene bağlı. PS2 klavyeler için, IRQ1 hattından gelen veriyi dinleyip onu kernel'deki hash table'a hash olarak vereceksin, ve o hash'e karşılık gelen karakteri ekranda bastıracaksın.
BIOS'ların çoğu USB klavyeyi ve fareyi PS2'ye emule eder diye biliyorum, yani arada bir fark olur mu?
 
Son düzenleme:
0x16 interruptuna bakabilirsiniz. Ralf'ın interrupt listesine göz atabilirsin.

Link: Ralf Brown's Files

Mikeos.

Bu arada sıkıntı olmazsa Bootloader'in kodunu paylaşabilir misin?

BIOS'ların çoğu USB klavyeyi ve fareyi PS2'ye emule eder diye biliyorum, yani arada bir fark olur mu?

Tabii az sonra bilgisayarı açıp paylaşacağım bu arada benim neredeyse bilgim hiç yok zaten öğrenmek için yapıyorum ilginiz için teşekkür ederim.
0x16 interruptuna bakabilirsiniz. Ralf'ın interrupt listesine göz atabilirsin.

Link: Ralf Brown's Files

mikeOS.

Bu arada sıkıntı olmazsa Bootloader'in kodunu paylaşabilirmisin?

BIOS'ların çoğu USB klavyeyi ve fareyi PS2'ye emule eder diye biliyorum, yani arada bir fark olur mu?
[CODE title="Loader"].set MAGIC, 0x1badb002
.set FLAGS, (1<<0 | 1<<1)
.set CHECKSUM, -(MAGIC + FLAGS)

.section .multiboot
.long MAGIC
.long FLAGS
.long CHECKSUM



.section .text
.extern kernelMain
.extern callConstructors
.global loader

loader:
mov $kernel_stack, %esp
call callConstructors
push %eax
push %ebx
call kernelMain

_stop:
cli
hlt
jmp _stop


.section .bss
.space 2*1024*1024;
kernel_stack:
[/CODE]
 
Son düzenleme:

Geri
Yukarı