квартира готова?:)
Во, наконец получилось скомпилить файл ASCII.mod.
Исходный Оберон:
Скомпилировалось в:Код:MODULE ASCII; (*$MAIN*)
IMPORT Console;
VAR
n: INTEGER;
BEGIN
FOR n := 32 TO 127 DO Console.WriteCh(CHR(n)) END;
END ASCII.
Это оптимально?Код:.area _GSINIT
;--------------------------------------------------------
; Home
;--------------------------------------------------------
.area _HOME
.area _HOME
;--------------------------------------------------------
; code
;--------------------------------------------------------
.area _CODE
;ASCII.c:14: export main(int argc, char **argv)
; ---------------------------------
; Function main
; ---------------------------------
_main_start::
_main:
;ASCII.c:20: ASCII_n = 32;
ld iy,#_ASCII_n
ld 0 (iy),#0x20
ld iy,#_ASCII_n
ld 1 (iy),#0x00
;ASCII.c:21: while (ASCII_n <= 127) {
00101$:
ld a,#0x7F
ld iy,#_ASCII_n
cp a, 0 (iy)
ld a,#0x00
ld iy,#_ASCII_n
sbc a, 1 (iy)
jp PO, 00114$
xor a, #0x80
00114$:
jp M,00103$
;ASCII.c:22: Console_WriteCh((CHAR)ASCII_n);
ld iy,#_ASCII_n
ld h,0 (iy)
push hl
inc sp
call _Console_WriteCh_COMPACT
inc sp
;ASCII.c:23: ASCII_n += 1;
ld iy,#_ASCII_n
inc 0 (iy)
jr NZ,00101$
ld iy,#_ASCII_n
inc 1 (iy)
jr 00101$
00103$:
;ASCII.c:25: __FINI;
ld hl,#0x0000
ret
_main_end::
.area _CODE
.area _INITIALIZER
.area _CABS (ABS)
И что за строки типа .area _CODE?
Это не будет работать на асме.
ну и смысл всё это использовать?
---------- Post added at 13:34 ---------- Previous post was at 13:32 ----------
или там где-то опять настройками sdcc играться? :)