diff src/strings.inc @ 604:ca4556fb60b9

bump to 2.99beta, work on 3.00 stable
author heinrichsweikamp
date Thu, 22 Nov 2018 19:47:26 +0100
parents e79bc535ef9e
children c40025d8e750
line wrap: on
line diff
--- a/src/strings.inc	Thu Oct 11 21:06:29 2018 +0200
+++ b/src/strings.inc	Thu Nov 22 19:47:26 2018 +0100
@@ -2,184 +2,192 @@
 ;
 ;   File strings.asm
 ;
-;   Implementation code various string functions.
+;   Implementation code various string functions
 ;
 ;   Copyright (c) 2011, JD Gascuel, HeinrichsWeikamp, all right reserved.
 ;=============================================================================
 ; HISTORY
-;   2010-12-02 : [jDG] Creation...
+;   2010-12-02 : [jDG] Creation
 ;
 
 ;=============================================================================
-; Copy a short embebed string at start of the string buffer (letter)
-; Input:    (nothing)
-; Output:   chars are copied into letter, starting at the beginning.
-;           FSR2 point to the first unused char (the NULL termination).
-;           
-; Trashed:  WREG, TBLPTR, TABLAT, PRODL
-; Note:     This are all bank-safe call.
+; Copy a short embedded string to the start of the string buffer
+; Input  : string after macro name
+; Output : chars are copied to the start of the string buffer
+;          FSR2 points to the first unused char containing the NULL termination
+; Trashed: WREG, TBLPTR, TABLAT, PRODL
+; Note   : uses bank-safe calls only
 ;
-        extern  strcpy_block
-STRCPY  macro   string
-        call    strcpy_block
-        DB  string, 0
-        endm
+	extern	strcpy_block
+STRCPY macro string
+	call	strcpy_block
+	DB		string, 0
+	endm
 
 ;=============================================================================
-; A variant of STRCPY that appends chars to the current FSR2 pointer.
-; Input/Output/Trashed : see STRCPY.
-        extern  strcat_block
-STRCAT  macro   string
-        call    strcat_block
-        DB  string, 0
-        endm
+; A variant of STRCPY that appends chars in the string buffer at the current
+; FSR2 pointer position
+; Input/Output/Trashed: see STRCPY
+;
+	extern	strcat_block
+STRCAT macro string
+	call	strcat_block
+	DB		string, 0
+	endm
 
 ;=============================================================================
 ; A variant of STRCAT when there is just on char to output
-; Input/Output/Trashed : none.
-PUTC    macro   char
-        movlw   char
-        movwf   POSTINC2
-        endm
+; Input/Output/Trashed: see STRCPY
+;
+PUTC macro	char
+	movlw	char
+	movwf	POSTINC2
+	endm
 
 ;=============================================================================
-; A variant of STRCPY that send the string to the word processor afterwards.
-; Input/Output: see STRCPY.
-; Trashed: See STRCPY + word_processor. In particular, switch RAM to Bank1 
+; A variant of STRCPY that sends the string to the word processor afterwards
+; Input/Output: see STRCPY
+; Trashed     : see STRCPY + word_processor. In particular, switches RAM to Bank1
 ;
-        extern  strcpy_block_print
-STRCPY_PRINT    macro string
-        call    strcpy_block_print
-        DB  string, 0
-        endm
+	extern  strcpy_block_print
+STRCPY_PRINT macro string
+	call	strcpy_block_print
+	DB		string, 0
+	endm
 
-; Trashed: See STRCPY + word_processor. In particular, switch RAM to Bank1 
-        extern  strcat_block_print
-STRCAT_PRINT    macro string
-        call    strcat_block_print
-        DB  string, 0
-        endm
+;=============================================================================
+; A variant of STRCAT that sends the string to the word processor afterwards
+; Input/Output: see STRCAT
+; Trashed     : see STRCPY + word_processor. In particular, switches RAM to Bank1
+;
+	extern	strcat_block_print
+STRCAT_PRINT macro string
+	call	strcat_block_print
+	DB		string, 0
+	endm
 
 ;=============================================================================
 ; Subroutines to operate on strings from PROM code
 ;
-; Input:  TBLPTR : string pointer into PROM.
-; Output: string in buffer, FSR2 pointer on the closing null byte.
+; Input  : TBLPTR : string pointer into PROM
+; Trashed: FSR1
+; Output : string in buffer, FSR2 pointer on the closing null byte
 
-        extern  strcpy_prom, strcat_prom
-        extern  strcpy_prom_print, strcat_prom_print
+	extern	strcpy_prom,       strcat_prom
+	extern	strcpy_prom_print, strcat_prom_print
 
 ;=============================================================================
 ; Subroutines and macros to operate on multilingual text
 ;
-        extern  strcpy_text
-STRCPY_TEXT macro   txt
-        extern  txt
-        lfsr    FSR1, txt
-        call    strcpy_text
-        endm
+	extern	strcpy_text
+STRCPY_TEXT macro txt
+	extern	txt
+	lfsr	FSR1, txt
+	call	strcpy_text
+	endm
 
-        extern  strcpy_text_print
-STRCPY_TEXT_PRINT macro   txt
-        extern  txt
-        lfsr    FSR1, txt
-        call    strcpy_text_print
-        endm
+	extern	strcpy_text_print
+STRCPY_TEXT_PRINT macro txt
+	extern	txt
+	lfsr	FSR1, txt
+	call	strcpy_text_print
+	endm
 
