------------------------------------------------------------------------------- SCROLL-COLOR-BAR {Use UP/DOWN arrow keys to move it!, Exit with ENTER key} By lived.ch, 14:21 26.11.2024 Computer: ATARI-800XL ------------------------------------------------------------------------------- Source Code: Assembly Application: SynAssembler {ATARI-800XL} After trying many Atari-Assembler, i found out that Synapse-Assembler is practically the best one from my point of view as Commodore C128 user. It is fast. Easy to learn. Has a Hex/Dec converter which is great. You can check variable values at any time in Editor. {using other assemblers, i always had to ASM, then go to debugger {mode}, and first type the start address {DDT} and then execute the code with G 3000... Way to complex!} How to run the code below? 1. copy the source code 2. have Altirra running and choose from the menu: View/Text Selection/Paste Text shortcut = Alt + SHIFT + V 3. type RUN {in direct mode, no line numbers} and hit ENTER 4. type RUN $3000 and hit ENTER 5. That was it! {easy, right!} Don't forget: UP/DOWN arrow keys to move it! To Exit press ENTER again and type LIST to list the source code again. Have fun coding with SynAssembler by SYNAPSE! { BastichB 64K made a video about the company: https://www.youtube.com/watch?v=V2TItwHwRko } ------------------------------------------------------------------------------- 00010 .OR $3000 00020 .LI OFF 00030 JSR $F420 ;CLEAR SCREEN 00040 ;------------------------------ 00050 ;NO KEY SND, FASTER 00060 ;------------------------------ 00070 LDA #20 00080 STA $02D9 ;KEY-DELAY 00090 LDA #3 00100 STA $02DA ;KEY-REPEAT SPEED 00110 STA $02DB ;KEY-CLICK OFF 00120 LDA #0 00130 STA $52 ;NO LEFT MARGIN 00140 LDA #0 00150 STA $2C6 ;SCRN COLOR 00160 LDA #0 00170 STA $2C8 ;BORDER COLOR 00180 ;------------------------------ 00190 ;MAIN LOOP (START) 00200 ;------------------------------ 00210 ; 00220 MAIN LDX #$00 00230 LOOP LDA $D40B 00240 DO CMP #$10 00250 BNE LOOP 00260 STA $D018 00270 STA $D01A 00280 NOP 00290 NOP 00300 NOP 00310 NOP 00320 NOP 00330 NOP 00340 NOP 00350 NOP 00360 NOP 00370 NOP 00380 NOP 00390 NOP 00400 NOP 00410 INX 00420 INC DO+1 00430 CPX #$10 ;LINE HEIGHT 00440 BNE LOOP 00450 LEV LDA #$10 00460 STA DO+1 00470 LDA #$00 00480 STA $D01A 00490 STA $D018 00500 ;----------------------------- 00510 LDA $2FC ;HOLD/HIT ENTER 00520 CMP #$0C ;TO 00530 BEQ QUIT ;QUIT 00540 ;----------------------------- 00550 CMP #142 ;ARROW UP 00560 BEQ GOUP 00570 CMP #143 ;ARROW DOWN 00580 BEQ GODW 00590 JMP MAIN 00600 GOUP DEC LEV+1 00600 GOUP DEC LEV+1 00610 LDA LEV+1 00620 CMP #$10 00630 BCC UPL 00640 JMP MAIN 00650 GODW INC LEV+1 00660 LDA LEV+1 00670 CMP #$60 00680 BCS DWL 00690 JMP MAIN 00700 UPL LDA #$10 00710 STA LEV+1 00720 JMP MAIN 00730 DWL LDA #$60 00740 STA LEV+1 00750 JMP MAIN 00760 QUIT RTS 00770 NEXT .DA $50,$40,$60,$80,$A0 00780 .EN -------------------------------------------------------------------------------