0 Members and 1 Guest are viewing this topic.
L"FILENAME",8,1300
J F1300
S"NEWNAME",8,1300,1460
STA ($8B),YLDA #COLOR ; MAKE IT GREENSTA ($8E),Y
JSR $1460NOPNOPNOP
JMP $CDE6
STX $145E ;save XSTY $145F ;save YPHA ;save charLDA $8D ;text address lowSTA $E0 ;prepare to modifyLDA $8E ;text address highAND #3 ;remove VIC-II startASL $E0 ;double address low (modify)ROL ;double address high (modify)STA $E1PLA ;charJSR $14C0 ;write to VDC textLDA $E1 ;text address highORA #8 ;change address for colorSTA $E1LDA #colorJSR $14C0 ;write VDC attributeLDX $145E ;restore XLDY $145F ;restore YRTS
LDA $DC08 ; TENTHS TO START CLOCK
LDA $DC0B
ldx $fffd cpx #$ff bne + inx stx $ff00
PHA ;save char (or color)JMP $CC54 ;call $cde6 and then $cdca
STX $143E ;save XSTY $143F ;save YPHA ;save charLDA $8B ;text address low <-- fixedSTA $E0 ;prepare to modifyLDA $8C ;text address high <-- fixedAND #3 ;remove VIC-II startASL $E0 ;double address low (modify)ROL ;double address high (modify)STA $E1PLA ;charJSR $1470 ;write to VDC textLDA $E1 ;text address highORA #8 ;change address for colorSTA $E1LDA #colorJSR $1470 ;write VDC attributeLDX $143E ;restore XLDY $143F ;restore YRTS
STA $5CCSTA $D9CCSTA $644STA $DA44
BIT $5CCBIT $D9CCBIT $644BIT $DA44
LDX #5 ;highLDY #$CC ;lowSTY $8BSTX $8CLDY #0 ;no column offsetJSR $1440
Wagner, that's very well-formated code, but what isCode: [Select] ldx $fffd cpx #$ff bne + inx stx $ff00 If $fffd is $FF then store zero into MMU configuration !? Store zero is good for proper memory configuation, but only if $fffd is randomly $FF ? Well I guess it would be $FF if standard ROM is present (for example bank 15) but in that case you wouldn't need to store zero. And if it is not $FF then don't set correct bank?
... for the flashing dots. Change 'original' fromCode: [Select]STA $5CCSTA $D9CCSTA $644STA $DA44toCode: [Select]BIT $5CCBIT $D9CCBIT $644BIT $DA44 Note those flashing colons are hard-coded and do not use the character-printing subroutine like the numbers. If you really want the flashing colons, calculate the address and call subroutine 1. Actually you don't need to calculate! They are printed right above! So for the top colon, do something likeCode: [Select]LDX #5 ;highLDY #$CC ;lowSTY $8BSTX $8CLDY #0 ;no column offsetJSR $1440and repeat for bottom colon but use address $644 instead of $5cc.
.133B STA $5CC.133E STX $D9CC.1341 STA $644.1344 STX $DA44
.133B BIT $5CC.133E BIT $D9CC.1341 BIT $644.1344 JSR $1480
LDX #5 ;highLDY #$CC ;lowSTY $8BSTX $8CLDY #0 ;no column offsetPHA ;<-- save charJSR $1440 ;draw top colon LDX #6 ;highLDY #$44 ;lowSTY $8BSTX $8CLDY #0 ;no column offsetPLA ;<-- recall charJSR $1440 ;draw bottom colonRTS ; end patch