home *** CD-ROM | disk | FTP | other *** search
File List | 1994-03-03 | 5.7 KB | 164 lines |
- testyn.lst TESTYN v1.02(c) 1988 V Communica Sourcer v5.50 3-Mar-94 12:48 pm Page 1
-
-
- PAGE 59,132
-
- ;██████████████████████████████████████████████████████████████████████████
- ;██ ██
- ;██ TESTYN ██
- ;██ ██
- ;██ Created: 26-Oct-88 ██
- ;██ Version: 1.02 ██
- ;██ Passes: 5 Analysis Options on: QRS ██
- ;██ (c) 1988 V Communications ██
- ;██ ██
- ;██████████████████████████████████████████████████████████████████████████
-
- .err Target Assembler set to NONE, re-assembly not recommended
-
-
- ;------------------------------------------------------------ seg_a ----
-
- seg_a segment byte public
- assume cs:seg_a , ds:seg_a , ss:stack_seg_b
-
-
- ;██████████████████████████████████████████████████████████████████████████
- ;
- ; Program Entry Point
- ;
- ;██████████████████████████████████████████████████████████████████████████
-
-
- testyn proc far
-
- 4574:0000 start:
- 4574:0000 EB 26 jmp short loc_1 ; (0028)
- 4574:0002 54 45 53 54 59 4E db 'TESTYN v1.02'
- 4574:0008 20 76 31 2E 30 32
- 4574:000E 28 63 29 20 31 39 copyright db '(c) 1988 V Communications'
- 4574:0014 38 38 20 56 20 43
- 4574:001A 6F 6D 6D 75 6E 69
- 4574:0020 63 61 74 69 6F 6E
- 4574:0026 73
- 4574:0027 00 db 0
- 4574:0028 loc_1: ; xref 4574:0000, 003B
- 4574:0028 ·B4 08 mov ah,8
- 4574:002A CD 21 int 21h ; DOS Services ah=function 08h
- ; get keybd char al, no echo
- 4574:002C 0C 60 or al,60h ; '`'
- 4574:002E 3C 79 cmp al,79h ; 'y'
- 4574:0030 74 0B je loc_2 ; Jump if equal
- 4574:0032 3C 6E cmp al,6Eh ; 'n'
- 4574:0034 74 0B je loc_3 ; Jump if equal
- 4574:0036 9A 4585:0000 call far ptr sub_1 ; (4585:0000)
- 4574:003B EB EB jmp short loc_1 ; (0028)
- 4574:003D loc_2: ; xref 4574:0030
- 4574:003D B0 01 mov al,1
- 4574:003F EB 02 jmp short loc_4 ; (0043)
- 4574:0041 loc_3: ; xref 4574:0034
- testyn.lst TESTYN v1.02(c) 1988 V Communica Sourcer v5.50 3-Mar-94 12:48 pm Page 2
-
- 4574:0041 32 C0 xor al,al ; Zero register
- 4574:0043 loc_4: ; xref 4574:003F
- 4574:0043 B4 4C mov ah,4Ch
- 4574:0045 CD 21 int 21h ; DOS Services ah=function 4Ch
- ; terminate with al=return code
- 4574:0047 0009[00] db 9 dup (0)
-
- testyn endp
-
- seg_a ends
-
-
-
- ;------------------------------------------------------ stack_seg_b ----
-
- stack_seg_b segment word stack 'STACK'
-
- 4579:0000 00C0[00] db 192 dup (0)
-
- stack_seg_b ends
-
-
-
- ;------------------------------------------------------------ seg_c ----
-
- seg_c segment byte public
- assume cs:seg_c , ds:seg_c , ss:stack_seg_b
-
-
- ;▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
- ; SUBROUTINE
- ;
- ; Called from: 4574:0036
- ;▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
-
- sub_1 proc far
- 4585:0000 0E push cs
- 4585:0001 1F pop ds
- 4585:0002 FA cli ; Disable interrupts
- 4585:0003 8B 16 0038 mov dx,data_5 ; (4585:0038=61h)
- 4585:0007 EC in al,dx ; port 61h, 8255 port B, read
- 4585:0008 24 FE and al,0FEh
- 4585:000A 8B 1E 003C mov bx,data_7 ; (4585:003C=50h)
- 4585:000E loc_5: ; xref 4585:0021
- 4585:000E 0C 02 or al,2
- 4585:0010 EE out dx,al ; port 61h, 8255 B - spkr, etc
- 4585:0011 8B 0E 003A mov cx,data_6 ; (4585:003A=64h)
-
- 4585:0015 locloop_6: ; xref 4585:0015
- 4585:0015 E2 FE loop locloop_6 ; Loop if cx > 0
-
- 4585:0017 24 FD and al,0FDh
- 4585:0019 EE out dx,al ; port 61h, 8255 B - spkr, etc
- 4585:001A 8B 0E 003A mov cx,data_6 ; (4585:003A=64h)
-
- 4585:001E locloop_7: ; xref 4585:001E
- 4585:001E E2 FE loop locloop_7 ; Loop if cx > 0
- testyn.lst TESTYN v1.02(c) 1988 V Communica Sourcer v5.50 3-Mar-94 12:48 pm Page 3
-
-
- 4585:0020 4B dec bx
- 4585:0021 75 EB jnz loc_5 ; Jump if not zero
- 4585:0023 FB sti ; Enable interrupts
- 4585:0024 ·BA 002C mov dx,offset data_4 ; (4585:002C='Yes or No ?')
- 4585:0027 B4 09 mov ah,9
- 4585:0029 CD 21 int 21h ; DOS Services ah=function 09h
- ; display char string at ds:dx
- 4585:002B CB retf ; Return far
- sub_1 endp
-
- 4585:002C 59 65 73 20 6F 72 data_4 db 'Yes or No ?$' ; xref 4585:0024
- 4585:0032 20 4E 6F 20 3F 24
- 4585:0038 0061 data_5 dw 61h ; xref 4585:0003
- 4585:003A 0064 data_6 dw 64h ; xref 4585:0011, 001A
- 4585:003C 0050 data_7 dw 50h ; xref 4585:000A
-
- seg_c ends
-
-
-
- end start
- testyn.lst TESTYN v1.02(c) 1988 V Communica Sourcer v5.50 3-Mar-94 12:48 pm Page 4
-
-
- ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ CROSS REFERENCE - KEY ENTRY POINTS ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
-
- seg:off type label
- ---- ---- ---- --------------------------------
- 4574:0000 far start
-
- ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ Interrupt Usage Synopsis ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
-
- Interrupt 21h : DOS Services ah=function xxh
- Interrupt 21h : ah=08h get keybd char al, no echo
- Interrupt 21h : ah=09h display char string at ds:dx
- Interrupt 21h : ah=4Ch terminate with al=return code
-
- ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒ I/O Port Usage Synopsis ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
-
- Port 61h : 8255 port B, read
- Port 61h : 8255 B - spkr, etc
-
-