blob: 5ec848dac800412861ec04209b94a0c4f3432cbc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
module ec;
import system;
var
col : integer;
row : integer;
look : char;
procedure init;
begin
col := 1;
row := 1;
end
procedure getChar : char;
var
c : char;
begin
c := system.readchar( );
if ( c = char( 0 ) ) do
return c;
end;
col := col + 1;
if ( c = char( 10 ) ) do
col := 1;
row := row + 1;
end;
return c;
end
procedure prologue;
begin
system.writeline( "[bits 32]" );
system.writeline( "cpu 486" );
system.writeline( "org 0x1000000" );
end
procedure epilogue;
begin
system.writeline( "hlt" );
end
begin
init( );
prologue( );
epilogue( );
look := getChar( );
while ( look <> char( 0 ) ) do
look := getChar( );
end;
system.halt( 0 );
end
|