From 1a9290b97bbd0b08a3e2d8855e9437047a30c991 Mon Sep 17 00:00:00 2001 From: Byron Lathi Date: Sat, 12 Mar 2022 21:55:17 -0600 Subject: [PATCH] Implement hex_set_24 --- sw/main.c | 6 ++---- sw/sevenseg.s | 10 +++++++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/sw/main.c b/sw/main.c index d20d3e0..c7a5217 100644 --- a/sw/main.c +++ b/sw/main.c @@ -3,10 +3,8 @@ #include "sevenseg.h" int main() { - //hex_enable(0xff); - hex_set_8(0xb5, 0); - hex_set_8(0x00, 1); - hex_set_8(0xb0, 2); + hex_enable(0x3f); + hex_set_24(0xabcdef); while(1); return 0; } diff --git a/sw/sevenseg.s b/sw/sevenseg.s index 3305c2e..e915d59 100644 --- a/sw/sevenseg.s +++ b/sw/sevenseg.s @@ -1,5 +1,7 @@ .include "io.inc65" +.importzp sp, sreg + .export _hex_set_8 .export _hex_set_16 .export _hex_set_24 @@ -34,8 +36,14 @@ _hex_set_16: lda #$0 rts +; @in A/X/sreg: val +; @out A: 0 for success, 1 for failure +; Sets the 3 pairs of hex digits for a 24 bit value _hex_set_24: - lda #$1 + sta SEVEN_SEG + stx SEVEN_SEG+1 + lda sreg + sta SEVEN_SEG+2 rts ; @in A: mask