Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
3497 yogev_ezra 1
; Hello, World! - Programm example for CMD shell
2
; Compile with FASM for Menuet
3
;
4
; You must run this program from CMD shell only
5
;
6
 
7
use32
8
 
9
   org 0x0
10
 
11
   db 'MENUET01'
12
   dd 0x01
13
   dd START
14
   dd I_END
15
   dd 0x100000
16
   dd 0x7fff0
17
   dd 0x0
18
   dd 0x0
19
 
20
include "CMDIPC.INC"       ; Подключить файл CMDIPC.INC
21
 
22
START:
23
 call initipc              ; инициализировать для работы с CMD
24
 
25
 mov eax,26                ; Длина строки
26
 mov ebx,hello_text        ; Указатель на строку
27
 call print                ; Вывести строку
28
 
29
again:
30
 call getkey               ; Ожидать нажатия клавиши и считать ее в key
31
 
32
 cmp byte [key],'Y'        ; Тут программа проверяет, нажата ли нужн. клавиша
33
 je goodday
34
 cmp byte [key],'y'
35
 je goodday
36
 cmp byte [key],'N'
37
 je goodmorning
38
 cmp byte [key],'n'
39
 je goodmorning
40
 
41
 jmp again                 ; Если нужн. клавиша не нажата, то считать клавишу
42
                           ; заново
43
goodday:                   ; Вывести приветствие Good Day, World!
44
 call eol                  ; Пропустить строку
45
 
46
 mov eax,16
47
 mov ebx,text4
48
 call print
49
 
50
 call eol                  ; Пропустить строку
51
 
52
 jmp endipc                ; Завершить программу
53
 
54
goodmorning:               ; Вывести приветствие Good Morning, World!
55
 call eol
56
 
57
 mov eax,20
58
 mov ebx,text5
59
 call print
60
 
61
 call eol
62
 
63
 jmp endipc                ; Заверщить программу
64
 
65
hello_text db 'Is it after 12 noon? [Y\N]?'
66
 
67
text4 db 'Good day, World!'
68
text5 db 'Good morning, World!'
69
 
70
I_END: