diff --git a/src/sysen3/chatst.57 b/src/sysen3/chatst.57 index 7668eb43..a62625a5 100644 --- a/src/sysen3/chatst.57 +++ b/src/sysen3/chatst.57 @@ -229,6 +229,20 @@ ASZIN4: .IOT TYIC,C ASZIN3: FWRITE TYOC,[CRLF,,[An ascii string terminated by please: ]] JRST ASZIN0 + +;; Convert asciz string pointed to by b to uppercase, in place. +;; Useful for contact names. +UPCASE: PUSHAE P,[A,B] +UPCAS1: ILDB A,B + JUMPE A,UPCAZ + CAIL A,141 + CAILE A,172 + JRST UPCAS1 + SUBI A,40 + DPB A,B + JRST UPCAS1 +UPCAZ: POPAE P,[B,A] + POPJ P, ;SEND LSN ALSN: PUSHJ P,CLBF @@ -237,6 +251,7 @@ ALSN: PUSHJ P,CLBF FWRITE TYOC,[[ Contact name: ]] MOVE B,[440800,,%CPKDT+BF] PUSHJ P,ASZIN + PUSHJ P,UPCASE DPB A,[$CPKNB BF] PUSHJ P,SEND ;JUST SEND, WILL GET INTERRUPT IF RFC MATCHES POPJ P, @@ -256,6 +271,7 @@ ABRD: PUSHJ P,CLBF FWRITE TYOC,[[ Contact name: ]] MOVE B,[440800,,%CPKDT+BF+8.] PUSHJ P,ASZIN + PUSHJ P,UPCASE addi a,32. ;+bitmask length DPB A,[$CPKNB BF] move a,[bf,,brdpkt] ;Save pkt @@ -378,6 +394,7 @@ ARFC: PUSHJ P,CLBF FWRITE TYOC,[[ Contact name: ]] MOVE B,[440800,,%CPKDT+BF] PUSHJ P,ASZIN + PUSHJ P,UPCASE DPB A,[$CPKNB BF] ARFC0: PUSHJ P,SEND FWRITE TYOC,[[ Sending...],CRLF,,]