; SQR.ASM Gyokvonas (c) 1991 HSOFT. ; SQRHL: A=SQR(HL) ; SQRDEHL: HL=SQR(DEHL) ORG 2000H JP SQRDEHL SQRHL: EXX ;A=SQR(HL) LD HL,0 LD D,H LD E,H LD B,8 SQR10: EXX ADD HL,HL EXX ADC HL,HL EXX ADD HL,HL EXX ADC HL,HL PUSH DE SLA E RL D SCF RL E RL D SBC HL,DE JR NC,SQR20 ADD HL,DE SQR20: POP DE CCF RL E RL D DJNZ SQR10 LD A,E RET ; -------------------------------------------- SQRDEHL: XOR A ;HL=SQR(DEHL) EXX LD H,A LD L,A LD D,A LD E,A LD B,16 SQR110: EXX ADD HL,HL RL E RL D EXX ADC HL,HL ADC A,A EXX ADD HL,HL RL E RL D EXX ADC HL,HL ADC A,A PUSH DE LD C,0 SLA E RL D RL C SCF RL E RL D RL C SBC HL,DE SBC A,C JR NC,SQR120 ADD HL,DE ADC A,C SQR120: POP DE CCF RL E RL D DJNZ SQR110 EX DE,HL RET