SoundTrack: (FROSTBITTEN) BY DX-1969 020 498
__________________________________________
(C) dAn!! L / PGC / BDA
__________________________________________
THEORY ZHURNALOSTROENIYA
This article is intended for those who wish to try to
produce our own magazine, but do not know where to start ...
First and foremost, need too much "light up"
for without the desire to make a class journal
simply impossible. Immediately necessary to set aside the
financial side of the second plan and fanatically get down to
business! The point is not so difficult as laborious. And
before you "settle" into a favorite assembler need to sit down
and think about some aspects of this case. You can even on
paper, for himself, to paint what should be "my"
magazine every detail.
We will not deal with information
side, and dwell on the purely technical.
To better understand the things I
slightly opened the structure of the inner
Journal DEJA VU, and the reader thinking, will already be to
delve into the matter and wind conditions on, and somewhere,
maybe it will overshadow the idea and then maybe a project born
of the new edition, which will undoubtedly ruleznym.
Let's start ...
Interface
Explain what it is, probably not
sense. Importantly - to understand that there must
do not like you want, but as the user wants!
And even more. You have to try to surprise the user and create
a "punch", which he love, began to respect and live without it
can not! It is not necessary to explain that the more device
will interrogate, the better. And, just to give the choice of
management. Everything should be queried in parallel:
joysticks, keyboard, mouse, etc. Do not forget to test the
hardware prior to the survey click on the availability thereof
devaysa.
Be sure to pay attention to both
called "auto-repeat" function by pressing and releasing FIRE.
Explain, especially than perform the selected user-defined
function, check out, and let a user key FIRE? I hope it is
clear what I mean?
Memory (RAM)
Two questions arise: First, the volume
memory on which to calculate the shell;
secondly, the distribution of memory.
If you donate 48kb, then you have no
will not scold, but to accelerate to kakihto heights is simply
impossible. 128kb - standard configuration that can and should
be supported! Especially because it's corporate standard! If
you feel a forces to support the memory> 128kb, then, of
course, it's good and it should be done, whether it is
RAM-drive, or simply to store vital necessary data.
Again, save the user from selecting the desired
configuration to it. All tested automatically and informal
level, imperceptibly for the user.
Allocates memory so that you can store the text of a maximum
length in a continuous form!
Example of DEJA VU:
In the 48th to address # 6000 "sit" data and
object code to the address 38000. With up to 38,000
# FFFF contain buffer that is loaded
Text (no graphics).
Music - BANK 1. Graphics - BANK'i 3, 4,
6. In BANK'e 7 - standard second screen, Dahle Data:
screensaver, sprites, the block schedule, etc.
Time-critical procedures in place
address # 8000 and below. Loader, text messaging, font,
variables, etc. place to address # 8000!
Do not forget about the mode IM2, the vector must be in the
range # 80 to # BF. Also remember about 257 bytes
for machines with unstable data bus.
In the extended memory "sit" different
"Raskryunchennye" procedure and schedule (frame-scroller,
screen saver, shooter sprites, etc.).
Text Format
Standard GOST - an alternative encoding for "implanted"
control codes. Color management (code 16), then Byte attributes
sprites (code 15), further options sprite: location, length,
etc. With the support of saving text to disk, do not forget it
"dry."
Music
How do you want, but if you all
music compiled in PT 3.01, it suffices to use one player for any
Mouzon STP, PT, ST! When podgruzku text
music "jamming." And in general, give the user the ability to
enable or disable the music! The new fashion - is a choice any
melody and no music anchor to a particular text. By the way, if
you not enough music, and sufficient information
then we can release the magazine though, with 3 tunes.
How is it done? A very simple!
There is a certain procedure (call it MUZNEXT),
when you call it is loaded into the next Mouzon
accordance with the table (and, if the music is turned off, the
load and do not - why waste time and drive wear;)). A plate,
approximately, is this:
SONG1 DEFB SEC1 TRK1 SIZE1
SONG2 DEFB SEC2 TRK2 SIZE2
SONG3 DEFB SEC3 TRK3 SIZE3
DEFB 255; mark the end of the table
Substitute the data in accordance with the directory drive:
track, sector length.
LOADER
Importantly, to ship! But turbo-loader still nice!
Be sure to Install the loader on the drive from which you
started the magazine (A, B, C, D). Also, be aware that not all
loaders are working in turbo mode!
If the survey error TR-DOS is not done, then at least try to
get by pressing BREAK or when there is no disk in the drive
track is not left hanging!
VIEWER
80% success! The most important thing - how can
faster. Reduce by any means all sorts of blinking and
twitching. And absolutely Lazha - is when in 128 mode, text
propechatyvaetsya completely in front of the user! Include an
alternate screen. If the interface on an "arrow", then take
care of a survey of "hot" keys!
FONT
Legible! 32, and preferably 42 characters in
line. 64 characters - in exceptional cases and only for
listings. Avoid any distortion in the fonts (Gothic, italic,
propyl).
Packing data
The stronger zakryunchim, the more "vpihnem" on the disc -
it's a goat and clear! Find a packer, which allows you to save
the compressed files without depakera. Keeping data without
depakera you, firstly, complicates the hacking, and secondly,
save about 1 sector for each file (and there you have a lot)!
Also look at the time of unpacking - the
sooner the better. At Scorpion'ah can
include turbo: LD A, # 7F; IN A, (# FD). Disabled since: LD A,
# 1F; IN A, (# FD).
zE Optimization
What is the optimal code? This is when
code takes up little space and works fast.
Use a plate. For example, there is no need for everyone to
write your text loader! Doing so:
CALL LOADER
TAB DEFB SEC, TRK; track and sector for the text
DEFB SEC, TRK; track and sector for the music
DEFB 13; Bank
DEFB SEC, TRK; track and sector graphs
DEFB 14; Bank
DEFB SEC, TRK; track and sector graphs
DEFB 255; marker
... A continuation of the program
I explain. Call the loader, the stack is postponed the
return address to the address TAB. The first thing we remove
the address from the stack and in accordance with the tablet
will ship files until we reach the marker. By the way, BANK
for the text is always # 10, for music - # 11
therefore, the plate may be omitted, the loader itself "knows"
where they were shipped.
We are looking for the address at which is 255 and
transfers control to the ADR +1 (JP (IX +0), or
JP (HL)). Thus it is possible, for example,
window to draw. Call WINDOW, and the stack
remove the address from which the stored coordinates and text
on the print!
Do not spend on the job variable:
Standard Optimum
BYTE DEFB 0 MET LD A, 0
LD A, (BYTE) LD A, B
LD A, B LD (MET +1), A
LD (BYTE), A ...
...
And anyway, give yourself installation to optimization,
think about how to save more! Indeed, as the proverb says - any
protsedurku can be reduced by at least
1 byte.
Catching bugs!
Another proverb says that
in any program there is a glitch. I'd add, if no glitches, the
program itself there is a big glitch! And another idea, each
caught a glitch raises two other, but this is debatable!
What to do with glitches? There is much more interesting
than fishing! First glitch to be found, and then catch it. Good
will "bite" if the fish are not on the same machine on which to
write programs. For example, you write on Scorp'e - catch on
PROFI; write on PROFI - catch on Pentagon'e etc.
If a bug is found, and catch it fails, you can try to get
around it in software, although it may cause new bugs!
RELEASE!
This is certainly the most pleasant in zhurnalomeykerstve!
When the magazine is ready and all the glitches caught, it's
time to gather all those who participated (in every sense of
the word). If the winter, the apartment, the summer-on nature.
Good Zatar all necessary and implement the most savage way
RELEASE! If this is the first number, then these things called
the presentation! In this process, need to say nice words to his
address because a beneficial effect on digestion. And only
after you feel RELEASE zhurnalostroeniya great benefit and will
feel fine, at least until the morning ... ;)