summaryrefslogtreecommitdiffstats
path: root/sw/z80_tests/usart/build/pio.asm
diff options
context:
space:
mode:
authorNao Pross <naopross@thearcway.org>2017-10-05 16:09:59 +0200
committerNao Pross <naopross@thearcway.org>2017-10-05 16:09:59 +0200
commiteb169ea5a89909b90794e0388f89d6d372754e46 (patch)
treece7e826fd2dd4e4248cb4f1fbf8ce2885c943f49 /sw/z80_tests/usart/build/pio.asm
parentTest units are now in their own folder 'z80_test', add programmer cli interface (diff)
downloadz80uPC-eb169ea5a89909b90794e0388f89d6d372754e46.tar.gz
z80uPC-eb169ea5a89909b90794e0388f89d6d372754e46.zip
Move test units to z80/tests, and drivers are now statically linked
Makefiles for the test units were getting messier, so now drivers (that need to be tested) are statically compiled in their own folder under z80/drivers. The kernel makefile and is now broken since everything has been moved.
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)