summaryrefslogtreecommitdiffstats
path: root/sw/z80_tests/usart/build/pio.asm
diff options
context:
space:
mode:
Diffstat (limited to 'sw/z80_tests/usart/build/pio.asm')
-rw-r--r--sw/z80_tests/usart/build/pio.asm194
1 files changed, 0 insertions, 194 deletions
diff --git a/sw/z80_tests/usart/build/pio.asm b/sw/z80_tests/usart/build/pio.asm
deleted file mode 100644
index ee1fcc6..0000000
--- a/sw/z80_tests/usart/build/pio.asm
+++ /dev/null
@@ -1,194 +0,0 @@
-;--------------------------------------------------------
-; File Created by SDCC : free open source ANSI-C Compiler
-; Version 3.6.0 #9615 (Linux)
-;--------------------------------------------------------
- .module pio
- .optsdcc -mz80
-
-;--------------------------------------------------------
-; Public variables in this module
-;--------------------------------------------------------
- .globl __pio_data
- .globl __pio_control
- .globl _pio_set_mode
- .globl _pio_set_interrupts
- .globl _pio_set_interrupts_mask
-;--------------------------------------------------------
-; special function registers
-;--------------------------------------------------------
-;--------------------------------------------------------
-; ram data
-;--------------------------------------------------------
- .area _DATA
-;--------------------------------------------------------
-; ram data
-;--------------------------------------------------------
- .area _INITIALIZED
-_pio_port:
- .ds 2
-_pio_ctrl:
- .ds 2
-;--------------------------------------------------------
-; 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
-;pio.c:6: inline void _pio_data(int port, uint8_t data)
-; ---------------------------------
-; Function _pio_data
-; ---------------------------------
-__pio_data::
-;pio.c:8: *(pio_port + port) = data;
- ld hl,#2
- add hl,sp
- ld iy,#_pio_port
- ld a,0 (iy)
- add a, (hl)
- ld c,a
- ld a,1 (iy)
- inc hl
- adc a, (hl)
- ld b,a
- ld hl, #4+0
- add hl, sp
- ld a, (hl)
- ld (bc),a
- ret
-;pio.c:11: inline void _pio_control(int port, uint8_t cmd)
-; ---------------------------------
-; Function _pio_control
-; ---------------------------------
-__pio_control::
-;pio.c:13: *(pio_ctrl + port) = cmd;
- ld hl,#2
- add hl,sp
- ld iy,#_pio_ctrl
- ld a,0 (iy)
- add a, (hl)
- ld c,a
- ld a,1 (iy)
- inc hl
- adc a, (hl)
- ld b,a
- ld hl, #4+0
- add hl, sp
- ld a, (hl)
- ld (bc),a
- ret
-;pio.c:16: void pio_set_mode(int port, int mode, uint8_t io)
-; ---------------------------------
-; Function pio_set_mode
-; ---------------------------------
-_pio_set_mode::
-;pio.c:19: _pio_control(port, ((mode << 6) | 0x0F));
- ld hl, #4+0
- add hl, sp
- ld a, (hl)
- rrca
- rrca
- and a,#0xc0
- or a, #0x0f
- ld c,a
- pop de
- pop hl
- push hl
- push de
-;pio.c:13: *(pio_ctrl + port) = cmd;
- ld iy,(_pio_ctrl)
- ld e, l
- ld d, h
- add iy, de
- ld 0 (iy), c
-;pio.c:23: if (mode == PIO_MODE_BIT_IO) {
- ld iy,#4
- add iy,sp
- ld a,0 (iy)
- sub a, #0x03
- ret NZ
- ld a,1 (iy)
- or a, a
- ret NZ
-;pio.c:24: _pio_control(port, io);
- ld iy,#6
- add iy,sp
- ld c,0 (iy)
-;pio.c:13: *(pio_ctrl + port) = cmd;
- ld de,(_pio_ctrl)
- add hl,de
- ld (hl),c
-;pio.c:24: _pio_control(port, io);
- ret
-;pio.c:28: void pio_set_interrupts(int port, int control)
-; ---------------------------------
-; Function pio_set_interrupts
-; ---------------------------------
-_pio_set_interrupts::
-;pio.c:31: _pio_control(port, (control | 0x07));
- ld hl, #4+0
- add hl, sp
- ld a, (hl)
- or a, #0x07
- ld c,a
- pop de
- pop hl
- push hl
- push de
-;pio.c:13: *(pio_ctrl + port) = cmd;
- ld de,(_pio_ctrl)
- add hl,de
- ld (hl),c
-;pio.c:31: _pio_control(port, (control | 0x07));
- ret
-;pio.c:34: void pio_set_interrupts_mask(int port, int control, uint8_t mask)
-; ---------------------------------
-; Function pio_set_interrupts_mask
-; ---------------------------------
-_pio_set_interrupts_mask::
-;pio.c:38: _pio_control(port, (control | 0x17));
- ld hl, #4+0
- add hl, sp
- ld a, (hl)
- or a, #0x17
- ld c,a
- pop de
- pop hl
- push hl
- push de
-;pio.c:13: *(pio_ctrl + port) = cmd;
- ld iy,(_pio_ctrl)
- ld e, l
- ld d, h
- add iy, de
- ld 0 (iy), c
-;pio.c:39: _pio_control(port, mask);
- ld iy,#6
- add iy,sp
- ld c,0 (iy)
-;pio.c:13: *(pio_ctrl + port) = cmd;
- ld de,(_pio_ctrl)
- add hl,de
- ld (hl),c
-;pio.c:39: _pio_control(port, mask);
- ret
- .area _CODE
- .area _INITIALIZER
-__xinit__pio_port:
- .dw #0x4200
-__xinit__pio_ctrl:
- .dw #0x4202
- .area _CABS (ABS)