home *** CD-ROM | disk | FTP | other *** search
- TITLE SIEVEFIT.ASM - MODULE SieveFitted.MOD
-
- ; Module created 01-05-1991/09:52 by TOBJ2ASM
-
- EXTRN System_INIT:FAR
- EXTRN InOut_INIT:FAR
- EXTRN InOut_WriteString:FAR
- EXTRN InOut_Read:FAR
- EXTRN InOut_WriteLn:FAR
- EXTRN InOut_Write:FAR
- EXTRN InOut_WriteCard:FAR
- EXTRN System_Terminate:FAR
-
- EXTRN DATA_System:BYTE
- EXTRN DATA_InOut:BYTE
- EXTRN System_INIT:BYTE
-
- .286
- .287
-
- CODE SEGMENT PARA 'CODE'
-
- ASSUME CS:CODE
-
- ADD [BX+SI],AL
- PUSH BP
- MOV BP,SP
- PUSH BP
- ADD SP,65528
- MOV DS,CS:[0]
- MOV WORD PTR [BP-4],1
- CMP WORD PTR [BP-4],2000
- JBE lbl1
- JMP lbl9
- lbl1: MOV WORD PTR DS:[8234],0
- MOV WORD PTR [BP-6],0
- CMP WORD PTR [BP-6],8190
- JA lbl3
- lbl2: MOV SI,[BP-6]
- MOV BYTE PTR [SI+40],1
- CMP WORD PTR [BP-6],8190
- JAE lbl3
- INC WORD PTR [BP-6]
- JMP lbl2
- lbl3: MOV WORD PTR [BP-6],0
- CMP WORD PTR [BP-6],8190
- JA lbl8
- lbl4: MOV SI,[BP-6]
- MOV AL,[SI+40]
- ROR AL,1
- JAE lbl7
- MOV AX,[BP-6]
- ADD AX,[BP-6]
- ADD AX,3
- MOV [BP-10],AX
- MOV AX,[BP-6]
- ADD AX,[BP-10]
- MOV [BP-8],AX
- lbl5: CMP WORD PTR [BP-8],8190
- JA lbl6
- MOV SI,[BP-8]
- MOV BYTE PTR [SI+40],0
- MOV AX,[BP-10]
- ADD SS:[BP-8],AX
- JMP lbl5
- lbl6: INC WORD PTR DS:[8234]
- lbl7: CMP WORD PTR [BP-6],8190
- JAE lbl8
- INC WORD PTR [BP-6]
- JMP lbl4
- lbl8: CMP WORD PTR [BP-4],2000
- JAE lbl9
- INC WORD PTR [BP-4]
- JMP lbl1
- lbl9: MOV SP,BP
- POP BP
- RETF 0
-
- PUBLIC SieveFitted_INIT
-
- SieveFitted_INIT PROC FAR
-
- CALL System_INIT
- PUSH BP
- MOV BP,SP
- CALL System_INIT
- CALL InOut_INIT
- MOV DS,CS:[0]
- MOV AX,33
- PUSH AX
- LEA AX,DS:[8236]
- PUSH DS
- PUSH AX
- CALL InOut_WriteString
- MOV DS,CS:[0]
- LEA AX,DS:[8232]
- PUSH DS
- PUSH AX
- CALL InOut_Read
- MOV DS,CS:[0]
- CALL InOut_WriteLn
- MOV DS,CS:[0]
- CALL Code2
- MOV AX,7
- PUSH AX
- CALL InOut_Write
- MOV DS,CS:[0]
- PUSH WORD PTR DS:[8234]
- MOV AX,5
- PUSH AX
- CALL InOut_WriteCard
- MOV DS,CS:[0]
- MOV AX,0
- PUSH AX
- CALL System_Terminate
- MOV DS,CS:[0]
-
- SieveFitted_INIT ENDP ; Size: 120 Byte
-
- CODE ENDS ; Size: 288 Byte
-
- DATA SEGMENT PARA 'DATA'
-
- PUBLIC DATA_SieveFitted
- DATA_SieveFitted LABEL BYTE
- Data0 DB 8236 DUP (0),'Hit a key to start 2000 ITERATIONS',2 DUP (0)
-
- DATA ENDS ; Size: 8272 Byte
-
- STACK SEGMENT PARA STACK 'STACK'
-
- @Stack DB 8192 DUP (?)
-
- STACK ENDS ; Size: 8192 Byte
-
- END
-