-        extern  strcat_text
-STRCAT_TEXT macro   txt
-        extern  txt
-        lfsr    FSR1, txt
-        call    strcat_text
-        endm
+	extern	strcat_text
+STRCAT_TEXT macro txt
+	extern	txt
+	lfsr	FSR1, txt
+	call	strcat_text
+	endm
 
-        extern  strcat_text_print
-STRCAT_TEXT_PRINT macro   txt
-        extern  txt
-        lfsr    FSR1, txt
-        call    strcat_text_print
-        endm
+	extern	strcat_text_print
+STRCAT_TEXT_PRINT macro txt
+	extern	txt
+	lfsr	FSR1, txt
+	call	strcat_text_print
+	endm
 
 ;=============================================================================
-; A shortcut for the macros WIN_TOP + WIN_LEFT + WIN_FONT.
-; The idea is to replace a 4x6=24 bytes sequence by a more compact 6bytes one.
+; A shortcut for the macros WIN_TOP + WIN_LEFT + WIN_FONT
+; The idea is to replace a 4x6=24 bytes sequence by a more compact 6 bytes one.
 ;
 ; Trashed: TBLPTR, TABLAT, WREG.
-; Note:    This are all bank-safe call.
-        extern  start_tiny_block
+; Note   : uses bank-safe calls only
+;
+	extern	start_tiny_block
 WIN_TINY macro x, y
-        call    start_tiny_block
-        DB      x, y
-        endm
+	call	start_tiny_block
+	DB		x, y
+	endm
 
-        extern  start_small_block
+	extern	start_small_block
 WIN_SMALL macro x, y
-        call    start_small_block
-        DB      x, y
-        endm
+	call	start_small_block
+	DB		x, y
+	endm
 
-        extern  start_std_block
+	extern	start_std_block
 WIN_STD macro x, y
-        call    start_std_block
-        DB      x, y
-        endm
+	call	start_std_block
+	DB		x, y
+	endm
 
-        extern  start_medium_block
-WIN_MEDIUM   macro   x, y
-        call    start_medium_block
-        DB      x, y
-        endm
+	extern	start_medium_block
+WIN_MEDIUM macro x, y
+	call	start_medium_block
+	DB		x, y
+	endm
 
-       extern  start_large_block
-WIN_LARGE   macro   x, y
-       call    start_large_block
-       DB      x, y
-       endm
+	extern	start_large_block
+WIN_LARGE macro x, y
+	call	start_large_block
+	DB		x, y
+	endm
 
 ;=============================================================================
-; Shortcuts for compact display programmings.
-TEXT_TINY macro   x, y, txt
-        WIN_TINY   x,y
-        STRCPY_TEXT_PRINT txt
-        endm
+; Shortcuts for compact display programmings
+;
+TEXT_TINY macro x, y, txt
+	WIN_TINY x,y
+	STRCPY_TEXT_PRINT txt
+	endm
 
-TEXT_SMALL  macro   x, y, txt
-        WIN_SMALL   x,y
-        STRCPY_TEXT_PRINT txt
-        endm
+TEXT_SMALL macro x, y, txt
+	WIN_SMALL x,y
+	STRCPY_TEXT_PRINT txt
+	endm
 
-TEXT_SMALL_INVERT  macro   x, y, txt
-        WIN_SMALL_INVERT   x,y
-        STRCPY_TEXT_PRINT txt
-        endm
+TEXT_SMALL_INVERT macro x, y, txt
+	WIN_SMALL_INVERT x,y
+	STRCPY_TEXT_PRINT txt
+	endm
 
-TEXT_MEDIUM  macro   x, y, txt
-        WIN_MEDIUM   x,y
-        STRCPY_TEXT_PRINT txt
-        endm
+TEXT_MEDIUM macro x, y, txt
+	WIN_MEDIUM x,y
+	STRCPY_TEXT_PRINT txt
+	endm
 
-TEXT_LARGE  macro   x, y, txt
-        WIN_LARGE   x,y
-        STRCPY_TEXT_PRINT txt
-        endm
+TEXT_LARGE macro x, y, txt
+	WIN_LARGE x,y
+	STRCPY_TEXT_PRINT txt
+	endm
 
-STRING_TINY macro   x, y, string
-        WIN_SMALL   x,y
-        STRCPY_PRINT string
-        endm
+STRING_TINY macro x, y, string
+	WIN_SMALL x,y
+	STRCPY_PRINT string
+	endm
 
-STRING_SMALL  macro   x, y, string
-        WIN_SMALL   x,y
-        STRCPY_PRINT string
-        endm
+STRING_SMALL macro x, y, string
+	WIN_SMALL x,y
+	STRCPY_PRINT string
+	endm
 
-STRING_MEDIUM  macro   x, y, string
-        WIN_MEDIUM   x,y
-        STRCPY_PRINT string
-        endm
+STRING_MEDIUM macro x, y, string
+	WIN_MEDIUM x,y
+	STRCPY_PRINT string
+	endm
 
-STRING_LARGE  macro   x, y, string
-        WIN_LARGE   x,y
-        STRCPY_PRINT string
-        endm
-
+STRING_LARGE macro x, y, string
+	WIN_LARGE x,y
+	STRCPY_PRINT string
+	endm