sqrt: PHX PHP REP #$30 BCS .010000 CMP #$4000 BCS .4000 CMP #$1000 BCS .1000 CMP #$0400 BCS .0400 CMP #$0100 BCS .0100 ASL TAX LDA .lookup,x PLP PLX RTL .010000 ROR LSR .4000 XBA AND #$00FE ASL TAX LDA .lookup,x ASL ASL ASL ASL PLP PLX BCC + ASL + RTL .1000 XBA ROL ROL AND #$00FE ASL TAX LDA .lookup,x ASL ASL ASL PLP PLX RTL .0400 LSR LSR LSR AND #$FFFE TAX LDA .lookup,x ASL ASL PLP PLX RTL .0100 LSR AND #$FFFE TAX LDA .lookup,x ASL PLP PLX RTL .lookup dw $0000,$0100,$016A,$01BB,$0200,$023C,$0273,$02A5 dw $02D4,$0300,$032A,$0351,$0377,$039B,$03BE,$03DF dw $0400,$0420,$043E,$045C,$0479,$0495,$04B1,$04CC dw $04E6,$0500,$0519,$0532,$054B,$0563,$057A,$0591 dw $05A8,$05BF,$05D5,$05EB,$0600,$0615,$062A,$063F dw $0653,$0667,$067B,$068F,$06A2,$06B5,$06C8,$06DB dw $06EE,$0700,$0712,$0724,$0736,$0748,$0759,$076B dw $077C,$078D,$079E,$07AE,$07BF,$07CF,$07E0,$07F0 dw $0800,$0810,$0820,$082F,$083F,$084E,$085E,$086D dw $087C,$088B,$089A,$08A9,$08B8,$08C6,$08D5,$08E3 dw $08F2,$0900,$090E,$091C,$092A,$0938,$0946,$0954 dw $0961,$096F,$097D,$098A,$0997,$09A5,$09B2,$09BF dw $09CC,$09D9,$09E6,$09F3,$0A00,$0A0D,$0A19,$0A26 dw $0A33,$0A3F,$0A4C,$0A58,$0A64,$0A71,$0A7D,$0A89 dw $0A95,$0AA1,$0AAD,$0AB9,$0AC5,$0AD1,$0ADD,$0AE9 dw $0AF4,$0B00,$0B0C,$0B17,$0B23,$0B2E,$0B3A,$0B45 dw $0B50,$0B5C,$0B67,$0B72,$0B7D,$0B88,$0B93,$0B9E dw $0BA9,$0BB4,$0BBF,$0BCA,$0BD5,$0BE0,$0BEB,$0BF5 dw $0C00,$0C0B,$0C15,$0C20,$0C2A,$0C35,$0C3F,$0C4A dw $0C54,$0C5F,$0C69,$0C73,$0C7D,$0C88,$0C92,$0C9C dw $0CA6,$0CB0,$0CBA,$0CC4,$0CCE,$0CD8,$0CE2,$0CEC dw $0CF6,$0D00,$0D0A,$0D14,$0D1D,$0D27,$0D31,$0D3B dw $0D44,$0D4E,$0D57,$0D61,$0D6B,$0D74,$0D7E,$0D87 dw $0D91,$0D9A,$0DA3,$0DAD,$0DB6,$0DBF,$0DC9,$0DD2 dw $0DDB,$0DE4,$0DEE,$0DF7,$0E00,$0E09,$0E12,$0E1B dw $0E24,$0E2D,$0E36,$0E3F,$0E48,$0E51,$0E5A,$0E63 dw $0E6C,$0E75,$0E7E,$0E87,$0E8F,$0E98,$0EA1,$0EAA dw $0EB2,$0EBB,$0EC4,$0ECC,$0ED5,$0EDE,$0EE6,$0EEF dw $0EF7,$0F00,$0F09,$0F11,$0F1A,$0F22,$0F2A,$0F33 dw $0F3B,$0F44,$0F4C,$0F54,$0F5D,$0F65,$0F6D,$0F76 dw $0F7E,$0F86,$0F8E,$0F97,$0F9F,$0FA7,$0FAF,$0FB7 dw $0FBF,$0FC8,$0FD0,$0FD8,$0FE0,$0FE8,$0FF0,$0FF8