Category : Assembly Language Source Code
Archive   : DSKPATCH.ZIP
Filename : DSKPATCH.ASM

 
Output of file : DSKPATCH.ASM contained in archive : DSKPATCH.ZIP
;---------------------------------------------------------------------;
; DSKPATCH.ASM MAIN PROGRAM, CALLS ALL REQUIRED PROCEDURES ;
; CV*04-30-89 ;
; ;
; Compiled with: DISK_IO, DISP_SEC, VIDEO_IO, CURSOR, DISPATCH ;
; KBD_IO, PHANTOM, EDITOR ;
;---------------------------------------------------------------------;

CGROUP GROUP CODE_SEG, DATA_SEG
ASSUME CS:CGROUP, DS:CGROUP

CODE_SEG SEGMENT PUBLIC
ORG 100h

EXTRN CLEAR_SCREEN:NEAR, READ_SECTOR:NEAR
EXTRN INIT_SEC_DISP:NEAR, WRITE_HEADER:NEAR
EXTRN WRITE_PROMPT_LINE:NEAR, DISPATCHER:NEAR
DISK_PATCH PROC NEAR
CALL CLEAR_SCREEN
CALL WRITE_HEADER
CALL READ_SECTOR
CALL INIT_SEC_DISP
LEA DX,EDITOR_PROMPT
CALL WRITE_PROMPT_LINE
CALL DISPATCHER
INT 20h
DISK_PATCH ENDP

CODE_SEG ENDS


DATA_SEG SEGMENT PUBLIC

PUBLIC SECTOR_OFFSET
;---------------------------------------------------------------------;
; SECTOR_OFFSET is the offset of the half sector display into the ;
; full sector. It must be a multiple of 16, and not greater than 256 ;
;---------------------------------------------------------------------;
SECTOR_OFFSET DW 0

PUBLIC CURRENT_SECTOR_NO, DISK_DRIVE_NO, HEADER_COLOR
PUBLIC PROMPT_LINE_COLOR, SEC_DISP_COLOR, PHANTOM_COLOR
PUBLIC COLOR
CURRENT_SECTOR_NO DW 0 ;Initially sector 0
DISK_DRIVE_NO DB 0 ;Initially drive A:
PROMPT_LINE_COLOR DB 70h ;Prompt color
HEADER_COLOR DB 4Fh ;Header color
SEC_DISP_COLOR DB 1Fh ;Sector display color
PHANTOM_COLOR DB 2Ch ;Phantom cursor color
COLOR DB 1Fh ;Color variable used in WRITE_CHAR

PUBLIC HEADER_PART_1, HEADER_PART_2, HEADER_PART_3
PUBLIC LINES_BEFORE_SECTOR, HEADER_LINE_NO
;---------------------------------------------------------------------;
; LINES_BEFORE_SECTOR is the number of lines at the top of the screen ;
; before the half sector display. ;
;---------------------------------------------------------------------;
LINES_BEFORE_SECTOR DB 2
HEADER_LINE_NO DB 0
HEADER_PART_1 DB 'Disk ',0
HEADER_PART_2 DB ' SECTOR ',0
HEADER_PART_3 DB ' FLOPPY DISK EDITOR',0
PUBLIC PROMPT_LINE_NO, EDITOR_PROMPT
PROMPT_LINE_NO DB 21
EDITOR_PROMPT DB ' F1=Pre-sec F2=nex-sec F3=+sec F4=-sec '
DB ' ShiftF5=write F6=A: F7=B: F8=D: '
DB ' '
DB ' '
DB ' '
DB 'Press function key, or enter'
DB ' character or hex byte: ',0


PUBLIC SECTOR
;---------------------------------------------------------------------;
; The entire sector (up to 8192 bytes) is stored in this ;
; part of memory ;
;---------------------------------------------------------------------;
SECTOR DB 1024 DUP (0)

DATA_SEG ENDS

END DISK_PATCH



  3 Responses to “Category : Assembly Language Source Code
Archive   : DSKPATCH.ZIP
Filename : DSKPATCH.ASM

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/