100 lines
2.5 KiB
NASM
100 lines
2.5 KiB
NASM
;--------------------------------------------------------
|
|
; File Created by SDCC : free open source ANSI-C Compiler
|
|
; Version 3.5.0 #9253 (Jun 20 2015) (MINGW64)
|
|
; This file was generated Wed Sep 23 11:29:44 2020
|
|
;--------------------------------------------------------
|
|
.module main
|
|
.optsdcc -mz80
|
|
|
|
;--------------------------------------------------------
|
|
; Public variables in this module
|
|
;--------------------------------------------------------
|
|
.globl _main
|
|
.globl _foo
|
|
.globl _lcd_init
|
|
.globl _lcd_puts
|
|
.globl _b
|
|
.globl _a
|
|
.globl _welcome
|
|
;--------------------------------------------------------
|
|
; special function registers
|
|
;--------------------------------------------------------
|
|
_Display = 0x0080
|
|
_Ingresso = 0x0040
|
|
;--------------------------------------------------------
|
|
; ram data
|
|
;--------------------------------------------------------
|
|
.area _DATA
|
|
_a::
|
|
.ds 1
|
|
_b::
|
|
.ds 1
|
|
;--------------------------------------------------------
|
|
; ram data
|
|
;--------------------------------------------------------
|
|
.area _INITIALIZED
|
|
;--------------------------------------------------------
|
|
; absolute external ram data
|
|
;--------------------------------------------------------
|
|
.area _DABS (ABS)
|
|
;--------------------------------------------------------
|
|
; global & static initialisations
|
|
;--------------------------------------------------------
|
|
.area _HOME
|
|
.area _GSINIT
|
|
.area _GSFINAL
|
|
.area _GSINIT
|
|
;--------------------------------------------------------
|
|
; Home
|
|
;--------------------------------------------------------
|
|
.area _HOME
|
|
.area _HOME
|
|
;--------------------------------------------------------
|
|
; code
|
|
;--------------------------------------------------------
|
|
.area _CODE
|
|
;main.c:15: void foo (void){
|
|
; ---------------------------------
|
|
; Function foo
|
|
; ---------------------------------
|
|
_foo::
|
|
;main.c:16: a++;
|
|
ld hl, #_a+0
|
|
inc (hl)
|
|
ret
|
|
_welcome:
|
|
.ascii "Hello world!"
|
|
.db 0x00
|
|
;main.c:19: main() {
|
|
; ---------------------------------
|
|
; Function main
|
|
; ---------------------------------
|
|
_main::
|
|
;main.c:20: a=0;
|
|
ld hl,#_a + 0
|
|
ld (hl), #0x00
|
|
;main.c:21: b=0;
|
|
ld hl,#_b + 0
|
|
ld (hl), #0x00
|
|
;main.c:22: lcd_init();
|
|
call _lcd_init
|
|
;main.c:23: lcd_puts(welcome);
|
|
ld hl,#_welcome
|
|
push hl
|
|
call _lcd_puts
|
|
pop af
|
|
;main.c:24: foo();
|
|
call _foo
|
|
;main.c:25: while(1) {
|
|
00102$:
|
|
;main.c:26: a++;
|
|
ld hl, #_a+0
|
|
inc (hl)
|
|
;main.c:27: b=Ingresso;
|
|
in a,(_Ingresso)
|
|
ld (#_b + 0),a
|
|
jr 00102$
|
|
.area _CODE
|
|
.area _INITIALIZER
|
|
.area _CABS (ABS)
|