Today I had some other things to do but I was able to finish typing in Daryl's Bresenham Circle program and try it out. First thing I did was comment out anything that had to do with the 6502's MSBs for all the variables, since we're dealing with 16-bit bytes. I'll paste the code. Uh, I just now realized now I could have copied/pasted his code into the assembler.
Code:
CIRCLE LDA RA ;BRESENHAM CIRCLE COURTESY OF DARYL RICTOR @ HTTP://SBC.RICTOR.ORG/
BNE _C1
LDA XC
STA XP
;LDA XC+1
;STA XP+1
LDA YC
STA YP
;LDA YC+1
;STA YP+1
JMP PLTPXL
; INT Y = RADIUS
_C1 LDA RA ;8 BIT RADIUS, CAN BE EXPANDED TO 16 BIT
STA Y1
LDDi $0000 ;-LDD #$0000 ACCUMULATOR IS USED FOR 65C02 STZ, AND IS ALWAYS ZERO IN THIS SUBROUTINE
;STA Y1+1
; INT X = 0
STDzp X1 ;-STD X1
;STDzp X1+1 ;-STD X1+1
; INT F = 1 - RADIUS IF USING 16-BIT RADIUS, THIS SECTION
SEC ;WILL NEED MODIFICATION
LDA #$01
SBC RA
STA FF
;STDzp FF+1 ;-STD FF+1
;BCS _C2
;DEC FF+1
; int ddF_X = 1;
_C2 LDA #$01
STA FX
;STDzp FX+1 ;-STD FX+1
; INT ddF_Y = -2 * RADIUS IF USING 16-BIT RADIUS, THIS CODE SECTION
;STDzp FY+1 ;WILL NEED MODIFICATION ALSO
LDA RA
ASL
STA FY
;ROL FY+1
LDA FY
EOR #$FFFF ;WAS EOR #$00FF
STA FY
;LDA FY+1
;EOR #$FF
;STA FY+1
INC FY
BNE _C3
;INC FY+1
; TGI_SETPIXEL(XC, YC+Y)
_C3 LDA XC
STA XP
;LDA XC+1
;STA XP+1
CLC
LDA YC
ADC Y1
STA YP
;LDA YC+1
;ADC Y1+1
;STA YP+1
JSR PLTPXL
; TGI_SETPIXEL(XC, YC-Y)
SEC
LDA YC
SBC Y1
STA YP
;LDA YC+1
;SBC Y1+1
;STA YP+1
JSR PLTPXL
; TGI_SETPIXEL(XC+Y, YC)
CLC
LDA XC
ADC Y1
STA XP
;LDA XC+1
;ADC Y1+1
;STA XP+1
LDA YC
STA YP
;LDA YC+1
;STA YP+1
JSR PLTPXL
; TGI_SETPIXEL(XC-Y,YC)
SEC
LDA XC
SBC Y1
STA XP
;LDA XC+1
;SBC Y1+1
;STA XP+1
JSR PLTPXL
_CLOOP
; WHILE (X<Y) CALCULATE NEXT PLOT STEP
SEC
LDA X1
SBC Y1
;LDA X1+1
;SBC Y1+1
BCC _C4 ;X<Y
RTS
_C4 ;LDA FF+1
;BMI _C6
;LDA Y1
;BNE _C5
;DEC Y1+1
_C5 DEC Y1
CLC
LDA FY
ADC #$02
STA FY
;TAX
;LDA FY+1
;ADC #$00
;STA FY+1
;TAY
CLC
;TXA
ADC FF
STA FF
;TYA
;ADC FF+1
;STA FF+1
_C6 INC X1
;BNE _C7
;INC X1+1
_C7 CLC
LDA FX
ADC #$02
STA FX
;TAX
;LDA FX+1
;ADC #$00
;STA FX+1
;TAY
CLC
;TXA
ADC FF
STA FF
;TYA
;ADC FF+1
;STA FF+1 ;COMPUTATIONS DONE - NOW PLOT 8 OCTANTS
; TGI_SETPIXEL(XC+X, YC+Y)
CLC
LDA XC
ADC X1
STA XP
PHA
;LDA XC+1
;ADC X1+1
;STA XP+1
;PHA
CLC
LDA YC
ADC Y1
STA YP
;LDA YC+1
;ADC Y1+1
;STA YP+1
JSR PLTPXL
; TGI_SETPIXEL(XC-X, YC+Y)
SEC
LDA XC
SBC X1
STA XP
;LDA XC+1
;SBC X1+1
;STA XP+1
JSR PLTPXL
; TGI_SETPIXEL(XC-X, YC-Y)
SEC
LDA YC
SBC Y1
STA YP
;LDA YC+1
;SBC Y1+1
;STA YP+1
JSR PLTPXL
; TGI_SETPIXEL(XC+X, YC-Y)
;PLA
;STA XP+1
PLA
STA XP
JSR PLTPXL
; TGI_SETPIXEL(XC+Y, YC+X)
CLC
LDA XC
ADC Y1
STA XP
PHA
;LDA XC+1
;ADC Y1+1
;STA XP+1
;PHA
CLC
LDA YC
ADC X1
STA YP
;LDA YC+1
;ADC X1+1
;STA YP+1
JSR PLTPXL
; TGI_SETPIXEL(XC-Y,YC+X)
SEC
LDA XC
SBC Y1
STA XP
;LDA XC+1
;SBC Y1+1
;STA XP+1
JSR PLTPXL
; TGI_SETPIXEL(XC-Y, YC-X)
SEC
LDA YC
SBC X1
STA YP
;LDA YC+1
;SBC X1+1
;STA YP+1
JSR PLTPXL
; TGI_SETPIXEL(XC+X,YC-Y)
;PLA
;STA XP+1
PLA
STA XP
JSR PLTPXL
JMP _CLOOP
PLTPXL LDA XP
STA SCRLO
LDA YP
STA SCRHI
LDY #0
STBiy (SCRLO),Y ;-STB(SCRLO),Y. B ACCUMULATOR IS ALWAYS PIXEL COLOR
RTS
Mild success. The radius is set to 10, and the XC and YC are (100,100).