(C) 2oo2 Disabler /
DPL
About the bugs and not only ...
Hayushki, people! Today, you will tell about the different
Gluck XAS'a, and so is the "iron" glitches.
`Bugs XAS'a
From the very first version that I got, and it was
Version 3. XXX, and to the latest - 9.10 there is one
interesting bug: if you type the following:
ORG # 6000
LAB1 SUB A
NOP
LAB2 SUB A; <- comment required
NOP
LAB3 NOP
NOP
And then assembliruem, go to the STS, click and watch SS +5
metochki ... Here he pops up!
# 6000 LAB1 SUB A
# 6001 NOP
# 6002 LAB2 SUB A
# 6003 NOP
# 6004 NOP
# 6005 LAB3 NOP
Thus it turns out that the XAS believes that the first team
SUB has a length of one byte, and the second command SUB has a
long two bytes. However, the second team (and first) is
length one byte, and as a consequence of this shift table tags.
----> TRIP!
Let's go on. Another glitch XAS'a is that
Download the text in the page memory in which there was
kakoylibo garbage, if this size of the text ends at the end
sector there is a glitch: XAS incorrectly puts token end text
and tries to turn "trash" in their text and in the best the
case is discharged. ----> TRIP!
Now about "iron" bug:
`Gluck keyboard port:
When reading from the keyboard port (# fe) the seventh and
fifth bits should be equal to unity. At the Pentagon, this is
so, but in some homemade products from the port reads zeros.
Because of this, not work PT2.1 and Digital Studio.
`Gluck kempston joystick'a:
When properly connected, the leading three bits are zero. In
pentagon, they often are equal to unity. By the way, test kj
need for less than five bits. If they are all equal to zero,
then it is. In this case, kj oprashivatsya by mask # 1f. The
layout of the port is as follows:
bit function
0 right
1 left
2 down
3 up
4 fire
May cancel *
6 ---
7 ---
* This feature is something like the right mouse button. But
I've seen its implementation only "Taganrog"!
`Gluck muses. Processor:
Occurs when checking for processor type, ie, AY or YM.
Verification is done by reading from a nonexistent
Port MP If read from port # ff, we have YM, if not
# Ff - AY. So, there is a brake circuit which is not quite
so. Usually test looks like this:
ld bc, # fffd
ld a, # 10
out (c), a
in a, (c)
cpl
jr z, ym
ay ...
ret
ym ...
ret
But strangely enough it does not work. Brake wiring diagram
lm no time to switch from writing to reading as a result of
port is read as "rubbish". What would all need a little work
change the test:
...
out (c), a
nop; <-
in a, (c)
...
Incidentally, this is due to the fact that registers with the
number more # 0f are vstroenooy memory MP, which is exactly
1kb, and access to it through the signals: a8, no a9, bc2.
`Gluck cache on the Pentagon:
If the cache is enabled and there is a write to port address
is less than # 4000 (16384), then the concurrent entry into the
port and the cache. This bug occurs because of the lack of
signal MREQ, ie it does not involved in decoding the cache ...
`Gluck 3.5" drive:
At 3.5 "drive or the index signal is always in
high status, or comes with a delay, ie first
untwisted disk, and then, after some time go
index pulses. This occurs because the sensor is not
optical and magnetic.
`Two Gluck drives 5.25" (5313):
Sometimes the drive without the disk produces a signal of
readiness to work and Some Commanderie to blue in the face
trying to read it. Second bug: if a situation arises: Given a
command position, and then, immediately, the team records the
sector and this sector is directly under the head of the drive
- the sector is killed! Can be avoided in two ways: 1.Posle
positioning vypolmit team CPU "halt"; 2.Formatirovat drive
LagTrack <> 0.
This, here, glitches!