V ramci rubriky "Programujeme v strojovom kode II." sme
pripravili pre vas maly vianocny darcek - jeden malicky program
v strojovom kode (dlhy 144 bajtov). Pozor ! Program je urceny
specialne pre pocitace
Program je napisany tak, aby ste ho mohli bez akychkolvek
uprav priamo prepisat do lubovolnej verzie vyvojoveho systemu
MRS. Nie su v nom pouzite ziadne specialne pseudoinstrukcie
ani direktivy, takze pokial pracujete v inom systeme, urcite nebude
pre vas problem prepisat ho do tohto systemu.
Po prepisani programu a jeho prelozeni ho spustite od navestia
run. Program je uplne sebestacny, to znamena ze nevyuziva
ziadne podprogramy a sluzby operacneho systemu v pameti ROM.
Verim, ze tento program bude spestrenim vasich vianocnych
sviatkov.
| org | #8000 | |
| run | ld | a,#08 |
| out | (#fe),a | |
| ld | hl,#5aff | |
| ld | de,#5afe | |
| ld | bc,#0300 | |
| ld | (hl),#07 | |
| lddr | ||
| ld | (hl),c | |
| ld | b,#18 | |
| lddr | ||
| vesele | xor | a |
| in | a,(#fe) | |
| or | #e0 | |
| inc | a | |
| jr | nz,vesele | |
| ld | hl,#4030 | |
| ld | de,pf1994 | |
| ld | bc,#0810 | |
| vanoce | ld | a,(de) |
| ld | (hl),a | |
| inc | de | |
| call | rok | |
| djnz | vanoce | |
| ld | b,#04 | |
| vam | call | novy |
| djnz | vam | |
| ld | de,#0808 | |
| praje | ld | b,e |
| push | hl | |
| push | bc | |
| busy | call | novy |
| rlc | c | |
| jr | nc,#01 | |
| dec | l | |
| djnz | busy | |
| pop | bc | |
| pop | hl | |
| push | hl | |
| push | bc | |
| soft | call | novy |
| rrc | c | |
| jr | nc,#01 | |
| inc | l | |
| djnz | soft | |
| pop | bc | |
| pop | hl | |
| ld | a,d | |
| dec | a | |
| cp | #01 | |
| sbc | a,a | |
| and | #10 | |
| add | a,e | |
| ld | b,a | |
| hard | call | novy |
| djnz | hard | |
| ld | a,#02 | |
| add | a,e | |
| ld | e,a | |
| dec | d | |
| jr | nz,praje | |
| ld | (hl),#fe | |
| xor | a | |
| stastn | in | a,(#fe) |
| or | #e0 | |
| inc | a | |
| jr | z,stastn | |
| ret | ||
| novy | ld | a,c |
| or | (hl) | |
| ld | (hl),a | |
| rok | inc | h |
| ld | a,h | |
| and | #07 | |
| ret | nz | |
| ld | a,#20 | |
| add | a,l | |
| ld | l,a | |
| ret | c | |
| ld | a,#f8 | |
| add | a,h | |
| ld | h,a | |
| ret | ||
| pf1994 | db | #28,#10,#ba,#7c |
| db | #7c,#ba,#38,#54 |
Ak sa vam nechce program prepisovat a kompilovat, tu si mozete stiahnut spustitelnu verziu
vo formatoch TAP a SNA:
stromcek.rar alebo
stromcek.zip .
V balickoch sa nachadza aj vyssie uvedeny zdrojovy text priamo skompilovatelny pomocou
SjASMPlus vratane vygenerovania
oboch spustitelnych verzii v tapke a snape.