Programmers
(C) Michael Blum (Zx-Masters)
Intercept reset'a on 128k machines.
Many who play the game "DOUBLE XINOX" and
pressing it to reset, came to the utter dismay, he saw the
inscription, confirming your decision to drop the program, not
on Scorpion'e, and on ordinary 128!
To my great surprise, some of these
Many have been some programmers and
Hackers ... The secret of the "glitches" so
simple that I'm just uncomfortable to talk about
him, but at the request of this newspaper, I
do.
As is known, computer has 128K
two areas of memory reserved for display:
standard - with addresses # 4000_ _ mostly
field memory, and additional - with addresses
_ # C000_ bank RAM7. Select the desired screen should port _ #
7FFD_, dumping or setting the third bit. If the bit is set, it
will display a second screen (RAM7), if it is reset, the
standard (RAM5).
Now about Reset'e. When the signal arrival
reset is set by hardware standard screen, which clears the
program initialization, based in turn to address _ # 0000_ in
ROM at the time of squeezing the button "RESET".
Thus, if you use the program only an additional screen in the
main place any desired message then Reset'e it appears! In
DOUBLE XINOX'e, for example, the message is in the field
attributes in order to save memory.
=== Cut ===
ORG 30000
START DI
LD A, 23
CALL MEMORY
LD HL, 49152
CALL CLS
LD HL, 16384
CALL CLS
LD A, 23 8
CALL MEMORY
LD HL, TEXT
LD DE, 22 528 256
LD BC, 32 * 7
LDIR
LOOP JR LOOP
MEMORY LD BC, 32765
OUT (C), A
RET
CLS LD E, L
LD D, H
INC E
LD BC, 6911
LD (HL), L
LDIR
RET
; 12345678901234567890123456789012
TEXT DM ""
DM "@@@@@@@ @ @ @@@@@@@"
DM "@ @ @ @ @ @"
DM "@@@@@@@ @ @@@@@"
DM "@ @ @ @ @ @"
DM "@ @@@@@ @ @ @@@@@"
DM ""
=== Cut ===
__________________________