




ARM0_1  PROC


INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H

DEC     DX
INC     CX
INT     10H
INC     DX
INT     10H

INC     CX
INC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

INC     CX
INC     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
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

; NOW WE DRAW THE HAND. AND THE SWORD.

INC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     DX
INT     10H

LP15:
DEC     DX
INT     10H
CMP     DX, 254
JG      LP15

INC     CX
INT     10H
INC     CX
INT     10H

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H

INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

PUSH    CX      ;SAVE position for hand
PUSH    DX

INC     CX
INT     10H
INC     CX
INT     10H

INC     CX
INC     DX
INT     10H

LP16:
INC     DX
INT     10H
CMP     DX, 266
JL      LP16

INC     DX
DEC     CX
INT     10H
INC     DX
INT     10H
DEC     DX
DEC     CX
INT     10H
INC     DX
INT     10H
INC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

POP     DX      ; return to top of hand for other
POP     CX

INC     DX
INT     10H
INC     DX
INT     10H

INC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INC     DX
INT     10H

LP17:
INC     DX
INT     10H
CMP     DX, 268
JL      LP17

DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

PUSH    CX      ;SAVES location at bottom of hand 2x for 
PUSH    DX      ;1. sword drawing and 2. finish arm.
PUSH    CX
PUSH    DX


LP18:
DEC     DX
INT     10H
CMP     DX, 260
JG      LP18

;setup for sword guard
POP     DX
POP     CX

INC     DX
INC     DX
INC     DX
INC     DX
INC     CX
INC     CX
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
DEC     DX
INT     10H
DEC     DX
INT     10H

DEC     DX
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
DEC     DX
INT     10H

LP19:
DEC     DX
INT     10H
CMP     DX, 257
JG      LP19

LPDIAG3:
DEC     CX
DEC     DX
INT     10H
CMP     DX, 252
JG      LPDIAG3

PUSH    CX      ; save location for sword blade
PUSH    DX

DEC     DX
DEC     DX
DEC     CX
DEC     CX
DEC     CX
INT     10H

LPDIAG4:
INC     CX
INC     DX
INT     10H
CMP     DX, 256
JL      LPDIAG4

DEC     CX
INT     10H

LPDIAG5:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 250
JG      LPDIAG5

DEC     CX
DEC     CX
DEC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

LPDIAG6:
INC     CX
INC     DX
INT     10H
CMP     DX, 256
JL      LPDIAG6

POP     DX      ; return to sword blade
POP     CX

LP20:
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
DEC     DX
DEC     CX
DEC     CX
CMP     DX, 200
JG      LP20

; NOW WE GO BACK TO THE HAND TO FINISH THE ARM

POP     DX      ; back to the arm
POP     CX

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
INT     10H
DEC     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

; ARM IS DONE. AT DX = 269

RET

ARM0_1  ENDP




ARM2        PROC

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
INC     DX
INT     10H

;Now is the long arm line

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

; DRAW HAND

INC     CX
INC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

LPDIAG39:
INC     CX
DEC     DX
INT     10H
CMP     DX, 249
JG      LPDIAG39

INC     CX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H
DEC     CX
INC     DX
INT     10H

LPDIAG40:
INC     CX
INC     DX
INT     10H
CMP     DX, 256
JL      LPDIAG40

INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H

LPDIAG41:
DEC     CX
INC     DX
INT     10H
CMP     DX, 263
JL      LPDIAG41

PUSH    CX      ;save position for sword
PUSH    DX

;setup for sword

INC     DX
INC     DX
INC     DX
INC     DX
INC     DX

PUSH    CX
PUSH    DX

LPDIAG42:
DEC     DX
INC     CX
INT     10H
CMP     DX, 263
JG      LPDIAG42

POP     DX
POP     CX

INC     CX

LPDIAG43:
DEC     DX
INC     CX
INT     10H
CMP     DX, 263
JG      LPDIAG43

LP53:
DEC     DX
INT     10H
CMP     DX, 252
JG      LP53

LPDIAG44:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 247
JG      LPDIAG44

PUSH    CX
PUSH    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

POP     DX
POP     CX

INC     CX
INT     10H

LPDIAG45:
INC     DX
INC     CX
INT     10H
CMP     DX, 251
JL      LPDIAG45

INC     CX
INT     10H

;setup for sword blade
DEC     DX
DEC     CX
DEC     CX
DEC     CX
DEC     CX

