22017, 1/1101 ȸ¿ø°¡ÀÔ  ·Î±×ÀΠ 
   hacs98
   Ä¿³Îµå¶óÀ̺긦 ¾î¼Àºí¸®¾î·Î ©¼öÀִ°¡??

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Board&no=37851 [º¹»ç]


......

  Hit : 1343     Date : 2025/02/03 10:04



    
ÇØÅ·ÀßÇϰí½Í´Ù ; serial µå¶óÀ̹ö ÃʱâÈ­ ÇÔ¼ö
global init_serial
global serial_write_char

section .text

; void init_serial()
init_serial:
mov dx, 0x3F8 ; COM1 Æ÷Æ®
mov al, 0x00
out dx, al ; Interrupt Disable Register = 0

mov dx, 0x3FB ; Line Control Register
mov al, 0x80
out dx, al ; DLAB (enable baud rate divisor)

mov dx, 0x3F8 ; Divisor Low Byte (baud rate)
mov al, 0x03 ; 38400 baud (divisor = 3)
out dx, al
mov dx, 0x3F9 ; Divisor High Byte
mov al, 0x00
out dx, al

mov dx, 0x3FB
mov al, 0x03 ; 8 bits, no parity, one stop bit
out dx, al

mov dx, 0x3FC ; FIFO Control Register
mov al, 0xC7 ; Enable FIFO, clear them, with 14-byte threshold
out dx, al

mov dx, 0x3FE ; Modem Control Register
mov al, 0x0B ; IRQs enabled, RTS/DSR set
out dx, al

ret

; void serial_write_char(char c)
; c is in AL
serial_write_char:
mov dx, 0x3F8 ; Wait until transmit buffer is empty
.wait:
in al, 0x3FD
test al, 0x20
jz .wait

mov dx, 0x3F8
out dx, al ; Write character
ret



extern void init_serial();
extern void serial_write_char(char c);

void kmain() {
init_serial();

char* msg = "Hello from assembly serial driver!\r\n";
for (int i = 0; msg[i] != '\0'; i++) {
serial_write_char(msg[i]);
}

while (1);
}
2025/03/21  
22017   ÇØÄ¿ ¼±»ý´ÔÀ» ã½À´Ï´Ù     dydy44
04/29 173
22016   ...     ÇØÅ·ÀßÇϰí½Í´Ù
03/31 298
22015   ...     ÇØÅ·ÀßÇϰí½Í´Ù
03/25 307
22014   15³âÀüÂë ÀÌ »çÀÌÆ® º¸°í ²ÞÀ» Á¤Çß¾ú´Âµ¥~~~     ambition65
03/20 486
22013   À¸¾Ó!!![1]     ÇØÅ·ÀßÇϰí½Í´Ù
02/05 452
22012   A¤¿...     ÇØÅ·ÀßÇϰí½Í´Ù
01/27 437
22011   ¿À·£¸¸~     DarkSlayer
12/11 664
22010   ÇØÄ¿½ºÄð ¿¾³¯ BGM[1]     wkfhddl4041
11/07 755
22009   È÷À×...     ÇØÅ·ÀßÇϰí½Í´Ù
11/02 635
22008   ¹ÙµÏ°ú Àå±â     ÇØÅ·ÀßÇϰí½Í´Ù
10/30 685
22007   ³ª´Â ¾ðÁ¦ ¾ÖÀÎÀÌ »ý±â³ª¿è...     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 751
22006   Àü±¹ 1À§     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 694
22005   ´ã¹è ¤»¤»[1]     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 724
22004   ¸ÅÆ®¸¯½ºÀÇ ÆÄ¶õ¾àÀ» ¾Æ½Ê´Ï±î..?     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 675
22003   ¤·¤·[1]     ÇØÅ·ÀßÇϰí½Í´Ù
10/20 650
22002   ¿ÉÄ¡ ÇÙ°¨Áö ÇÁ·Î±×·¥Á» ¸¸µé¾îÁÖ¼¼¿ä[1]     powerima
10/15 729
22001   ÇØÅ·ÆÀ¿ø ¸ðÁý[1]     koromoon
08/27 1269
22000   °°ÀÌ ÇØÅ· ÆÀ ÀÌ·ç½ÇºÐ??     hacs98
08/26 862
21999   ¾Æ........ ¤Ð¤Ð     ÇØÅ·ÀßÇϰí½Í´Ù
08/04 1101
21998   ±Í¼ö(Сâ¢) µû¶óÇϱâ(?)     ÇØÅ·ÀßÇϰí½Í´Ù
07/28 1035
1 [2][3][4][5][6][7][8][9][10]..[1101]

Copyright 1999-2026 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org