From cab8aed3a69c7732d1f171f287a78636ef97af89 Mon Sep 17 00:00:00 2001 From: Pedro de Oliveira Date: Tue, 12 Aug 2014 05:36:02 +0100 Subject: [PATCH] Viva o Benfica! --- scroller2/main.asm | 15 +++++++++++++-- scroller2/main.tap | Bin 509 -> 725 bytes scroller2/scroll_text.asm | 19 +++++++++---------- 3 files changed, 22 insertions(+), 12 deletions(-) diff --git a/scroller2/main.asm b/scroller2/main.asm index ebd09b7..11f05f1 100644 --- a/scroller2/main.asm +++ b/scroller2/main.asm @@ -8,7 +8,9 @@ k_cur equ $5c5b ; Contem a posição do cursor - TODO: Usar isto ; $5d16 LINHA10 equ $4840 -aids db $0 + +mystr db 22,9,0, 16,6, "o_barbas disse:", 255 +aids db $8 start xor a ; O mesmo que LD a, 0 @@ -18,8 +20,17 @@ start ; na stack, e tirar no fim do programa. call clear_screen ; Limpa o ecrã + + ld hl, mystr ; Le para HL o endereço da string a printar +printa_ate_255 + ld a,(hl) ; Le para A o valor que esta no endereço em HL + cp $ff ; Se for 255... + jr z, mainloop ; então já se imprimiu tudo e é para sair + rst $10 ; Syscall para imprimir o no ecrã o que estiver em A + inc hl ; Incrementa o valor de HL + ; Passa a ter o endereço do proximo caracater da str + jr printa_ate_255 ; Volta ao inicio da rotina - call scroll_text mainloop ld a, $0 ld (last_k), a ; Limpa o valor da ultima tecla pressionada diff --git a/scroller2/main.tap b/scroller2/main.tap index efa1b9172011a10e0d25886b45fc684fb7a156e3..d26f293cc4ec7b98db114881a349cf464c68bc49 100644 GIT binary patch literal 725 zcmZWn!E4iC6o2hpiG`NxWa|+0H5J*WXib@5shzLQw=|<^x}+I9RAqK zg{4LA>P!HPJ#KG3x$&(16tNY}x$ykcgJ?K;7E-a!+Io9?z1_u)t!{U-5K22ru{8+Z zxS5>WAB8h#K4#OuN}x!sf^bI?O2O|QL*ZubRRh&yvdEwm30}DcsWpO`54-*#8IM6~ zl)&L#+~4&}n)138>?BGMyp?^~76vXm!V(r5q?u%)iH2~nEb5DTh0r$9rm{ed>Qxq3 z^cCWYzp9L~O4zh$ku05%ngYqhB{IyDHil_)8FE^~5^P{|gs>YmQCGS4l&isMdoNKH zSQjg%&@B_2WHIE&Hf#J+t$IxVpYxw{!_tjo<&>%Fkj+t~iMq`LXpXKj(IB3SP;c(N zsPP_DT6T2CWwSym9|h^$Lp9!5+0rd^3@npX<~}~Rro&k$hv(lXQaJ35A{ghJIqYTL zx#_XFVXyz?Ds*ONXPfskP@E3(-sfzeFDRNGFGaXa9`^j0bZ#~5pU+OD4t%x&NJ?x` z@#F(1 F;|PAs&sYEe delta 397 zcmXAkJxc>Y5QgUrkwb|1fhMV(OGHf+JyV8o_<>?XR8WGTB1i5FOR~4|Zg&F~r-g`R z#2?~sunUvzz1tbnqn{yK2g|I0GLX|YtiM=vb%9X2C+{3kv-Ocj)s$l?tR!qvChC}Lsq%`hC zDwdy+;rk4*TrPKbYCtI+9ZPGnYr)^NyKmXB2Xh0dxTUF;%!KR=>Z3>fa4b7M^4(FD z0K>YftIJGHMt3q_lhehzEU6%YOCKG@&)O7xZfA&m8pJT!njiUA!X%s-NBy+oJdvR} J@TIjn55K60fsX(H diff --git a/scroller2/scroll_text.asm b/scroller2/scroll_text.asm index 12f458f..48fe1a9 100644 --- a/scroller2/scroll_text.asm +++ b/scroller2/scroll_text.asm @@ -1,4 +1,4 @@ -text db "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin commodo metus sed orci fermentum, id mattis quam suscipit OI VIVA O BENFICA!!", 0 +text db "\"SEM QUERER MAGOAR O MEU BENFICA SO SABE GANHAR VIVA O BENFICA\" \"DA TRAFARIA ATE AO JAMOR O MEU BENFICA MOSTRA SEMPRE O SEU ESPLENDOR VIVA O BENFICA\" \"MANHA DE NEVOEIRO TARDE DE SOL SOALHEIRO BENFICA SEMPRE O PRIMEIRO VIVA O BENFICA\" \"DUAS VIAGENS SEGUIDAS PARA A ITALIA DAQUI A BOCADO MAIS VALE ABRIR UM BARBAS EM TURIM VIVA O BENFICA\"", 0 chars equ $5c36 ; Endereço 256 ($100) bytes abaixo da fonte (2 bytes) ; Contem $3c00 inicialmente @@ -54,15 +54,14 @@ scroll_text_loop call copia_para_udg ; Copia a letra para o UDG#1 ; O argumento para a rotina é o valor em HL - ld a, 22 - rst $10 - ld a, 0 - rst $10 - ld a, 0 - rst $10 - - ld a, $90 ; Imprime UDG#1 - rst $10 + ;ld a, 22 + ;rst $10 + ;ld a, 0 + ;rst $10 + ;ld a, 0 + ;rst $10 + ;ld a, $90 ; Imprime UDG#1 + ;rst $10 pop hl ; Tira a posição na string da stack inc hl ; Anda para a frente