LPDIAG46:
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
DEC     CX
DEC     CX
DEC     CX
CMP     DX, 216
JG      LPDIAG46

INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
DEC     DX
INT     10H
DEC     CX
INT     10H
;DONE WITH SWORD

POP     DX      ;return to hand
POP     CX

DEC     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

LPDIAG47:
INC     CX
DEC     DX
INT     10H
CMP     DX, 258
JG      LPDIAG47

LPDIAG48:
INC     DX
DEC     CX
INT     10H
CMP     DX, 263
JL      LPDIAG48

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
INT     10H
DEC     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     DX
INT     10H
DEC     DX
INT     10H
DEC     DX
INT     10H
DEC     DX
INT     10H

LP54:
INC     DX
INT     10H
CMP     DX, 269
JL      LP54

;arm is done!

RET

ARM2        ENDP

ARM3        PROC

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
INC     DX
INT     10H

;Now is the long arm line

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

; DRAW HAND

INC     CX
INC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

LPDIAG30:
INC     CX
DEC     DX
INT     10H
CMP     DX, 249
JG      LPDIAG30

INC     CX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H
DEC     CX
INC     DX
INT     10H

LPDIAG31:
INC     CX
INC     DX
INT     10H
CMP     DX, 256
JL      LPDIAG31

INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H

LPDIAG32:
DEC     CX
INC     DX
INT     10H
CMP     DX, 263
JL      LPDIAG32

DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

PUSH    CX      ;save position for sword
PUSH    DX

;sword setup
INC     DX
INC     DX
INC     DX
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

LPDIAG33:
DEC     DX
INT     10H
INC     CX
INT     10H
CMP     DX, 263
JG      LPDIAG33

LP50:
DEC     DX
INT     10H
CMP     DX, 252
JG      LP50

LPDIAG34:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 247
JG      LPDIAG34

INC     CX
INT     10H

PUSH    CX
PUSH    DX

LPDIAG35:
INC     DX
INC     CX
INT     10H
CMP     DX, 251
JL      LPDIAG35

POP     DX
POP     CX

INC     CX
INT     10H

LPDIAG36:
INC     DX
INC     CX
INT     10H
CMP     DX, 251
JL      LPDIAG36

LP51:
INC     DX
INT     10H
CMP     DX, 261
JL      LP51

;setup for sword blade

DEC     DX
DEC     DX
DEC     DX
DEC     DX
DEC     DX
DEC     DX

; now we draw the blade.
LOOPBLADE:
PUSH    CX
PUSH    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
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
JMP     BLADECONTINUE
BACKBLADE:
JMP     LOOPBLADE

BLADECONTINUE:
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
JMP     BLADECONT2

BACKBLADE2:
JMP     BACKBLADE

BLADECONT2:
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
POP     DX
POP     CX
DEC     DX
CMP     DX, 253
JG      BACKBLADE2

;NOW WE GO BACK TO HAND

POP     DX      ;return to hand
POP     CX

DEC     CX
INT     10H
DEC     CX
INT     10H

LPDIAG37:
INC     CX
DEC     DX
INT     10H
CMP     DX, 258
JG      LPDIAG37

LPDIAG38:
INC     DX
DEC     CX
INT     10H
CMP     DX, 263
JL      LPDIAG38

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
INT     10H
DEC     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     DX
INT     10H
DEC     DX
INT     10H
DEC     DX
INT     10H
DEC     DX
INT     10H

LP52:
INC     DX
INT     10H
CMP     DX, 269
JL      LP52

;arm is done!

RET

ARM3        ENDP
ARM4    PROC

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H

LPDIAG49:
INC     CX
INT     10H
INC     CX
INT     10H
INC     DX
CMP     DX, 266
JL      LPDIAG49

DEC     CX
INT     10H
INC     DX
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INC     DX
INT     10H

PUSH    CX      ;SAVE POSITION FOR SWORD
PUSH    DX

;SETUP FOR SWORD

DEC     DX
DEC     DX
DEC     DX
DEC     DX
DEC     DX
DEC     DX
DEC     CX

PUSH    CX
PUSH    DX

LPDIAG50:
INC     CX
INC     DX
INT     10H
CMP     DX, 267
JL      LPDIAG50

POP     DX
POP     CX

INC     CX

LPDIAG51:
INC     CX
INC     DX
INT     10H
CMP     DX, 267
JL      LPDIAG51

LP55:
INC     DX
INT     10H
CMP     DX, 271
JL      LP55


