home *** CD-ROM | disk | FTP | other *** search
-
- ; FILENAME: OTABRSET.ASM
- ; Copyright (c) 1988, 1989 by Borland International, Inc.
- ;
- ; Description: This module implements the routine TabReset. TabReset
- ; sets tap stops every eight columns.
- ; This module uses MASM mode syntax and standard segment directives.
- ;
- ; ASSEMBLY INSTRUCTIONS: To assemble this module use the following
- ; TASM command line.
- ;
- ; TASM otabrset
-
- include globals.inc
-
- _TEXT segment
-
- TabReset proc
-
- ; This procedure sets tab stops every 8 columns. A tab is
- ; represented by the number 1 in the tab table.
- ; Input
- ; TabTbl - starting location of the tab table
- ; TabEnd - ending location of the tab table
- ; Output
- ; TabTbl - cleared and set to null
- ; Registers modified
- ; none
-
- call TabClear ;clear all tab stops first
-
- push cx
- push di
- sub cx, cx ;initial column count
- lea di, TabTbl ;table location
-
- tabres1:
- cmp di, TabEnd ;check if at end
- je tabres3
- cmp cx, 8 ;check if at tab stop
- je tabres2
- inc cx
- inc di
- jmp tabres1
-
- tabres2:
- mov BYTE PTR [di], 1
- sub cx, cx
- jmp tabres1
-
- tabres3:
- pop di
- pop cx
- ret
- TabReset endp
-
- _TEXT ends
-
- end