--------------------------------------- Topics: Another view of
computers, project future ROM , sub- BASIC 48.
Author: Yuri Vlasenko (PI con.)
---------------------------------------
Here come the hour when I was given slovo.V community of
programmers, I not very well known, as is the case
in hacking and other popular titles dataprojektor
programmatiki.No it does not entitle the fact that the view of
our Asas prevozobladalo over common sense.
You will immediately ask what he wants
say this expression and what is the point
embedded in these, nestol flattering words, in
address outstanding programmers.
The fact that many programmers and
circuitry to lament what they say
why make improvements to the Spectrum
machines, if they will soon exit the market.
Many people say so: why should Spekrumu
its graphics and other improvements in
improvement plan of this vehicle
if you already have such monsters as
IBM or AMIGA, would not it be easier to take
the same motherboard from IBM, vykusit percent,
dopayat to Spectrum, and everything is in order, the
You will have its own semi-IBM, yes, yes it is
it's you and you get, and easier to say
ugly car, do not mention any IBM
Spectrum nor even if you have it and will
work, then no software you can not find a ney.A that the same
talk about massive holders of Spectrum, who are unable to buy
IBM or AMIGu, but is able to buy
Spectrum and time to do revision
to the child.
I certainly know a sarcastic
response on this matter all circuit designers and programmers,
because they already too lazy to do anything for the Spectrum,
so as there are already more powerful and
advanced computers, and so much more
easier to break up a computer to
prisobachit to another than do
something new.
In this case, neither is better to take
IBM or AMIGu and not to break them in order to
satisfy all Sinkleristov.
But while there is Sinclair and while there are requests for
revision to it, circuitry, and programmers will not give
rest.
In this I and many others
Sinclair would agree with me, and probably
support my point of view.
In addition, a lot. programmers do not consider
48k car for something worthwhile and develop their programs
primarily on 128k, but that would be five years from now: can
if and 128k car will be something funny
relative to the more moschnym.Ya certainly not
against the development of Sinclair and enhanced. his
memory (I myself speak PENTAGONOM with memory.
512K, Turbo Mode, and the cache memory, 32k), so
What now, all anyone Computer worse, getting it all to do with
their machine in order to see the demo
or enjoy a toy to 512K.
Yes, expand their capabilities should
everyone if he has money and desires.,
But programmers should create their
masterpieces and for weaker machines, say
1 or 2 levels of play, while the remaining levels
for the 128k, while cautioning polzovatelya.Ya do not think so
slozhno.A with systems even easier, because they
essentially occupy 02.04 kilobyte memory, and
some even less.
So I think it's worth over zadumatsya
these problems, and do not rush for more
upgrade to more powerful computers, not
while ensuring that basic polzovateley.Potomu that in my
opinion this is the case, as his time talking revolutionaries
"We are our, our new world tanks were constructed, it is not
necessary to repeat the mistakes that then no efforts are not
correct. After all, who switched to 128k ..., IBM,
AMIGA, etc. in soy-time started with 48K
in the rare case 128k car, but now
put themselves on the level abroad. programmers working mainly
at the firm, which in turn has a coc
Tave great Arsene. programmers, circuit designers, artists and
musicians. But Sinclair has mostly lived by
People's creativity and enthusiasm program
mmistov samouch. or programmers involved.
at the beginning of admired that machine, and
then sold it for "30 pieces of silver"
those to whom this machine is in the throat.
So let's not go on a leash
well-known companies, whose future, as yet
not defined, although in this period they
and occupy a priority place in the market.
You are right that I talk a lot about
those or other problems, but not specifically
give any answers to nih.I it right, because I do not appeal to
all who have has in its arsenal, IBM ... etc.
again vozvraschatsya to Spectrum, I just
call to pay tribute to this machine,
which in turn gave them the opportunity to be a programmer as
such. I have no doubt that there are few
programmers involved. with confidence. may
say that they have something to do could
IBM, except that they Russified abroad programs, while
perverting the program itself and inserting
her his name and rejoicing once hakkerskoy rabotoy.Eto also
needed, but it does not do us chesti.Nasha dataprojektor
technology at the lowest level, but
the ability of programmers and Hacker
quite high, with nothing and I congratulate
All IBM-schikov and AMIG-nick, which
do not want to understand us, because we are for them
something resembling a dinosaur, a creature
that there, there should umeret.No because
Dinosaurs are not extinct one day, and
people do not have people instantly, and
started their life out of sticks and stones.
So let us ponder
that whether or not to invent the atomic bomb
if we have not yet learned to Use
stick.
All these words I say to all
journals that are not just in their rooms
Discuss this problemu.V one they
write about IBM and AMIGA clubs, in others they
also condemn ih.Moya point of view
voprossu this is, "It is not necessary for
buying a vacuum cleaner and dispose of the broom
his doma.Navernyaka he will be
much more needed than a brand-new
vacuum cleaner, because not all mussor is
debris, and not all can be cleaned with a vacuum cleaner. "
I therefore, in conclusion I want to say
all users that IBM-it's good
if you have one, but Sinclair is much
better, because it is at all.
These words, which I believe should be like
theme for further work on the pro -
Rummy to Sinclair and to support
Sinclair himself, as the computer has become
For many truly computer-Number 1.
On this I agree with you farewell until the next
journal issue, and if someone wants to
continue the debate on this topic, please write
addressed to me in any magazine produced
or contact:
310055 Ukraine
Kharkov, ul.2 Five-Year Plan, 44
Yuri Vlasenko (PIcon).
(PIcon) means the PI constant in
abbreviated form.
With you again I PIcon, asking not to be confused
with the word Beacon or he podobnymi.I here
Again, I want to talk about Sinclair and
it problemah.Ved anybody not a secret
that the ROM of Sinclair's not perfect and has
a lot of mistakes, besides not working
clear kak.No is not the only
not the worst mistake of those who did
firmware PZU.Samoe terrible that
Sinclair's version as much as themselves
errors and gaps in the Sinclair.
Simple words can say so
yet no one programmer in the world
managed to make a program that works
on all versions without a glitch and glitches,
or even running.
This unwittingly suggests that
Sinclair is somehow proving ground for
software testing and
proficiency testing Programmer
knowledge of all available versions and their ability to be
aware of all the deficiencies of each of these machines. I do
not think that someone from the programmers can say with
confidence that He knows how to work one or another version
Sinclair, and what are its shortcomings,
which are often issued for the original
circuit solution of some
problems existing in other versions.
This issue raises many other
problems that are interfacing all
program with different versions of Sinclair.
Many programmers are struggling with it so
write programs that deliberately selected
type of machine and warn their
users, while others write the routines that define the type of
car and adjust to it. But this is not an ideal solution of the
situation, so it requires additional memory to determine
version and type of computers, so, and knowledge
all of its flaws.
The best way would be
make the firmware ROM, which is itself determined
was determined would be whether this Computer to work with this
program or not. It is sufficient to allocate a portion of
system variables for inclusion in the
her computer type and size in kilobytes, which raschitanna one
or another program.
Then, any programmer, even starting.,
himself will be able to make the variables and calmly
write a program without thinking about
that it is necessary to write the files of another to determine
versii.Ved it takes a lot Compute time and memory. And
sometimes is is one of the causes of headaches, which leads to
the superconducting to health complications.
In addition, versions of themselves Sinclair so much, but ROM
is used in all one and the old design,
Version 5.03-5.04 rarely 5.01, although it was
is the type and version 6.04.
I had the honor to meet her, but to
I regret nothing new in it
No, except that the inserted music neobnulya
emye memory banks during discharge and mounted an old version
at the moment STS is something that concerns BASIC 128!.
Apart from the fact that Exclusive. advanced
version of the BASIC 128 and replaced with normal
BASIC 48 in that mode, 128 KB
excludes the possibility to enjoy the opera
torus PLAY, RAM-drives and other possibilities for programming
from BASICa. A change in the TR-DOS have been made to extract
lko funny and no one needs that, on
This nehochetsya even govorit.Vo first
it was said that MAGIC corrected and
Now he unloads all the memory banks without
regardless of whether they were included or
No, but really this is not in
trace, except that the address processing MAGICa
transferred to another mesto.Krome this
stating that the inserted program
for fast read and write sectors.
I don `t know, maybe they and faster than usual.
routines, located at 15635
but I have not noticed, besides possible
it would make a routine for
reading and writing and rewriting one and
There are also two-fold, changing the number of transitions and
does not need it. In addition some # $% wrote podprogramku
for the ROM and uses for this
commands like
ld ix, # 3EF5: push ix: jp # 3D2F
After all, you already are in ROM and all
Treatment can be made directly to the VG93
At least this is so:
jp # 3EF5
if you want to use a standard of
shivku.Vidimo routines have been developed and tried out the
RAM and then without any changes, moved to PZU.Togda
I do not understand, but why write command
in ROM for the treatment directly to the ports
VG93. Besides, why should the fruit in the ROM
a bunch of commands such as
in a, (# 1F): ret
out (# 1F), a: ret
in a, (# 3f): ret
out (# 3f), a: ret
...
...
in a, (# FF): ret
out (# FF), a: ret
not it would be easier to do so,
in a, (c): ret
out (c), a: ret
although in the last command is not necessary,
because it already exists in the standard
PZU.Krome this mean that
Many people write and speak in their journals
supposedly direct command to read. Port # 1F
in ROM net.Eto true, look address
# 3C30, and you probably will see her there.
I can not say when and who put her there, but it is in ver. ROM
5.03 and 5.04. Rumor has it allegedly did it for
compatible computer pros, but it
not so important, the main thing that appeal to
Port # 1F already exists.
In conclusion I wish to cite as an example
files of small for quick reading
Recording, which takes a little
memory, and besides quite a speed,
1.5-2 sec loading (unloading) 160
sectors or in translation 40 kilobytes
memory in such a short time and under
This is not buggy on the type of drive
if it is inhibitory.
In addition, it is universal for both
read and write.
The first part serves to demonstrate
its work, the second part of the core.
HL = address of where or how to ship.
DE = the initial track, sector.
D-Track 0 ... 159.
E-sector 0 ... 15.
B = number of sectors read
C = even number-reading, the odd record.
A = drive (0,1,2,3)
org # 4000
LOAD ld hl, 24500: ld de, # 0000: ld a, 0
ld c, 0: ld b, 160: call quit
ret
SAVE ld hl, 24500: ld de, # 0000: ld a, 1
ld c, a: ld b, 160: call quit
ret
---------------------------------------
quit ld (# 5cde), a: dec b: rr c
ld ix, # 3fe5: ld a, # 80: jp nc, load
save ld ix, # 3fca: ld a, # a0
load ld (# 5cdd), a: ld a, # 08: call pos
disk ld a, (# 5cde): add a, # 3c
ld c, d: srl c: jr nc, l1: sub # 10
l1 push bc: ld c, # ff: call dos1
pop bc: ld a, c: ld c, # 7f
call dos1: ld a, # 18: call pos
loop push hl: call dos: pop hl: inc h
inc e: ld a, e: cp # 10
jr z, st: djnz loop: ret
st ld e, 0: inc d: jp disk
dos push de: ld a, e: inc a: ld c, # 5f
call dos1: ld d, # 14
di: ld c, # 1f: ld a, (# 5cdd)
call dos1: ld c, # 7f
call dos2: pop de: ei: ret
pos ld c, # 1f: ld iy, # 2a53
dos1 push iy: jp # 3d2f
dos2 push ix: jp # 3d2f
The program can even accel. but
there is no guarantee that it will work on
Brake disk drives.
Here we use registers ix and iy
simultaneously, because in one store
address of the subroutine, in a different address
to access the port.
At this point I say goodbye to you and hope
that my proposal ever
materialize ROM TR-DOS.
BASIC Subroutines 48
# 03B5 949 Sub-BEEP
HL = DE = duration frequency
# 03F8 1016 Sub-BEEP
L = E = chastora duration
# 04C2 1218 Sub-SAVE
taping without a title
# 04C6 1222 Sub-SAVE
too, with blocking BREAK
# 0556 1366 Sub-LOAD
read from the tape without a title
IX = DE = address of the length
A = # 00-LOAD A = # FF-VERIFY
# 0C0A 3082 Printing messages
DE = address of message
A = number of order
# 0D4D 3405 restoration of permanent
Attributes screen
# 0D6B 3435 Sub-CLS
Cleaning the Screen
# 0D6E 3438 Cleaning service
Screen
# 0DAF 3503 Sub-CLS
Cleaning the Screen
# 0DFE 3582 Sub-SCROLL
Scroll official screen
1 familiarity
# 0E44 3652 Screen Cleaning service
B = (x-1) the number of rows
# 0E9E 3742 Address line znakogene
operator HL = address
A = row number
# 15DE 5598 Sub INKEY $
A = symbol CY = 1-set
# 1601 5633 Determination of flow
A = number of flow
# 1728 5928 Cleanup Stack
Clears the specified stack
# 1835 6197 Podprogamma LIST
HL = address of the BASIC line
# 1A1B 6683 printing of the screen
BC = (0 ... # 270F)-number (0.9999)
prints up to 10-tirichnom calculus
# 1CAD 7341 Transfer time
attributes to the permanent
# 1F3D 7997 Sub PAUSE
BC = pause as in BASIC
# 1F54 8020 Sub-BREAK
CY = 1 is set when you
# 203C 8252 Sub PRINT
DE = BC = length of the address
Are also set PAPER, INK, BORDER
AT, TAB, OVER, BRIGHT, FLASH and
other control characters
DB 22,0,0,16,1,17,2, "O.K." sample
# 229B 8859 Sub-BORDER
A = color of the border as well as in BASIC
# 22B0 8880 Address Calculation Screen
A = position on the X
C = the position of the Y
Imprint
HL = address of the screen
A = offset (bits)
# 22E5 8933 Sub-PLOT
B = position of X
C = the position of the Y
# 2314 8980 Conclusion of the stack
A = integer
# 232D 9005 Sub-CIRCLE
Stack = radius
# 24B7 9399 Sub-LINE
Stack = length <-top of the stack
Stack = position on the X
Stack = position of the Y
# 24BA 9402 Sub-LINE
B = position of X
C = the position of the Y
DE = offset (# 00 = 1 or # FF =- 1)
# 2AB6 10934 Enter the number on the stack
A, E, D, C, B => stack
# 2BF1 11249 output numbers from the stack
A, E, D, C, B => stack
# 2CB8 11448 Enter the numbers on a stack of line
PRINT "......"= BASIC line
A = string length
# 2D28 11560 Enter the number on the stack
A = the number of
# 2D2B 11563 Enter the number on the stack
BC = number of
# 2D2E 11566 Enter the number on the stack
BC = number of
# 2DA2 11682 output numbers from the stack
BC = integer
# 2DE3 11747 Seal of the stack
On the stack must be a number, after
print number, it disappears from the stack
# 30A9 12457 Multiplication of two numbers
DE * HL = HL
# 33A9 13225 Checking for free memory
the stack
RST # 08
DB (0 ... N)-error handling
RST # 10
A = character to print the symbol and
control codes
RST # 18
CH_ADD = (# 5C5D)-address symbol
Print
RST # 20
CH_ADD = (# 5C5D)-address line
to display
RST # 28
DB 5,3,15 ....- actions taken
DB 56, the end of the calculator
Works with those being
currently on the stack
RST # 30
BC = length-free place
Workspace
RST # 38, poll keypad
Here is a partial list of the system subspace.
BASIC 48, which can be used to
writing their programs, although it is possible
create their own, if necessary
speed, accuracy and simplicity.
The next time will be given podprogramy
that can be used when working
with a floppy drive in the TR-DOS.