LPDIAG52:
DEC     CX
INC     DX
INT     10H
CMP     DX, 278
JL      LPDIAG52

PUSH    CX
PUSH    DX

DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

POP     DX
POP     CX

INC     CX
INT     10H

LPDIAG53:
INC     CX
DEC     DX
INT     10H
CMP     DX, 272
JG      LPDIAG53

INC     DX
INT     10H
INC     DX
DEC     CX
DEC     CX
DEC     CX

; NOW WE DRAW THE BLADE

LPDIAG54:
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     DX
DEC     CX
DEC     CX
DEC     CX
;DEC     CX
CMP     DX, 308
JL      LPDIAG54

POP     DX      ; RETURN TO HAND
POP     CX

INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INC     DX
INT     10H
INC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
INC     DX
DEC     CX
INT     10H

LP56:
INC     DX
INT     10H
CMP     DX, 274
JL      LP56

DEC     CX
INC     DX
INT     10H
DEC     CX
INC     DX
INT     10H
DEC     CX
INT     10H
DEC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     DX
DEC     CX
INT     10H

DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     DX
INT     10H

LPDIAG55:
INC     CX
DEC     DX
INT     10H
CMP     DX, 270
JG      LPDIAG55

LPDIAG56:
DEC     CX
INC     DX
CMP     DX, 273
JL      LPDIAG56

LPDIAG57:
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     DX
CMP     DX, 261
JG      LPDIAG57

INT     10H
DEC     DX
INT     10H

LP57:
INC     DX
INT     10H
CMP     DX, 269
JL      LP57

;DONE WITH ARM

RET

ARM4    ENDP



ARM5    PROC

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H

LPDIAG58:
INC     DX
INC     CX
INT     10H
CMP     DX, 260
JL      LPDIAG58

INC     CX
INT     10H
INC     CX
INT     10H

LPDIAG59:       
INC     CX
DEC     DX
INT     10H
CMP     DX, 250
JG      LPDIAG59


INC     CX
INC     DX
INT     10H
INC     CX
DEC     DX
INT     10H
DEC     DX
INT     10H

DEC     DX
DEC     CX
INT     10H
DEC     DX
INT     10H
DEC     DX
INT     10H
INC     CX
INT     10H

LPDIAG60:
INC     CX
INC     DX
INT     10H
CMP     DX, 248
JL      LPDIAG60

LPDIAG61:
INC     CX
DEC     DX
INT     10H
CMP     DX, 245
JG      LPDIAG61

INC     CX
INT     10H

LPDIAG62:
INC     CX
INC     DX
INT     10H
CMP     DX, 250
JL      LPDIAG62

INC     DX
INT     10H


PUSH    CX      ; SAVE POSITIONO FOR SWORD
PUSH    DX

;sword setup

INC     CX
INC     CX
INT     10H

LP58:
DEC     DX
INT     10H
CMP     DX, 245
JG      LP58


LPDIAG63:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 240
JG      LPDIAG63

DEC     CX
INT     10H

LPDIAG64:
INC     CX
INC     DX
INT     10H
CMP     DX, 246
JL      LPDIAG64

INC     DX

LPDIAG65:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 240
JG      LPDIAG65

PUSH    CX
PUSH    DX

LPDIAG66:
INC     CX
INC     DX
INT     10H
CMP     DX, 248
JL      LPDIAG66

POP     DX
POP     CX

PUSH    CX
PUSH    DX

INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
INT     10H
DEC     CX
DEC     CX
DEC     CX
INT     10H
DEC     CX
INT     10H
INC     CX
DEC     DX
INT     10H

POP     DX
POP     CX

DEC     CX
INT     10H

PUSH    CX
PUSH    DX

LPDIAG67:
INC     DX
DEC     CX
INT     10H
CMP     DX, 243
JL      LPDIAG67

POP     DX
POP     CX

DEC     CX
INT     10H

LPDIAG68:
DEC     CX
INC     DX
INT     10H
CMP     DX, 249
JL      LPDIAG68

DEC     CX
INT     10H

LPDIAG69:
INC     CX
DEC     DX
INT     10H
CMP     DX, 240
JG      LPDIAG69

PUSH    CX      ;SAVE POS FOR BLADE
PUSH    DX

DEC     CX
INT     10H

LPDIAG70:
DEC     CX
INC     DX
INT     10H
CMP     DX, 248
JL      LPDIAG70

POP     DX
POP     CX

;BLADE DRAW

