Skip to content

Commit 3b89aed

Browse files
committed
Pressing enter now scrolls one line at a time
1 parent 130595b commit 3b89aed

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

apps/more.asm

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,41 @@ zproc start
152152
beq more_exit
153153
cmp #3
154154
beq more_exit
155+
\ Only scroll one line if enter is pressed
156+
cmp #13
157+
bne more_nextpage
158+
ldx linemax
159+
dex
160+
stx linepos
161+
lda #0
162+
sta colpos
163+
\ Clear last line if screen driver is present
164+
lda screen_present
165+
cmp #1
166+
zif eq
167+
lda #0
168+
ldx linemax
169+
inx
170+
ldy #SCREEN_SETCURSOR
171+
jsr SCREEN
172+
173+
ldy #SCREEN_CLEARTOEOL
174+
jsr SCREEN
175+
176+
lda #0
177+
ldx linemax
178+
ldy #SCREEN_SETCURSOR
179+
jsr SCREEN
155180

181+
zendif
182+
\ Otherwise just emit a newline
183+
lda screen_present
184+
cmp #1
185+
zif ne
186+
jsr newline
187+
zendif
188+
jmp more_done
189+
more_nextpage:
156190
\ Setup for next page of text
157191
jsr newline
158192
lda screen_present
@@ -166,6 +200,7 @@ zproc start
166200
ldy #SCREEN_SETCURSOR
167201
jsr SCREEN
168202
zendif
203+
more_done:
169204
zendif
170205
inc temp
171206
zuntil eq

0 commit comments

Comments
 (0)