aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2026-04-08 07:34:06 -0400
committerB. Watson <urchlay@slackware.uk>2026-04-08 07:34:23 -0400
commitcd644a6d52fecb59c0daaa36325f740089d321ce (patch)
tree824cf9f70c287aa486d4aed60f8ac08f2a678643 /src
parent4ae461b9332f5642df85b8c204d88601f6a1adef (diff)
downloadfujinet-chat-cd644a6d52fecb59c0daaa36325f740089d321ce.tar.gz
Fix stupidity in jifsec.s: I was already using FR0 for something else... 7359 bytes free with no crashes!
Diffstat (limited to 'src')
-rw-r--r--src/irc.c12
-rw-r--r--src/jifsec.s10
2 files changed, 17 insertions, 5 deletions
diff --git a/src/irc.c b/src/irc.c
index d052937..885ab2b 100644
--- a/src/irc.c
+++ b/src/irc.c
@@ -121,6 +121,7 @@ static void do_priv_nick(void) {
static void print_ping_time(char *p) {
extern void print_jif_sec(unsigned int j);
static unsigned int now, pingtime;
+ // static unsigned int sec, frac;
now = read_rtclok();
pingtime = (unsigned int)a2uint(p);
@@ -128,9 +129,20 @@ static void print_ping_time(char *p) {
/* correct for rtclock rollover (every ~9 mins) */
if(now < pingtime) now |= 0x8000;
+ /*
+ pingtime = now - pingtime;
+ sec = pingtime / timers.hz;
+ frac = pingtime % timers.hz;
+ frac *= 100;
+ frac /= timers.hz;
+ */
+
scr_print_active("*** ");
scr_print_active(msg_src);
scr_print_active(" lag: ");
+ // scr_act_printnum(sec);
+ // scr_putc_active('.');
+ // scr_act_printnum(frac);
print_jif_sec(now - pingtime);
scr_putc_active('s');
}
diff --git a/src/jifsec.s b/src/jifsec.s
index ca5aac7..86648c1 100644
--- a/src/jifsec.s
+++ b/src/jifsec.s
@@ -1,13 +1,13 @@
; print jiffies as seconds, with possible decimal point, to the
; active screen.
; unsigned divide based on Ullrich von Bassewitz's runtime/udiv.s.
-; uses FR0 as a temp, rather than any of cc65's ZP storage,
+; uses FR1 as a temp, rather than any of cc65's ZP storage,
; to avoid clobbering.
- FR0 = $d4
- acc16 = FR0 ; 16 bits
- remainder = FR0+2 ; 8 bits
- temp = FR0+3 ; 16 bits
+ FR1 = $e0
+ acc16 = FR1 ; 16 bits
+ remainder = FR1+2 ; 8 bits
+ temp = FR1+3 ; 16 bits
_hz = $f0 ; must agree with timers.h!