LPDIAG71:
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     DX
INC     CX
INC     CX
CMP     DX, 202
JG      LPDIAG71

DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     DX
INT     10H

POP     DX      ;return to hand
POP     CX

LPDIAG72:
INC     DX
DEC     CX
INT     10H
CMP     DX, 254
JL      LPDIAG72

PUSH    CX
PUSH    DX

LPDIAG73:
DEC     CX
DEC     DX
INT     10H
CMP     DX, 250
JG      LPDIAG73

POP     DX
POP     CX


LPDIAG74:
DEC     CX
INC     DX
INT     10H
CMP     DX, 257
JL      LPDIAG74

PUSH    CX
PUSH    DX

LPDIAG75:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 251
JG      LPDIAG75

POP     DX
POP     CX

INC     DX
INT     10H

LPDIAG76:
INC     DX
DEC     CX
INT     10H
CMP     DX, 274
JL      LPDIAG76

DEC     CX
INT     10H
DEC     CX
INT     10H

LPDIAG77:
DEC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
CMP     DX, 270
JG      LPDIAG77

LP59:
DEC     DX
INT     10H
CMP     DX, 263
JG      LP59

LP60:
INC     DX
CMP     DX, 269
JL      LP60

;done with arm.

RET

ARM5    ENDP





ARM6    PROC

INC     CX
INC     DX
INT     10H
INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
INT     10H
INC     CX

LP61:
INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
CMP     DX, 264
JL      LP61

INC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

;DRAW HAND

INC     CX
INC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

LP62:
DEC     DX
INT     10H
CMP     DX, 260
JG      LP62

INC     CX
INT     10H
INC     CX
INT     10H

INC     CX
INC     DX
INT     10H
INC     DX
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
INC     DX
INT     10H

LP63:
INC     DX
INT     10H
CMP     DX, 272
JL      LP63

DEC     CX
INC     DX
INT     10H
INC     DX
INT     10H

PUSH    CX      ;SAVE POSITOIN FOR SWORD
PUSH    DX

;setup for sword
INC     CX
INC     CX
INC     CX
INC     CX

LP64:
DEC     DX
INT     10H
CMP     DX, 260
JG      LP64

LPDIAG78:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 257
JG      LPDIAG78

DEC     CX
INT     10H

LPDIAG79:
INC     CX
INC     DX
INT     10H
CMP     DX, 261
JL      LPDIAG79

INC     DX

PUSH    CX
PUSH    DX

DEC     CX
INT     10H

LP65:
INC     DX
INT     10H
CMP     DX, 274
JL      LP65

POP     DX
POP     CX

LPDIAG80:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 257
JG      LPDIAG80

DEC     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
DEC     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

;SETUP FOR BLADE

DEC     DX
DEC     CX
DEC     CX

LP66:
DEC     DX
INT     10H
CMP     DX, 201
JG      LP66

DEC     CX
INT     10H

LP67:
INC     DX
INT     10H
CMP     DX, 256
JL      LP67

POP      DX      ;return to hand
POP      CX


DEC     DX
DEC     CX
INT     10H
INC     DX
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     DX
DEC     CX
INT     10H

PUSH    CX
PUSH    DX

LP68:
DEC     DX
INT     10H
CMP     DX, 267
JG      LP68

DEC     DX
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
DEC     DX
INT     10H
DEC     DX
INT     10H

POP     DX
POP     CX

DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

PUSH    CX
PUSH    DX

LP69:
DEC     DX
INT     10H
CMP     DX, 267
JG      LP69

POP     DX
POP     CX

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
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

LP70:
DEC     DX
INT     10H
CMP     DX, 267
JG      LP70

INC     DX
INC     DX

;dx, now at 269

;done with arm

RET

ARM6    ENDP









ARM7    PROC

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
INT     10H
INC     CX

LPDIAG81:
INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
CMP     DX, 274
JL      LPDIAG81

LP71:
INC     DX
INT     10H
CMP     DX, 279
JL      LP71

INC     DX

LPDIAG82:
DEC     CX
INT     10H
DEC     CX
INT     10H
INC     DX
DEC     CX
INT     10H
INC     DX
CMP     DX, 286
JL      LPDIAG82

DEC     CX
INT     10H
DEC     CX
INT     10H
INC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
INC     DX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
INC     DX
INT     10H
DEC     CX
INT     10H
DEC     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
INT     10H


PUSH    CX      ;save positoin for sword
PUSH    DX


;setup sword
DEC     CX
DEC     CX
DEC     CX
INT     10H

