32 lines
416 B
NASM
32 lines
416 B
NASM
|
[org 0x6000]
|
||
|
[bits 32]
|
||
|
_start:
|
||
|
push ebp
|
||
|
mov ebp, esp
|
||
|
.loop:
|
||
|
; print shell prompt
|
||
|
mov eax, 1
|
||
|
mov edi, 0
|
||
|
mov esi, prompt
|
||
|
mov edx, 3
|
||
|
int 0x80
|
||
|
|
||
|
; read input
|
||
|
mov eax, 0
|
||
|
mov edi, 1
|
||
|
mov esi, buf
|
||
|
mov edx, 512
|
||
|
int 0x80
|
||
|
|
||
|
; echo what was wrote
|
||
|
mov eax, 1
|
||
|
mov edi, 0
|
||
|
mov esi, buf
|
||
|
mov edx, 512
|
||
|
int 0x80
|
||
|
|
||
|
jmp .loop
|
||
|
jmp $
|
||
|
|
||
|
prompt: db "> ", 0
|