COMMENT * PROCEDURE DRAWHIM CREDITS: Robert Kong, Albert Ming (debug) IN: you NEED TO CALL SETSCRN.ASM B4 you call this procedure specify AL = color b4 calling this procedure. and HISPOS holds the column co-ordinates for where, the Figure should be drawn. OUT: draws the bloody figure HOW: Drawhim draws the figure using pixel/pixel format. it checks HISPOS by looking to that array. then, with CX holding that info from MYINFO. The figure will be drawn starting at position Row(dx) = 261. it'll begin drawing from the armpit of the back arm. When it reaches the sword arm, we call a procedure "DRAWARM" which will draw the appropriate arm, depending on what figure it should be. returning to the drawme proc, it'll draw the stomach, and then call the "DRAWLEG" procedure which willd raw the leg, depending again on what graphic this is. Then the procedure returns to the main procedure * COMMENT DRAWHIM PROC PUSH BX PUSH CX PUSH DX ; clear all the registers = 0. except AX, because we need al for input. ;XOR BX, BX ;XOR CX, CX ;XOR DX, DX ; al is given by the user, before calling this procedure MOV AH, 0CH MOV BH, 0 ; set page to 0 ;DRAW FIGURE CALL RETHISPOS ; call outside procedure to get column number MOV DX,261 L1: INT 10H INC DX CMP DX,286 JL L1 ;the hand DEC CX INT 10H DEC CX INC DX INT 10H INC DX INT 10H INC DX INT 10H INC DX INC CX INT 10H INC DX INT 10H INC DX L2: INT 10H INC DX CMP DX,294 JL L2 INC DX INC CX INT 10H INC CX INT 10H INC DX INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX DEC DX INT 10H INC CX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX L3: INT 10H DEC DX CMP DX,284 JG L3 DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX INT 10H ADD DX,2 ADD CX,10 L4: INT 10H DEC DX CMP DX,257 JG L4 DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;start of neck,well really the head since he got NO NECK! hehe DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX DEC DX L5: INT 10H DEC DX CMP DX,234 JG L5 DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX L6: INT 10H INC DX CMP DX,248 JL L6 INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX L7: INT 10H DEC DX CMP DX,225 JG L7 ADD DX,22 INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H SUB CX,13 SUB DX,19 ;the face mask INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H DEC CX SUB DX,2 INT 10H SUB DX,3 INT 10H SUB DX,3 INT 10H SUB DX,3 INT 10H SUB DX,3 INT 10H SUB DX,3 INT 10H DEC CX INT 10H ADD DX,3 INT 10H ADD DX,3 INT 10H ADD DX,3 INT 10H ADD DX,3 INT 10H ADD DX,3 INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H SUB DX,2 INT 10H DEC DX INT 10H SUB DX,2 INT 10H DEC DX INT 10H SUB DX,2 INT 10H DEC DX INT 10H SUB DX,2 INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H ADD DX,3 INT 10H ADD DX,3 INT 10H ADD DX,3 INT 10H DEC CX INT 10H SUB DX,3 INT 10H SUB DX,3 INT 10H SUB DX,3 INT 10H DEC CX INC DX INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H ADD DX,2 INT 10H INC DX INT 10H ;(99,249)? ;ugly face is done! ADD CX,6 ADD DX,8 INT 10H ; CALL the arm!! CALL HDRAWARM ;back to the body ADD DX,8 L8: INT 10H INC DX CMP DX,290 JL L8 INT 10H ; CALL THE FRONT LEG CALL HDRAWLEG ;back to body INC CX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H ;read keyboard ;mov ah,0 ;int 16h ;MOV AX,3 ;INT 10H ;MOV AH,4CH ;INT 21H ;MOV AH,0CH ;MOV AL,3 ;MOV BH,0 ;MOV DX,261 ; leg is done POP DX POP CX POP BX RET DRAWHIM ENDP H_CROTCH PROC ;back to the free body INC CX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INT 10H DEC DX INT 10H INC CX ADD DX,2 INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H ;(144,302)? RET H_CROTCH ENDP ;TITLE ROBS_MOD: THE COMP'S FIGURE ;contains arm_enguard, arm_high_strike, arm_high_guard ; arm_mid_strike, arm_mid_guard ; arm_low_strike, arm_low_guard ; back_leg_strike, back_leg_walk ; front_leg, front_leg_walk ;EXTRN TESTG ;PUBLIC DRAW_HIM ;.MODEL SMALL ;.DATA ;.CODE arm_enguard PROC push dx push cx INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX INT 10H SUB DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX DEC CX INT 10H INC DX INT 10H INC DX INT 10H INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX ADD CX,2 INT 10H INC DX INT 10H INC DX INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INC DX JE1: INT 10H INC DX CMP DX,268 JL JE1 INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX JE2: INT 10H DEC DX CMP DX,260 JG JE2 ADD DX,9 SUB CX,5 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H INC CX INT 10H SUB CX,2 DEC DX JE3: INT 10H DEC DX CMP DX,258 JG JE3 DEC DX SUB CX,4 JE4: INT 10H INC DX CMP DX,266 JL JE4 INC DX INC CX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC DX INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H SUB DX,22 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC CX INC DX INT 10H DEC CX INT 10H DEC CX INT 10H INC CX INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC CX INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC DX DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;on to the blade SUB DX,5 ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;blade is done ;starting the bottom part of arm ADD CX,65 ADD DX,67 INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H pop cx pop dx RET arm_enguard ENDP ; arm_high_strike proc push dx push cx INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H ;top of arm DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ADD DX,12 ;bottom of arm INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H ;(139,264) SUB DX,11 SUB CX,28 INT 10H ;top hand doin it in a circular loop DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC DX SUB CX,2 INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H ;hand is done (97,258) ADD DX,9;to the lance(BOT part) SUB CX,3 INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX LHHIT1: INT 10H DEC DX CMP DX,249 JG LHHIT1 INC CX ADD DX,2 INT 10H ;1 DEC DX INT 10H INC CX ;2 INT 10H DEC DX INT 10H INC CX ;3 INT 10H DEC DX INT 10H INC CX ;4 INT 10H DEC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H ;(103,247) end of handle ADD DX,4 SUB CX,15 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H ;END S LOOP INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX ;S LOOP DEC CX INT 10H DEC DX INT 10H DEC DX INT 10H DEC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H pop cx pop dx RET arm_high_strike endp ; ;Procedure to display the arm in a high guard position arm_high_guard proc push dx push cx INC DX INT 10H INC DX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC DX INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC DX INC CX INT 10H INC CX INT 10H DEC DX INC CX INT 10H INC CX INT 10H DEC DX INC CX INT 10H INC CX INT 10H DEC DX INC CX INT 10H ;(96,270) end of arm SUB DX,14 SUB CX,26 INT 10H ;onto the hand DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H INC CX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX INT 10H INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H SUB CX,4 INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H ;(69,253) SUB DX,2 SUB CX,6 LHIGUR1: INT 10H DEC DX CMP DX,245 JG LHIGUR1 INC CX ADD DX,2 LHIGUR2: INT 10H DEC DX CMP DX,244 JG LHIGUR2 INC CX ADD DX,2 LHIGUR3: INT 10H DEC DX CMP DX,243 JG LHIGUR3 INC CX ADD DX,2 LHIGUR4: INT 10H DEC DX CMP DX,242 JG LHIGUR4 INC CX ADD DX,2 INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INC CX INT 10H DEC DX INT 10H DEC DX INT 10H LHIGUR5: INT 10H DEC DX CMP DX,240 JG LHIGUR5 INC CX ADD DX,2 INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC DX DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H SUB CX,2 ADD DX,3 INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX INC DX INT 10H INC CX INT 10H ;end of handle (83,249) SUB CX,7 SUB DX,10 INT 10 INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H DEC DX INT 10H pop cx pop dx RET arm_high_guard endp ; ;i'm going to darw the arm and hand in a circular loop arm_low_strike proc push dx push cx DEC DX ;top part of arm INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy DEC CX ;loopy part INC DX INT 10H DEC CX INT 10H ;end loopy INC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INC DX LLOW1: INT 10H INC DX CMP DX,274 JL LLOW1 INC DX INC CX INT 10H INC DX INC CX INT 10H INC CX INT 10H DEC DX INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX DEC DX INT 10H INC CX INT 10H DEC DX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H ADD CX,4 ADD DX,3 INT 10H INC CX INT 10H INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX ;loopy for arm back to body DEC DX INT 10H INC CX INT 10H ;end loopy INC CX DEC DX ADD DX,16 SUB CX,25 INT 10H ;onto the lance DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INC DX LLOW2: INT 10H DEC DX CMP DX,273 JG LLOW2 DEC DX DEC CX LLOW3: INT 10H INC DX CMP DX,275 JL LLOW3 DEC CX LLOW4: INT 10H DEC DX CMP DX,272 JG LLOW4 DEC CX ADD DX,3 LLOW5: INT 10H DEC DX CMP DX,267 JG LLOW5 INC CX INT 10H DEC DX INT 10H INC CX INT 10H DEC DX INT 10H INC CX INT 10H DEC DX INT 10H INC CX INT 10H DEC DX INT 10H INC CX INT 10H ;the handle is now done ADD DX,11 SUB CX,3 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;1 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;2 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;3 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;4 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;5 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;6 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;7 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;8 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;9 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;10 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;11 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;12 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;13 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;14 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;15 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;16 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;17 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;18 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;19 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;20 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;21 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;22 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;23 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;24 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;25 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;26 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;27 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;28 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;29 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;30 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;31 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;32 INC DX ;start loopp for blade ADD CX,2 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;end loopp pop cx pop dx RET arm_low_strike endp ; ;Procedure to display the arm in a low guard position arm_low_guard proc push dx push cx DEC CX INC DX INT 10H INC DX INT 10H INC DX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX LLOWGUR1: INT 10H INC DX CMP DX,279 JL LLOWGUR1 INC CX INC DX INT 10H INC CX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX DEC DX INT 10H DEC DX INT 10H DEC DX INC CX INT 10H LLOWGUR2: INT 10H INC DX CMP DX,284 JL LLOWGUR2 DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H INC CX DEC DX INT 10H ;the arm and hard is now done ;(96,275) ADD CX,5 ADD DX,3 INT 10H DEC DX INT 10H DEC DX INT 10H INC CX INT 10H DEC DX INT 10H INC CX INT 10H DEC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC DX INT 10H INC CX INT 10H INC DX INT 10H INC DX INT 10H INC CX LLOWGUR3: INT 10H INC DX CMP DX,288 JL LLOWGUR3 DEC CX INT 10H INC DX INT 10H INC DX INT 10H ;done with handle(111,290) SUB CX,2 SUB DX,8 INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX; INC DX INT 10H DEC DX INT 10H pop cx pop dx RET arm_low_guard endp ; arm_mid_guard proc push dx push cx INC DX DEC CX INT 10H INC DX INT 10H INC DX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;done with top par of arm ADD DX,10 INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H; done with bottom part of arm DEC DX SUB CX,13 LARMG1: INT 10H DEC DX CMP DX,266 JG LARMG1 DEC CX INT 10H DEC CX LARMG2: INT 10H DEC DX CMP DX,260 JG LARMG2 DEC CX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H INC DX INT 10H INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INC DX LARMG3: INT 10H INC DX CMP DX,272 JL LARMG3 INC CX INC DX INT 10H INC DX INT 10H INC CX DEC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX DEC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC DX SUB CX,3 LARMG4: INT 10H DEC DX CMP DX,267 JG LARMG4 DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H ;done with the hand SUB CX,6 ADD DX,10 LARMG5: INT 10H DEC DX CMP DX,259 JG LARMG5 DEC CX INC DX LARMG6: INT 10H INC DX CMP DX,273 JL LARMG6 ADD CX,2 SUB DX,13 INT 10H DEC DX INT 10H DEC DX INT 10H INC DX INC CX INT 10H DEC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ;done with the handle DEC DX ADD CX,3 LARMG7: INT 10H DEC DX CMP DX,201 JG LARMG7 INC CX LARMG8: INT 10H INC DX CMP DX,256 JL LARMG8 pop cx pop dx RET arm_mid_guard endp ; arm_mid_strike proc push dx push cx INC DX INT 10H INC DX INT 10H DEC CX INC DX INT 10H ;top of arm DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H ADD DX,12 ;bottom of arm INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H ;(139,264) SUB DX,11 SUB CX,28 INT 10H ;top hand doin it in a circular loop DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H INC DX INT 10H INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC DX SUB CX,2 INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H ;hand is done (97,258) ADD DX,9;to the lance(BOT part) ADD CX,3 INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX LMIDARM1: INT 10H DEC DX CMP DX,250 JG LMIDARM1 DEC CX INC DX LMIDARM2: INT 10H INC DX CMP DX,261 JL LMIDARM2 ADD CX,2 SUB DX,10 INT 10H DEC DX INT 10H DEC DX INT 10H INC CX INC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX INC DX INT 10H DEC DX INT 10H DEC DX INT 10H INC CX INC DX INT 10H DEC DX INT 10H INC CX INT 10H ;(94,247) ADD DX,6 SUB CX,7 INT 10H ;onto the blade! DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H pop cx pop dx RET arm_mid_strike endp ; back_leg_slide proc push cx push dx INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC CX INC DX INT 10H INC DX INT 10H INC DX INT 10H INC CX LBL1: INT 10H INC DX CMP DX,344 JL LBL1 INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX LBL2: INT 10H DEC DX CMP DX,339 JG LBL2 DEC DX DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC CX DEC DX INT 10H DEC DX INT 10H DEC DX INT 10H pop dx pop cx RET back_leg_slide endp ; back_leg_walk proc push cx push dx INC DX BGLEG1: INT 10H INC DX CMP DX,335 JL BGLEG1 INC CX INT 10H BGLEG2: INT 10H INC DX CMP DX,344 JL BGLEG2 INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H BGLEG3: INT 10H DEC DX CMP DX,339 JG BGLEG3 DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX DEC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H SUB CX,5 DEC DX INT 10H BGLEG4: INT 10H DEC DX CMP DX,296 JG BGLEG4 pop dx pop cx RET back_leg_walk endp ; front_leg proc push dx push cx INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX LFLEG1: INT 10H INC DX CMP DX,337 JL LFLEG1 DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H INC DX DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INC DX INT 10H LFLEG2: INT 10H INC DX CMP DX,344 JL LFLEG2 INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H INC CX INT 10H LFLEG3: INT 10H DEC DX CMP DX,335 JG LFLEG3 DEC CX INC DX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC CX INT 10H DEC DX ADD CX,12 LFLEG4: INT 10H DEC DX CMP DX,313 JG LFLEG4 INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H INC CX DEC DX INT 10H pop cx pop dx RET front_leg endp ; front_leg_walk proc push dx push cx INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H INC DX DEC CX INT 10H DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC CX INC DX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC DX DEC CX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H DEC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H INC CX INC DX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H DEC DX INT 10H DEC CX INT 10H ADD CX,9 ADD DX,7 INT 10H DEC DX INC CX INT 10H INC CX INC DX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H DEC DX INC CX INT 10H pop cx pop dx RET front_leg_walk endp COMMENT * HDRAWARM PROC IN: CALLED FROM DRAWME PROCEDURE WITH all the pixel input values set. HISINFO[6] MUST hold the graphic figure number. OUT: draws the bloody arm HOW: We save the registers, and then look at HISINFO[6] for the graphic numbers. depending on what number it is, we draw a different arm. then we return to the drawme procedure. * COMMENT HDRAWARM PROC ; check what action the figure is doing. ; we check this by looking at HISINFO[6]. ; at the moment, it'll default to en'guard position. ; SAVE REGISTERS PUSH AX PUSH BX PUSH CX PUSH DX XOR CX, CX MOV CL, HISINFO[6] CMP CX, 1 ; basically, if cx is grpahic 0/1 it goes to JLE HENWALKARM ; enwalk = engarde/walk ; if cx > 1, but cx = < 4, then it goes to CMP CX, 4 ; strikearm, which calls the strike graphics JLE HSTRIKEARM ; if cx > 4, but < 7 it goes to guard arm to ; call the guarding grphics CMP CX, 7 JLE HGUARDARM ; IF error occurs, it'll default to enwalkarm. HENWALKARM: POP DX POP CX POP BX POP AX CALL ARM_ENGUARD JMP HDONEARM HSTRIKEARM: ; here, we check cx, for 2, 3, 4 and call the CMP CX, 2 ; perspective graphic files JE HSTRKH CMP CX, 3 JE HSTRKM CMP CX, 4 JE HSTRKL HSTRKH: POP DX POP CX POP BX POP AX CALL ARM_HIGH_STRIKE JMP HDONEARM HSTRKM: POP DX POP CX POP BX POP AX CALL ARM_MID_STRIKE JMP HDONEARM HSTRKL: POP DX POP CX POP BX POP AX CALL ARM_LOW_STRIKE JMP HDONEARM HGUARDARM: ; CHECK cx for 5, 6, 7 for guard and draws CMP CX, 5 ; each perspective file JE HGUARDH CMP CX, 6 JE HGUARDM CMP CX, 7 JE HGUARDL HGUARDH: POP DX POP CX POP BX POP AX CALL ARM_HIGH_GUARD JMP HDONEARM HGUARDM: POP DX POP CX POP BX POP AX CALL ARM_MID_GUARD JMP HDONEARM HGUARDL: POP DX POP CX POP BX POP AX CALL ARM_LOW_GUARD JMP HDONEARM HDONEARM: RET HDRAWARM ENDP HDRAWLEG PROC ;we check hisinfo[6] ;save registers PUSH AX PUSH BX PUSH CX PUSH DX XOR CX, CX MOV CL, HISINFO[6] CMP CX, 0 JE HGUARDLEG CMP CX, 1 JE HWALKLEG CMP CX, 4 JLE HSTRIKELEG CMP CX, 7 JLE HGUARDLEG HGUARDLEG: POP DX POP CX POP BX POP AX CALL FRONT_LEG CALL H_CROTCH CALL BACK_LEG_WALK JMP HDONELEG HWALKLEG: POP DX POP CX POP BX POP AX CALL FRONT_LEG_WALK CALL H_CROTCH JMP BACK_LEG_WALK HSTRIKELEG: POP DX POP CX POP BX POP AX CALL FRONT_LEG CALL H_CROTCH CALL BACK_LEG_SLIDE JMP HDONELEG HDONELEG: RET HDRAWLEG ENDP COMMENT * TWOPLAYER PROC T_1: CMP SCAN_CODE,LEFT_ARROW ; left arrow? JNE T_2 ; if not goto next CMP HISINFO,4 ; at end of strip? JE MEND2P ; ignore if so. CALL HCLEAROLD ; clear the old one CALL HISWALK ; make him walk a step SUB HISINFO,1 ; move one space back MOV AL,FENCOLOR ; draw a new one CALL DRAWHIM JMP MEND2P ; and check timer flag. T_2: CMP SCAN_CODE,RIGHT_ARROW ; RIGHT ARROW? JNE T_3 ; if not, goto next CMP HISINFO,27 ; at other end of strip? JE MEND2P ; ignore key if so. CALL HCLEAROLD ; clear the old one CALL HISWALK ADD HISINFO,1 ; else add one (move one space) MOV AL,FENCOLOR ; draw a new one CALL DRAWHIM JMP MEND2P ; and check timer flag. T_3: CMP SCAN_CODE,P_KEY ; P? JNE T_4 ; if not, goto next CALL HCLEAROLD MOV HISINFO[4],1 ; set strike to high MOV HISINFO[6],2 ; set to graphic 2 MOV AL,FENCOLOR CALL DRAWHIM JMP MEND2P ; and check timer flag. MEND2P: JMP END2P T_4: CMP SCAN_CODE,COLON ; colon? JNE T_5 ; if not, goto next CALL HCLEAROLD MOV HISINFO[4],2 ; set strike to medium MOV HISINFO[6],3 ; set to graphic 3 MOV AL,FENCOLOR CALL DRAWHIM JMP END2P ; and check timer flag. T_5: CMP SCAN_CODE,PERIOD ; period? JNE T_6 ; if not, goto next CALL HCLEAROLD MOV HISINFO[4],3 ; set strike to low MOV HISINFO[6],4 ; set to graphic 4 MOV AL,FENCOLOR CALL DRAWHIM JMP END2P ; and check timer flag. T_6: CMP SCAN_CODE,LEFTBR ; left bracket? JNE T_7 ; if not, goto next CALL HCLEAROLD MOV HISINFO[3],1 ; set guard to high MOV HISINFO[6],5 ; set to graphic 5 MOV AL,FENCOLOR CALL DRAWHIM JMP END2P ; and check timer flag. T_7: CMP SCAN_CODE,APOSTR ; apostrophe? JNE T_8 CALL HCLEAROLD MOV HISINFO[3],2 ; set guard to medium MOV HISINFO[6],6 ; set to graphic 6 MOV AL,FENCOLOR CALL DRAWHIM JMP END2P ; and check timer flag. T_8: CMP SCAN_CODE,BACKSL ; backslash? JNE END2P ; if not, goto timer flag CALL HCLEAROLD MOV HISINFO[3],3 ; set guard to low MOV HISINFO[6],7 ; set to graphic 7 MOV AL,FENCOLOR CALL DRAWHIM END2P: RET TWOPLAYER ENDP END COMMENT *