LP72:
DEC     DX
INT     10H
CMP     DX, 288
JG      LP72

DEC     CX
INT     10H

LP73:
DEC     DX
INT     10H
CMP     DX, 283
JG      LP73

INC     CX
INT     10H
DEC     DX
INT     10H

LPDIAG83:
DEC     DX
INT     10H
INC     CX
INT     10H
CMP     DX, 277
JG      LPDIAG83

PUSH    CX      ;SAVE position for blade
PUSH    DX

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     DX
INT     10H

POP     DX
POP     CX

;BACK TO DRAW BLADE

LPDIAG84:
INT     10H
DEC     DX
INT     10H
DEC     CX
INT     10H
INC     DX
INT     10H
DEC     DX
DEC     DX
CMP     DX, 219
JG      LPDIAG84

POP     DX
POP     CX

;back to hand

DEC     DX
DEC     CX
INT     10H
DEC     DX
INT     10H
DEC     DX
DEC     CX
INT     10H

LP74:
DEC     DX
INT     10H
CMP     DX, 284
JG      LP74

INC     CX
DEC     DX
INT     10H
DEC     DX
INT     10H

INC     CX
DEC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
DEC     DX
INT     10H
INC     CX
DEC     DX
INT     10H
DEC     DX
INT     10H
INC     CX
INT     10H

INC     CX
INC     DX
INT     10H
INC     DX
INT     10H
INC     CX
INT     10H

INC     CX
DEC     DX
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
DEC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H

LP75:
DEC     DX
INT     10H
CMP     DX, 267
JG      LP75

INC     DX
INC     DX

;dx now at 269

;done with arm

RET

ARM7    ENDP






COMMENT *
DRAWARM PROC
IN:   CALLED FROM DRAWME PROCEDURE WITH all the pixel input values set.
      MYINFO[6] MUST hold the graphic figure number.
OUT:  draws the bloody arm

HOW:  We save the registers, and then look at MYINFO[6] for the graphic
      numbers. depending on what number it is, we draw a different arm.
      then we return to the drawme procedure.


* COMMENT


DRAWARM     PROC

;check what action the figure is doing.
; we check this by looking at MYINFO[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, MYINFO[6]

CMP     CX, 1           ; basically, if cx is grpahic 0/1 it goes to
JLE     ENWALKARM       ; enwalk = engarde/walk
                        ; if cx > 1, but cx = < 4, then it goes to
CMP     CX, 4           ; strikearm, which calls the strike graphics
JLE     STRIKEARM       ; if cx > 4, but < 7 it goes to guard arm to
                        ; call the guarding grphics
CMP     CX, 7
JLE     GUARDARM

; IF error occurs, it'll default to enwalkarm.


ENWALKARM:
POP     DX
POP     CX
POP     BX
POP     AX

CALL ARM0_1

JMP     DONEARM

STRIKEARM:      ; here, we check cx, for 2, 3, 4 and call the
CMP     CX, 2   ; perspective graphic files
JE      STRKH
CMP     CX, 3
JE      STRKM
CMP     CX, 4
JE      STRKL

STRKH:
POP     DX
POP     CX
POP     BX
POP     AX

CALL    ARM2

JMP     DONEARM

STRKM:
POP     DX
POP     CX
POP     BX
POP     AX

CALL    ARM3

JMP      DONEARM

STRKL:
POP     DX
POP     CX
POP     BX
POP     AX

CALL    ARM4

JMP     DONEARM

GUARDARM:       ; CHECK cx for 5, 6, 7 for guard and draws 
CMP     CX, 5   ; each perspective file
JE      GUARDH
CMP     CX, 6
JE      GUARDM
CMP     CX, 7
JE      GUARDL

GUARDH:
POP     DX
POP     CX
POP     BX
POP     AX

CALL   ARM5

JMP     DONEARM

GUARDM:
POP     DX
POP     CX
POP     BX
POP     AX

CALL   ARM6

JMP     DONEARM

GUARDL:
POP     DX
POP     CX
POP     BX
POP     AX

CALL   ARM7

JMP     DONEARM


DONEARM:

RET

DRAWARM     ENDP

DRAWLEG         PROC

;we check myinfo[6]
;save registers
PUSH    AX
PUSH    BX
PUSH    CX
PUSH    DX

XOR     CX, CX

MOV     CL, MYINFO[6]

CMP     CX, 0
JE      GUARDLEG

CMP     CX, 1
JE      WALKLEG

CMP     CX, 4
JLE     STRIKELEG

CMP     CX, 7
JLE     GUARDLEG



GUARDLEG:
POP     DX
POP     CX
POP     BX
POP     AX

CALL    LEG0_5_6_7
JMP     DONELEG

WALKLEG:
POP     DX
POP     CX
POP     BX
POP     AX

CALL    LEG1
JMP     DONELEG

STRIKELEG:
POP     DX
POP     CX
POP     BX
POP     AX

CALL    LEG2_3_4

JMP     DONELEG

DONELEG:

RET

DRAWLEG   ENDP
COMMENT *
IN: you NEED TO CALL SETSCRN.ASM B4 you call this procedure
    specify AL = color b4 calling this procedure. and
    MYINFO[0] holds the column co-ordinates for where, the
    Figure should be drawn.

OUT: draws the bloody figure

HOW: Drawme, draws the figure using pixel/pixel format.  it checks
     MYINFO[0] by designating SI 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

DRAWME  PROC
;save all the registers except for AX, because we need that input

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  <may change>
;MOV     CL, MYINFO[0]   ; set info in myinfo[0] to column number

CALL    RETMYPOS        ; call outside procedure to get column number

MOV     DX, 261

; now we start the drawing.

LP1:
INT     10H
INC     DX              ; increase dx down by one. 20x
CMP     DX, 286         ; 25 spaces?
JL      LP1

;now we draw the hand.

ADD     CX, 1           ; move pixel one space to the right.
INT     10H
ADD     CX, 1   
ADD     DX, 1           ; down one row, for thumb :)
INT     10H
INC     DX
INT     10H
INC     DX      
INT     10H             ; 3X     we draw downwards
INC     DX
INT     10H

