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

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


......

  Hit : 1293     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  
     [°øÁö]ÇØÄ¿½ºÄð ÀÌ¿ë¼öÄ¢ 2021/04/11 ¼öÁ¤ÆÇ [55] ÇѽÂÀç 01/05 12061
22016   ÇØÄ¿ ¼±»ý´ÔÀ» ã½À´Ï´Ù     dydy44
04/29 69
22015   ...     ÇØÅ·ÀßÇϰí½Í´Ù
03/31 235
22014   ...     ÇØÅ·ÀßÇϰí½Í´Ù
03/25 246
22013   15³âÀüÂë ÀÌ »çÀÌÆ® º¸°í ²ÞÀ» Á¤Çß¾ú´Âµ¥~~~     ambition65
03/20 390
22012   À¸¾Ó!!![1]     ÇØÅ·ÀßÇϰí½Í´Ù
02/05 399
22011   A¤¿...     ÇØÅ·ÀßÇϰí½Í´Ù
01/27 387
22010   ¿À·£¸¸~     DarkSlayer
12/11 615
22009   ÇØÄ¿½ºÄð ¿¾³¯ BGM[1]     wkfhddl4041
11/07 709
22008   È÷À×...     ÇØÅ·ÀßÇϰí½Í´Ù
11/02 595
22007   ¹ÙµÏ°ú Àå±â     ÇØÅ·ÀßÇϰí½Í´Ù
10/30 646
22006   ³ª´Â ¾ðÁ¦ ¾ÖÀÎÀÌ »ý±â³ª¿è...     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 711
22005   Àü±¹ 1À§     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 645
22004   ´ã¹è ¤»¤»[1]     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 663
22003   ¸ÅÆ®¸¯½ºÀÇ ÆÄ¶õ¾àÀ» ¾Æ½Ê´Ï±î..?     ÇØÅ·ÀßÇϰí½Í´Ù
10/27 629
22002   ¤·¤·[1]     ÇØÅ·ÀßÇϰí½Í´Ù
10/20 606
22001   ¿ÉÄ¡ ÇÙ°¨Áö ÇÁ·Î±×·¥Á» ¸¸µé¾îÁÖ¼¼¿ä[1]     powerima
10/15 678
22000   ÇØÅ·ÆÀ¿ø ¸ðÁý[1]     koromoon
08/27 1208
21999   °°ÀÌ ÇØÅ· ÆÀ ÀÌ·ç½ÇºÐ??     hacs98
08/26 822
21998   ¾Æ........ ¤Ð¤Ð     ÇØÅ·ÀßÇϰí½Í´Ù
08/04 1038
1 [2][3][4][5][6][7][8][9][10]..[1101]

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