Files
SyncHome/trunk/workspace/Z80/main.asm
2023-03-13 08:36:51 +00:00

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)