INC     DX
DEC     CX              ; position for next line.

INT     10H
DEC     CX
INT     10H
DEC     CX 
INT     10H
        
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
INT     10H

INC     DX
DEC     CX              ; setup for next line.

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     DX
DEC     CX

INT     10H
DEC     CX
INT     10H

DEC     DX
DEC     CX
INT     10H

DEC     DX
DEC     CX
INT     10H

DEC     DX
DEC     CX

LP2:
INT     10H
DEC     DX
CMP     DX, 284
JG      LP2

INC     CX
INT     10H
DEC     DX
INT     10H

PUSH    CX     ; SAVE POSITION
PUSH    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

POP     DX
POP     CX

DEC     CX
DEC     DX

LP3:
INT     10H
DEC     DX
CMP     DX, 257
JG      LP3

LOOPDIAG:
INC     CX
INT     10H
DEC     DX
INT     10H
CMP     DX, 249
JG      LOOPDIAG

INC     CX
INT     10H
INC     CX
INT     10H

DEC     DX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

LP4:
DEC     DX
INT     10H
CMP     DX, 245
JG      LP4

; Now we start to draw the head!!

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     DX
DEC     CX
INT     10H


LP5:
DEC     DX
INT     10H
CMP     DX, 234
JG      LP5


LPDIAG2:
DEC     DX
INC     CX
INT     10H
CMP     DX, 227
JG      LPDIAG2

INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H
INC     CX
INT     10H

PUSH    CX      ; SAVE ADDRESS OF pixel to come back in a bit.
PUSH    DX

; run that long line down the mask of the face

LP6:
INC     DX
INT     10H
CMP     DX, 246
JL      LP6

POP     DX      ; returns cursor to where we were b4 we did that long line
POP     CX

DEC     DX
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

;NOW FOR THE MASK.. THIS IS GOING TO BE RATHER ANNOYING
;I'm going to draw it in terms of vertical lines. Easier that way

INC     DX
INT     10H
INC     DX
INT     10H

PUSH    CX      ;saves location to return from from mask drawing.
PUSH    DX

INC     CX

LP7:
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
CMP     DX, 248
JL      LP7

; return to last mark and make the next vertical column of mask

POP     DX
POP     CX

PUSH    DX
PUSH    CX

; SETUP FOR NEXT MASK COLUMN
INC     CX
INC     CX
INC     DX
INC     DX

LP8:
INC     DX
INT     10H
INC     DX
INC     DX
CMP     DX, 247
JL      LP8

; RETURN TO LAST MARK AGAIN

POP     CX
POP     DX

PUSH    CX
PUSH    DX

INC     CX
INC     CX
INC     CX
INC     DX
INC     DX

