diff options
| author | B. Watson <urchlay@slackware.uk> | 2026-03-17 01:49:30 -0400 |
|---|---|---|
| committer | B. Watson <urchlay@slackware.uk> | 2026-03-17 01:49:30 -0400 |
| commit | e3b45c4788189bd04ed4cf9806191363715419ce (patch) | |
| tree | 198d64dee16185bfc02321db78b8edc47e61e010 | |
| parent | d20d9930bf4917745afb8e1d97742757897fcdb0 (diff) | |
| download | fujinet-chat-e3b45c4788189bd04ed4cf9806191363715419ce.tar.gz | |
Activity indicators vanish after 1.5 sec.
| -rw-r--r-- | src/indic8.c | 30 | ||||
| -rw-r--r-- | src/indic8.h | 2 | ||||
| -rw-r--r-- | src/irc.c | 1 |
3 files changed, 27 insertions, 6 deletions
diff --git a/src/indic8.c b/src/indic8.c index efe4d88..0558a4d 100644 --- a/src/indic8.c +++ b/src/indic8.c @@ -1,7 +1,10 @@ /* "indicators" */ +#include <atari.h> #include "addrs.h" +extern char hz; + #define NET_TX_CHR 0x5c /* COLOR1 up-arrow */ #define NET_RX_CHR 0x5d /* COLOR1 down-arrow */ #define NET_ERR_CHR 0xe1 /* COLOR3 exclamation mark */ @@ -10,11 +13,16 @@ #define J_CHR 0x4a /* COLOR1 J */ #define P_CHR 0x50 /* COLOR1 P */ #define Q_CHR 0x51 /* COLOR1 Q */ -#define M_CHR 0xcd /* COLOR3 M */ +#define M_CHR 0x4d /* COLOR1 M */ #define CHAN_CHR 0x63 /* COLOR1 # */ char *ind_net_status; /* initialized in screen.c, scr_init() */ +static void ind_start_timer(void) { + // OS.cdtmv5 = hz * 3; + OS.cdtmv5 = 150; +} + void ind_net_rx(void) { *ind_net_status = NET_RX_CHR; } @@ -31,22 +39,32 @@ void ind_net_idle(void) { *ind_net_status = NET_IDLE_CHR; } +static void ind_act(char c) { + ind_net_status[1] = c; + ind_start_timer(); +} + void ind_act_pm(void) { - ind_net_status[1] = M_CHR; + ind_act(M_CHR); } void ind_act_chantext(void) { - ind_net_status[1] = CHAN_CHR; + ind_act(CHAN_CHR); } void ind_act_join(void) { - ind_net_status[1] = J_CHR; + ind_act(J_CHR); } void ind_act_part(void) { - ind_net_status[1] = P_CHR; + ind_act(P_CHR); } void ind_act_quit(void) { - ind_net_status[1] = Q_CHR; + ind_act(Q_CHR); +} + +void ind_check_timer(void) { + if(!OS.cdtmv5) + ind_net_status[1] = 0; } diff --git a/src/indic8.h b/src/indic8.h index 4600363..4a28d41 100644 --- a/src/indic8.h +++ b/src/indic8.h @@ -11,6 +11,8 @@ void ind_act_join(void); void ind_act_part(void); void ind_act_quit(void); +void ind_check_timer(void); + /* void ind_clear(void); */ @@ -965,6 +965,7 @@ static void keystroke(void) { void irc_loop(void) { hide_motd = conf->hide_motd; while(1) { + ind_check_timer(); if(conf->atract_away) { if(!irc_away && (OS.atract & 0x80)) { irc_away = 1; |
