User Tools

Site Tools


base:approximation_to_distance

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revisionBoth sides next revision
base:approximation_to_distance [2020-02-09 14:43] djmipsbase:approximation_to_distance [2020-02-10 21:43] djmips
Line 17: Line 17:
 ; than (9/8) + one bit uncertainty. ; than (9/8) + one bit uncertainty.
  
- lda x1          ; x1 - x2+Dist: 
 + lda x1
  sec  sec
  sbc x2  sbc x2
  sta xd  sta xd
- bpl .posxdiff   ; abs() + bcs posxdiff 
- lda #00         ; + eor #$FF 
- sec + adc #1 
- sbc xd +posxdiff:
-.posxdiff:+
  sta xd  sta xd
- lda y1          ; y1 - y2+ lda y1
  sec  sec
  sbc y2  sbc y2
- sta yd + bcs posydiff 
- bpl .posydiff   ; abs() + eor #$FF 
- lda #00 + adc #1 
- sec +posydiff:
- sbc yd +
-.posydiff:+
  cmp xd  cmp xd
- bcs .ygreater + bcs ygreater 
- lsr              ; ydelta / 2 + lsr 
- adc xd           ; + xdelta+ clc 
 + adc xd 
 + rts 
 +ygreater: 
 + lsr xd 
 + clc 
 + adc xd
  rts  rts
  
-.ygreater: 
- sta yd 
- lda xd 
- lsr              ; xdelta / 2 
- cls 
- adc yd           ; + ydelta 
- rts 
-  
 </code> </code>
  
base/approximation_to_distance.txt · Last modified: 2020-02-11 01:45 by djmips