LP9:
INC     DX
INT     10H
INC     DX
INC     DX
CMP     DX, 247
JL      LP9

POP     DX
POP     CX

PUSH    CX
PUSH    DX

INC     CX
INC     CX
INC     CX
INC     CX
INC     DX
INC     DX
INC     DX
INC     DX

LP10:
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
CMP     DX, 245
JL      LP10

POP     DX
POP     CX

PUSH    CX
PUSH    DX

INC     CX
INC     CX
INC     CX
INC     CX
INC     CX

INC     DX
INC     DX
INC     DX
INC     DX
INC     DX

LP11:
INC     DX
INT     10H
INC     DX
INC     DX
CMP     DX, 244
JL      LP11

POP     DX
POP     CX

PUSH    CX
PUSH    DX

INC     CX
INC     CX
INC     CX
INC     CX
INC     CX
INC     CX

INC     DX
INC     DX
INC     DX
INC     DX
INC     DX

LP12:
INC     DX
INT     10H
INC     DX
INC     DX
CMP     DX, 244
JL      LP12

POP     DX
POP     CX

PUSH    CX
PUSH    DX

INC     CX
INC     CX
INC     CX
INC     CX
INC     CX
INC     CX
INC     CX

INC     DX
INC     DX
INC     DX
INC     DX
INC     DX
INC     DX

LP13:
INC     DX
INT     10H
INC     DX
INT     10H
INC     DX
CMP     DX, 242
JL      LP13

POP     DX
POP     CX

LP14:
INC     DX
INT     10H
CMP     DX, 248
JL      LP14

PUSH    CX      ; SAVES POSITION ON CHIN FOR ARM MOVEMENT.
PUSH    DX      ; REST OF CODE FINISHED THE HEAD.


DEC     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     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

;FINISH HEAD. cursor on chin.
POP     DX      ; goes back to chin.
POP     CX

;now we call arm procedure

CALL    DRAWARM

; ARM IS DONE, AND now we continue with the body

LP21:
DEC     DX
CMP     DX, 260
JG      LP21

LP22:
INC     DX
INT     10H
CMP     DX, 289
JL      LP22

;now we call the legs procedure. which will change the leg position
;depending on what movement the MYINFO[6] holds.

CALL    DRAWLEG

; leg is done

POP     DX
POP     CX
POP     BX

RET

DRAWME         ENDP


LEG0_5_6_7    PROC

INC     DX
INT     10H

PUSH    CX      ; save position of leg
PUSH    DX

LP23:
INC     CX
INC     DX
INT     10H
CMP     DX, 306
JL      LP23

LP24:
INC     DX
INT     10H
CMP     DX, 337
JL      LP24

INC     CX
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
INT     10H
INC     CX
INT     10H
INC     DX
INC     CX
INT     10H

; NOW WE DRAW THE FOOT

LP25:
INC     DX
INT     10H
CMP     DX, 344
JL      LP25

DEC     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

LP26:
DEC     DX
INT     10H
CMP     DX, 337
JG      LP26


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     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     DX
INT     10H
DEC     CX
INT     10H

LP27:
DEC     DX
INT     10H
CMP     DX, 313
JG      LP27

LP28:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 303
JG      LP28

POP     DX      ; goback to postion where leg starts
POP     CX

DEC     CX
INT     10H

LPDIAG7:
DEC     CX
INC     DX
INT     10H
INC     DX
INT     10H
CMP     DX, 301
JL      LPDIAG7

DEC     DX
DEC     CX
INT     10H
INC     DX
INT     10H

INC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

PUSH    CX      ; saves back leg position
PUSH    DX

LP29:
INC     DX
INT     10H
CMP     DX, 335
JL      LP29

LP30:
INC     DX
INT     10H
CMP     DX, 344
JL      LP30

DEC     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

LP31:
DEC     DX
INT     10H
CMP     DX, 339
JG      LP31

DEC     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
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

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

;finished the back foot.
;back leg.
INC     CX
INC     CX
INC     CX
INC     CX
INC     CX

LP32:
DEC     DX
INT     10H
CMP     DX, 297
JG      LP32

POP     DX      ; goback to back leg position
POP     CX

DEC     CX
INT     10H

LP33:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 295
JG      LP33

;LEGDONE!

RET

LEG0_5_6_7      ENDP

LEG2_3_4        PROC

INC     DX
INT     10H

PUSH    CX      ; save position of leg
PUSH    DX

LP41:
INC     CX
INC     DX
INT     10H
CMP     DX, 306
JL      LP41

