Mercurial > hg > Members > kono > nitros9-code
diff 3rdparty/packages/coyota/dashboard.a @ 1908:695f74930c6f
Start of Coyota software
author | boisy |
---|---|
date | Tue, 08 Nov 2005 05:19:03 +0000 |
parents | |
children | 323e7751c250 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/3rdparty/packages/coyota/dashboard.a Tue Nov 08 05:19:03 2005 +0000 @@ -0,0 +1,260 @@ +**************************************************************************** +* +* dashboard.a - draw the dashboard +* +* + + psect dashboard_a,0,0,0,200,0 + + vsect +numbuf rmb 16 + endsect + + +white equ $00 +blue equ $01 +black equ $02 +green equ $03 +red equ $04 +yellow equ $05 +magenta equ $06 +cyan equ $07 + + +inshlgt equ blue +insfill equ cyan +txtclr equ $03 green + +* byte stream to send to window to make dashboard +dash + fdb WScaleSw + fcb $01 turn on scaling + +***** TITLE ***** + fdb WFont + fdb $C801 + fcb WPosCur,$20+17,$20+1 + fdb WFColor + fcb red + fdb WBoldSw + fcb $01 + fcc /COYOTA!/ + fdb WFont + fdb $C802 + fdb WBoldSw + fcb $00 + + fdb WFColor + fcb inshlgt + +***** SPEEDOMETER ***** + fdb WSetDPtr + fdb 320,96 + fdb WCircle + fdb 120 + fdb WCircle + fdb 128 + fdb WCircle + fdb 32 + fdb WCircle + fdb 38 + fdb WFColor + fcb insfill + fdb WRSetDPtr + fdb 0,-17 + fdb WFFill + fdb WRSetDPtr + fdb 0,-46 + fdb WFFill + +* draw 0MPH marker + fdb WFColor + fcb insfill + fdb WSetDPtr + fdb 227,132 + fdb WRLine draw the tick mark + fdb 5,-4 + fcb WPosCur,$20+20,$20+15 + fdb WFColor + fcb txtclr + fcc /0/ + +* draw 60MPH marker + fdb WFColor + fcb insfill + fdb WSetDPtr + fdb 320,36 + fdb WRLine draw the mid-speed tick mark + fdb 0,6 + fcb WPosCur,$20+26,$20+6 + fdb WFColor + fcb txtclr + fcc /60/ + fdb WFColor + fcb insfill + +* draw 120MPH marker + fdb WSetDPtr + fdb 413,132 + fdb WRLine draw the tick mark + fdb -5,-4 + fcb WPosCur,$20+31,$20+15 + fdb WFColor + fcb txtclr + fcc /120/ + fdb WFColor + fcb inshlgt + +***** ENGINE TEMPERATURE (UPPER LEFT) ***** + fdb WSetDPtr + fdb 104,52 + fdb WCircle + fdb 66 + fdb WCircle + fdb 72 + fdb WRSetDPtr + fdb 0,-34 + fdb WFColor + fcb insfill + fdb WFFill + +***** FUEL GAUGE (UPPER RIGHT) ***** + fdb WFColor + fcb inshlgt + fdb WSetDPtr + fdb 536,52 + fdb WCircle + fdb 66 + fdb WCircle + fdb 72 + fdb WRSetDPtr + fdb 0,-34 + fdb WFColor + fcb insfill + fdb WFFill + +***** DATE/TIME (LOWER LEFT) ***** + fdb WFColor + fcb inshlgt + fdb WSetDPtr + fdb 104,192-52 + fdb WCircle + fdb 66 + fdb WCircle + fdb 72 + fdb WRSetDPtr + fdb 0,-34 + fdb WFColor + fcb insfill + fdb WFFill + +***** ???? (LOWER LEFT) ***** + fdb WFColor + fcb inshlgt + fdb WSetDPtr + fdb 536,192-52 + fdb WCircle + fdb 66 + fdb WCircle + fdb 72 + fdb WRSetDPtr + fdb 0,-34 + fdb WFColor + fcb insfill + fdb WFFill + +* finally, draw text color from now now + fdb WFColor + fcb txtclr set text draw color + +dashL equ *-dash + +* entry point +dashboard: +* draw the dashboard +Scrn leax dash,pcr + ldy #dashL + lda #1 + os9 I$Write + rts + +speedtag + fcb WPosCur,$20+26,$20+11 + fdb WFColor + fcb yellow + fcb $00 + +speedtag2 + fcb WPosCur,$20+25,$20+12 + fcc /MPH./ + fdb WFColor + fcb txtclr + fcb $00 + + +* Show Speed +speed: + leax <speedtag,pcr + lbsr PUTS + lbsr getspeed get speed in D + leax numbuf,u + lbsr BIN_DEC + lbsr PUTS + leax <speedtag2,pcr + lbsr PUTS + rts + + +odomtag fcb WPosCur,$20+0,$20+2 + fcb $00 + +odometer: + leax <odomtag,pcr + lbsr PUTS + lbsr getmileage get odometer in D,X + pshs x + leax numbuf,u + lbsr BIN_DEC + lbsr PUTS + puls d + leax numbuf,u + lbsr BIN_DEC + lbsr PUTS + rts + +etemptag fcb WPosCur,$20+7,$20+8 + fcb $00 + +engtemp: + leax <etemptag,pcr + lbsr PUTS + lbsr getengtemp get engine temperature in D + leax numbuf,u + lbsr BIN_DEC + lbsr PUTS + rts + +fueltag fcb WPosCur,$20+44,$20+8 + fcb $00 + +fuelgauge: + leax <fueltag,pcr + lbsr PUTS + lbsr getfuel get fuel in D + leax numbuf,u + lbsr BIN_DEC + lbsr PUTS + rts + +timetag fcb WPosCur,$20+18,$20+23 + fcb $00 + +systime: + leax <timetag,pcr + lbsr PUTS + leax numbuf,u + lbsr STIMESTR get fuel in D + lbsr PUTS + rts + + endsect