Faultless #09
24 мая 1998
  Бейсик  

NEWS of Picon - The draft of the future ROMs. BASIC subroutine 48.

<b>NEWS of Picon</b> - The draft of the future ROMs. BASIC subroutine 48.
--------------------------------------- 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.





Other articles:

ASM4KOFF - Run the compiled melodies. Loader at ACME. Using on-screen file ArtStudio (display). Maximum speed on the conclusion of sprites. As quickly as possible output points. Fastest up the stack.

CCLFSTM - All disk copier 128/512K.

CCLFSTM - The album "Backstreet Boys"

CCLFSTM - News from the Spark group

CCLFSTM - Description of system software: Power Code Decrusher v6.2

Demo Design - On the history demomeykinga.

Demo Design - Useful and interesting solution algorithms (implementation Fong).

Flash - The extension of the color palette ZX-Spectrum.

GFK Fraktiuit - Secrets of the graphic standards GX1.

LZW and GIF - Description of image formats. LZW and. GIF.

MUSICNEWS1 - Music kaleidoscope of pop ...

MUSICNEWS2 - METALL NEWS.

NEWS of Picon - The draft of the future ROMs. BASIC subroutine 48.

OPERATEXT - From the history of the demo Oper'y.

PRICE - Price list for products firm Scorpio.

RUSH - On the coterie in Chernigov, in April 1998.

SPECCY AF - Immortal Speccy.

Did you know - Passwords, eternal time and the bombs in the game Last Courier. Passwords for the game: X-Reversy; and muzykalkam: Branch of Mind demo, Diesirae demo. Hidden part in Faultless 2, 3, 4, 5, 8 (passwords) ...

Introduction - On the pros and cons of numbers.

Medem - The history of Zaporizhzhya modem.


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Iron - scheme scanner for ZX Spectrum.
Entry - the story of creating a magazine.
Our news - On the Periodicity out of the newspaper.

В этот день...   3 May