LP42:
INC     DX
INT     10H
CMP     DX, 337
JL      LP42

INC     CX
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
INT     10H
INC     CX
INT     10H
INC     DX
INC     CX
INT     10H

; NOW WE DRAW THE FOOT

LP43:
INC     DX
INT     10H
CMP     DX, 344
JL      LP43

DEC     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

LP44:
DEC     DX
INT     10H
CMP     DX, 337
JG      LP44


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     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     DX
INT     10H
DEC     CX
INT     10H

LP45:
DEC     DX
INT     10H
CMP     DX, 313
JG      LP45

LP46:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 303
JG      LP46

POP     DX      ; goback to postion where leg starts
POP     CX

DEC     CX
INT     10H

LPDIAG27:
DEC     CX
INC     DX
INT     10H
INC     DX
INT     10H
CMP     DX, 301
JL      LPDIAG27

DEC     DX
DEC     CX
INT     10H
INC     DX
INT     10H

INC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

PUSH    CX      ; saves back leg position
PUSH    DX

DEC     DX

LP47:
DEC     CX
INC     DX
INT     10H
INC     DX
INT     10H
CMP     DX, 335
JL      LP47

INC     DX
INT     10H

DEC     CX
INT     10H

LP48:
INC     DX
INT     10H
CMP     DX, 344
JL      LP48

DEC     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

LP49:
DEC     DX
INT     10H
CMP     DX, 339
JG      LP49

DEC     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

DEC     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
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
INT     10H

DEC     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

LPDIAG28:
DEC     DX
INC     CX
INT     10H
DEC     DX
INT     10H
CMP     DX, 298
JG      LPDIAG28

DEC     DX
INT     10H

POP     DX      ; goback to back leg position
POP     CX

DEC     CX
INT     10H

LPDIAG29:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 295
JG      LPDIAG29

; LET IS DONE!!

RET


LEG2_3_4        ENDP





LEG1    PROC

INC     DX
INT     10H

PUSH    CX      ; SAVE leg start position
PUSH    DX

LPDIAG8:

INC     DX
INC     CX
INT     10H
CMP     DX, 326
JL      LPDIAG8

; DRAW FOOT

INC     CX
INT     10H

INC     CX
DEC     DX
INT     10H
INC     CX
DEC     DX
INT     10H

INC     CX
INC     DX
INT     10H

LPDIAG9:
INC     CX
DEC     DX
INT     10H
CMP     DX, 318
JG      LPDIAG9

LPDIAG10:
INC     CX
INC     DX
INT     10H
CMP     DX, 323
JL      LPDIAG10

LPDIAG11:
DEC     CX
INC     DX
INT     10H
CMP     DX, 341
JL      LPDIAG11

LPDIAG12:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 335
JG      LPDIAG12

LPDIAG13:

INC     CX
DEC     DX
INT     10H
CMP     DX, 327
JG      LPDIAG13

DEC     CX
INT     10H

LPDIAG14:
DEC     CX
INC     DX
INT     10H
CMP     DX, 335
JL      LPDIAG14

DEC     CX
DEC     DX
INT     10H

INC     DX
DEC     CX
INT     10H

LPDIAG15:

DEC     CX
DEC     DX
INT     10H
CMP     DX, 305
JG      LPDIAG15

POP     DX      ; back to leg start position
POP     CX

DEC     CX
INT     10H

LPDIAG16:
DEC     CX
INC     DX
INT     10H
INC     DX
INT     10H
CMP     DX, 301
JL      LPDIAG16

DEC     DX
DEC     CX
INT     10H
INC     DX
INT     10H

INC     DX
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H
DEC     CX
INT     10H

PUSH    CX      ; saves back leg position
PUSH    DX

LP34:
INC     DX
INT     10H
CMP     DX, 335
JL      LP34

LP35:
INC     DX
INT     10H
CMP     DX, 344
JL      LP35

DEC     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

LP36:
DEC     DX
INT     10H
CMP     DX, 339
JG      LP36

DEC     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
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

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

;finished the back foot.
;back leg.
INC     CX
INC     CX
INC     CX
INC     CX
INC     CX

LP37:
DEC     DX
INT     10H
CMP     DX, 297
JG      LP37

POP     DX      ; goback to back leg position
POP     CX

DEC     CX
INT     10H

LP38:
DEC     DX
DEC     CX
INT     10H
CMP     DX, 295
JG      LP38

;LEGDONE!

RET

LEG1    ENDP

