Inferno #04
22 июня 2003
  Софт  

Softinka - Description of the GUI for disk-TR-DOS - ChAOS.

<b>Softinka</b> - Description of the GUI for disk-TR-DOS - ChAOS.
                  ChAOS

  Vitamin

ChAOS (C) is a graphical
wrapper for the disk system TR-DOS.
Its main features:

-Preemptive multitasking
 Up to 16 processes in real
 To 24-thread interrupt
-Window environment
 Up to 16 windows (*)
-Based communications dispatching
Support all major memory standard
 up to 1 megabyte (**)
Support any media,
 compatible with TR-DOS
, Much more ...

-----------------------------------------(*) Type for each 
application window. But I I do not think you can run 16 
processes:) expansion is possible, but gemorrno ...

(**) Without any problems growing up
16384 * 256 = 4MB

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

People! I want you to know that
Spectrum you really do not pisyuk where multitasking is 
provided at the hardware urovne.Poetomu things do not work as 
quickly as we would like (but faster than expected

:), And the reliability of the system leaves much to be desired 
- can not call the Left procedures or inaccuracy in the code 
will hang you the whole system (in the best case, just to 
brake, as is the case with a simple looping). 

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Legend
----------
Application, the process - a task performed
 in real
Thread, yarn - a resident interrupt
Home - Bank of the upper memory
Block - the memory of 256 bytes at the bottom
 Memory
The upper memory - pages that are to
 Address # C000
Lower memory - the memory addresses
 # 8000 - # BFFF

All necessary constants and names are described
in file CAPI.W, which is located in the annex.

++++++++++++++++++++++++++++++++++++++++++
+ Warning! I apologize +
+ People who sharyat in programming +
+ Vania under Windu for some nesootve +
+ Tstviya in terminology and the names of func-+
+ Ktsy. +
++++++++++++++++++++++++++++++++++++++++++

How it works
(And running at all?:)
------------------------
In this shell is implemented preemptive
(True) multitasking. As probably
Many guess scheduler hangs on interrupts and tasks themselves 
are executed in native mode. Each process has its own stack, 
your code and your windows. One of the properties of the 
process is its priority, which determines the time that

process is guaranteed to be able to work
as long as it does not interrupt the scheduler.
A graph of the process:


          + -> Works ----- - + +

          | ^ | |
-Start ---> + | | + -> Output ->

          | | V |

          + - Blocked - +

In other words, the process can be created
zablokirovannym.Dlya continue its work
lock must be removed by another process.

Planner cycle through all running processes, giving them all an 
opportunity work. In addition to the scheduler interrupt 
satisfied: 

-Drawing arrows
Poll of the keypad
-Execution threads

The process can be removed from the execution of
the following reasons:
-It sent the message window to close
-He made a mistake during the call the system functions facil
-He was shot by another process
-It ended in good faith

Handles
-----
Each object in the system, whether it be a window
file, or thread, when you create is assigned
unique at the moment the identification code by which to 
determine the type of object and its svoystva.Etot code is 
called handle. Physically, he is represented as

computer word, where the high byte
denotes the type of object, and the younger - his number.

Application structure
-------------------
AppDescriptor application descriptor
AppStart entry point to the application
SPRITE print buffer (2k).

                If nothing prints,

                You can overwritten.

Scope of AppDescriptor to AppStart busy as application data and 
system variables. Please do not go there to climb.


Scope of AppStart application to SPRITE
can use at their discretion.

In order that the process can communicate with the system, it 
must register itself under the at least one window. It can be 
seen on the screen, but it is necessary to obtain

messages. (In principle, it is possible two processes
hang on one window, only between
must be a connection.)

The main parameters of the application
serve as its priority, flags, and icon. All
It is situated in the description.

The application should consist of three parts:

Partition initialization
-Cycle of receiving messages
-Message Processing

Each application takes a page in high memory and one block in 
main memory stack. When launched, control is transferred to 
AppStart with the handle of the application. Low byte handle 
defines page, where it is (its number). message loop receives 
messages for this Annex okna.Esli several windows, then the 
cycles must be implemented for all windows in turn. If no one 
window does not receive actual sooobscheny, you can skip the 
time slice, giving an application by passing it drugomu.Tsikl 
consists of three parts: 

Inbox messages
-Treatment (standard or not)
-Reply message

Restrictions on the applications:

-You can not reassign the stack to the top
 Memory
-Remapping of the stack to provide
 reserve 22 bytes
-You can not deny and allow interrupts
-You can not reassign the interrupt vector
-Use non-standard functions are not
 guarantees the stability of the application
-When sending a message wmClose Chief
 application window is to be made
 Exit application
-Values ​​of windows, applications,
 filaments described in the code may not match
 with their importance at this time.
 To update the data should be used
 special features
-Need to check the result of functions
 query memory, windows, threads, etc.

Memory
-----
The system provides memory management functions of two types: 
block and page. An application can reserve for your

handle blocks or pages. When it is closed
all occupied by its previous memory is freed and can be used by 
other applications. In the system of two types of pages - pages 
of code and data pages. The difference is that the pages of 
code can be not more than 16, and they stand out from the 
beginning memory, a data page can hold

the rest of the upper memory area and highlights
they have since the end of memory. The number of available
pages is determined by the choice of driver
memory.

Memory Card

# 5e00 System kernal
# 6000 Variables
# 8000 Buffer. Used for stacks

      residents, etc.

      Most of it is occupied by the system -

      code is very great:)
Attachment # c000

Windows
---
The windows are a key element of the application. Creating a 
window consists of several stages.

-Register okna.Sistema returns the handle
 created window.
-Create formy.V memory area stipulated Noah during 
registration, create a graphic  image window corresponding to 
the described nomu. The system supports skins, makes it 
possible that returns to change the look of windows. 
-Construction of the window. To form fit all  described 
components. The flexible system allows us to create various 
components. The map window. Appears on the screen

 Create the window.

Then, the cycle of receiving messages and
obrabotka.Dlya their work with the components of the window is 
a function of determining which component is now activated, and 
what to do. 

Yarns
---
Thread is called small protsedurka, which is called every 
preryvanie.Ona must be fast enough so as not to hinder the 
establishment sistemu.Pri thread shows the parameters - 
activity thread and its residency. They are used mainly for 
timing, processing small amounts of data. 

Peripherals
-----------------
Keyboard. Used to control
arrow and the text entry informatsii.Imeetsya buffer for 32 
elementa.Rusifikatsiya by a separate thread. Mouse. Supported 
by the standard three-button Kempston mouse. Joystick. Here and 
say nothing:) Drive. Supports up to 16 disks. By

default, the first 4 serves driver
# 3d13 processing oshibok.Cherez additional drivers can use 
other carriers (such as RAM-Disk'a), Max

volume - 1 Mb. (256 tracks of 16 sectors
256 bytes).
Music coprocessor. There are no restrictions on its use 
net.Esli multiple applications simultaneously, try to play 
music, there will be distortions in the form of cod. 

Shared libraries
----------------------
To extend the functions of the system uses dynamic 
biblioteki.Esli application makes a request to connect to any

library, which until then was not used, then there is an 
allocation of memory under this library and its load, as well 
as registration of the calling application as a user of the 
same biblioteki.Esli such a library existed before this in the 
system, then a new application simply connects.

An application can use the library
independently. In this case, it is itself
must load the file into memory and perform initialization. When 
you call the standard initialization functions automatically.


Files
----
There are three levels of the disk:
symbolic access to files, work with the entire file and use the 
functions drivers. When a character access to open file for 
read or write and read and write to the file byte by byte. In 
the buffer memory is organized for the file and counter access. 
Access must be made within length of the file. When working 
with whole files entry occurs directly on the disc, with

This file is not registered in the system. Record file may 
occur in different ways. If a file with that name already 
exists, the system can overwrite the existing file new. 
Recording can also be carried out in an empty area of ​​the 
disk occupied by the deleted files. 

Object Properties
----------------
Below are listed the properties of all objects in the system 
and some values ​​that These properties can prinimat.Esli 
states that is required, it is possible to use only one value 
of the possible, and if possible combinations, all constants 
described below can be used in any order using radix

conjunctions (OR, |).

The description will be used by the so-called "Hungarian entry. 
This means that on a variable name, or rather by its prefix,

You can find out the type and takes place in
memory.

Prefix | Type | Size
--------+--------------+---------
  b | byte | 1 byte

  w | word | 2 bytes

  p | Index | 2 bytes
 ps | Index | 2 bytes

       | On line |
 im | Image | 9 bytes

       | 8x8 pixels |

        | Attributes |
 hdc | handle | 2 bytes

Eg. Partly bLeft - variable
type B, and psText - pointer to a string.
All strings are ASCII-encoded with the following additional 
code: 

26/27 on / off bold
28/29 italics
30/31 underline
0.13 end of the text.
8 tabs with a step of 32 pixels

Process.
++++++++
Process handle is in the header.
Here is its structure:

psText address the application name, up to 14

          characters.
wStack Stack, initiated by the system.
bPriority process priority. Possible

          Range:

          PRIORITY_IDLE

          PRIORITY_NORMAL

          PRIORITY_HIGH

          PRIORITY_REALTIME
bCounter internal variable.
bFlag Flags of the process. The value of flags:

          APP_IS_ACTIVE process is active;

          APP_NO_BUTTON no buttons

                          taskbar;

          APP_TRAY_ICON icon in the tray;

          APP_IS_HIDDEN hidden process.
imIcon application icon.
wKeyDown Pressing the button at the moment.
wKeyPres internal variable.
bInMode input mode. Flag values:

          RUSSIAN_LNG

          INSERT_MODE

Thread.
+++++
Descriptor only exists in the system.
Properties are defined when creating the thread.

Window.
+++++
Format descriptor:

bLeft window coordinates in familiarity.
bTop
bWidth window size in familiarity. Window

          must fit on the screen.
bHeight
bStyle window style. Flag values:

          WINDOW_HEADER the window is

                          title;

          wINDOW_HIDDEN window is not visible on

                          screen;

          WINDOW_ON_TOP window on top

                          other windows;

          WINDOW_CLOSE a button

                          "Close";

          WINDOW_MINIM a button

                          "Collapse";

          WINDOW_SYSMNU there is an icon in the

                          title;
hdcParent handle of the application of the owner

          this window.
psName caption in the title.
pSprite Sprite window.
pDescript this description.
bCursor an arrow as it passes

          above the window. Possible values:

          cArrow usually an arrow;

          cHGlass hourglass:

          cHand hand.
pObjects Objects window.

If there are multiple windows on the screen, for
whose flag is set WINDOW_ON_TOP, they
are displayed in order of precedence, handles,
except for a window with the handle 1 (taskbar).
Sprite window is an array of familiarity with the attributes. 
The total memory footprint window, defined as follows: Size = 
width * height * 9. 

Objects window.
+++++++++++++
Format Descriptor objects:

db ObjectType
dw Adress
...
db -1 end of the description.

At Adress are descriptors
objects of one type of order. Ends
transfer of bytes 255.

All object coordinates relative to the upper-left corner of the 
window. 


Object: Text
Type: TLabel
Format descriptor:

bLeft Left Indent in pixels.
bTop away from the top of familiarity.
bWidth width of the text in pixels. If

          0, defined in the text.
bStyle text style. Flag values:

          fNormal normal;

          fBold bold;

          fItalic italic;

          fUnderlined underlined:

          fBackColor as

                          background using
                          call of the system

                          color.
spText text.


Object: active zone
Type: TZone
Format descriptor:

bLeft coordinates and size in pixels.
bTop
bWidth
bHeight
bFlag flag zone. Permissible value

          BLOCKED.


Object: The image
Type: TImage
Format descriptor:

bLeft Coordinates in familiarity.
bWidth
pSprite data.

The format of the sprite.

        db width

        db height

        db flag; 0 bit - mask

                 1 bit - the attributes

Next come the data in the format of 8 bytes of data
familiarity +1 bytes of attributes. (in the case of the mask 
bytes are alternated, starting with a mask. Y Attributes also 
have a mask.) If no attributes, then one familiarity 8 / 16 
bytes. 


Object: Button
Type: TButton
Format descriptor:

bLeft coordinates and width znakomes
          max.
bTop
bWidth
bFlag permissible BLOCKED.
psText inscription on the button. If 0,

          no text.

Text on the button will automatically center.


Object: Switch
Type: TCheckBox
Format descriptor:

bLeft coordinates and width znakomes
          max.
bTop
bWidth
bFlag Valid flags are:

          BLOCKED

          CHECKED
psText text immediately after the switch.


Object: Radio Unit
Type: TRadioButton
Format descriptor:

bLeft coordinates and width znakomes
          max.
bTop
bWidth
bFlag Valid flags are:

          BLOCKED

          CHECKED
psText text immediately after the switch.

Parameters are the same as that of the switch.
This descriptor provides one switch. Each separately described 
the group of switches in WindowObjects is a related group.



Object: scrollbar
Type: TScrollBar
Format descriptor:

bLeft coordinates and size in znakomes
          max.
bTop
bSize
bFlag Valid flags are:

          BLOCKED

          VERTICAL | HORIZONTAL
wItems Total items in the list.
bViewItems perceive at once.
wVariable Utilities variables.
wPosition position of 0.


Object: trekbar
Type: TTrackBar
Format descriptor:

bLeft coordinates and size in znakomes
          max.
bTop
bSize
bFlag Valid flags are:

          BLOCKED

          VERTICAL | HORIZONTAL
bMax number of positions.
bPosition position from 0 to bMax-1.


Object: editor
Type: TEdit
Format descriptor:

bLeft coordinates and size in znakomes
          max.
bTop
bWidth
bFlag Valid flags are:

          BLOCKED

          edOldIndex

          edKeepFocus
bLength Length of edited text.
psText text.

edOldIndex - use the old position
kursora.Obychno it varies according
with the place at which the arrow.
edKeepFocus - not to lose the input focus when
switching windows.


List of CAPI-functions
--------------------
Arithmetic functions.
+++++++++++++++++++++++
Legend:

rr1-> rr2

     ^ ^ ^

     result
^ ^ ^
original data.

rr1 <- raw data.
rr2-> result.

HL (X, Y) - in case H-x, L-y.

Calculation function addresses:

D_HL_
D_DE_
U_HL_
U_DE_
ATR_CONVERT_-address in the display area

              translates the address attribute

              appropriate familiarity.

              HL-> HL

COOR_Z_-calculation of the addresses in the screen on

              familiarity.

              HL (X, Y) -> HL

COOR_ATR_-calculation addresses the attributes of

              familiarity.

              HL (X, Y) -> HL

COLOMN_-calculation of the addresses in the screen on

              pixels.

              B (Y) -> HL

MULS_-multiplication

              HL = H * A
MULT_ HL = DE * A
Mult_ HL = B * C

SQRT_-square root

              (C) Cardinal / PGC / BDA

              HL-> HL

Sqr_-square

              HL = L * L

DIV_-division

              HL = HL / DE
Div_ DE = DE / BC to rounding.

STR_-translation of a string:

              DE-address text;

              c = 0 A-> (DE)

              c = 1, HL-> (DE)

VAL_-Thong translate into a number.

              (DE) -> HL conversion goes to

              meeting of a character not equal

              digit.

Graphics functions.
++++++++++++++++++++
ClearRect_-cleaning rectangular

                area in the window.

                BC (X, Y)-dimensions

                         familiarity;

                HL (X, Y)-coordinates on

                         window;

                IX-handle to the window;

                A-fill color

                   attributes.

EmbedSpr_-introduction of a sprite in a window.

                DE-address data;

                HL-handle of the window;

                BC (X, Y)-coordinates

                         relative to the window

EmbedButton_-introduction of the buttons in the window.

                IX-handle to the window;

                HL (X, Y)-coordinates on

                         window;

                DE-address text;

                B-width.

EmbedCheckBox_-introduction of the switch in

                window.

                IX-handle to the window;

                HL (X, Y)-coordinates on

                         window;

                DE-address text;

                B-width;

                A-flag.

EmbedRadio_-introduction of the component

                Radio Unit of the window.

                IX-handle to the window;

                HL (X, Y)-coordinates on

                         window;

                DE-address text;

                B-width;

                A-flag.

EmbedScrollBar_-introduction of the scrollbar in

                window.

                IX-handle to the window;

                HL-address descriptor

                    this object.

EmbedTrackBar_-introduction trekbara the window.

                IX-handle to the window;

                HL-address descriptor

                    this object.

PushButt_ - "click" button 1x1

                familiarity.

                DE (Y, X)-coordinates on

                         screen.

PushButton_ - "push" button.

                HL (X, Y)-coordinates on

                         screen;

                B-width of familiarity.

Working with text.
+++++++++++++++++
GetTextWidth_-find width of text in the

               pixels.

               DE-> A

ClearBuf_-Cleaning the print buffer on the

               256 pixels.

               HL, DE, BC-preserved.

OutTextXY_-text output to the screen

               specified coordinates.

               DE-text

               HL (X, Y) - coordinates of print

               C-print width in pixels

                  (0 - unlimited).

               A-style text

               IX-window handle.

WriteTo_-output text to the clipboard.

               HL-buffer address.

               X_P-indentation.

               All other parameters

               are the same. Clipboard format

               screen.

Editor_-text editor. If mouth
               installed a flag edOldIndex, then

               input cursor is in

               old position, or - in

               place specified cursor.

               If you lose the window of focus

               input is checked

               Flag edKeepFocus. If he

               set, the input mode

               preserved, otherwise occurs
               return leads. Function ISPO
               box is used the current input mode,

               and when you noncharacter

               keyboard shortcuts are

               output window, sending community
               absorption wmUser with depression

               keys as a couple
               meter. When you change the length

               editable text all

               the remainder of clogging

               zeros.

               DE'-handle of the window;

               HL-mail facility;

               DE-coordinate direction

                   relative to the window;

Window functions.
++++++++++++++++
To store information about the windows in the system
There are two buffer - the buffer descriptor where
stores all the information about the windows that exist 
currently in the system, and the z-buffer which stores the 
order in which windows will be displayed. Place the box

on top - his last show, respectively, over all possible windows.

Check the correctness of the handle is not, so be careful.

CreateWindow_-registration window.

                   IX <- handle;

                   HL-> window handle, or -1

                        If an error.

GenerateWindow_-drawing of the windows in

                   image buffer.

                   HL-window handle.

ChangeWindow_-change window.

                   Is copied

                   descriptor from memory into

                   system table and

                   repaint all windows.

                   HL-window handle.

SafeRepaintWindow_-repaint window

                   taking into account the location of

                   These arrows.

                   HL-window handle.

RepaintWindow_-just repaint

                   window.

                   HL-window handle.

QuickRefresh_-fast redraw

                   of the screen.

                   It is used in

                   moving window.

                   DE (Y, X) - the old coordinates
                            coordinates of the window

                            which should

                            be

                            top of the list

Refresh_-redrawing the screen.

KillWindow_-remove the box from the table

                   descriptors.

                   HL-window handle.

KillWindows_-delete all the windows

                   this application.

                   HL-handle to the application.

BuildWindow_-a conclusion on the shape of objects

                   window.

                   HL-window handle.

TestObjects_-verification of the window.

                   HL <- window handle;

                   DE <- coordinates of the arrow

                        in pixels.

                   HL-> address of the facility

                        which indicates

                        arrow;

                   DE-> coordinates of the arrow

                   A-> object number;

                   C-> type of object.

ProcessObjects_-standard process

                   response object.

                   It is used in a pair

                   with TestObjects_

                   HL <- address of the facility

                        which indicates

                        arrow;

                   DE <- coordinates of the arrow

                   A <- object number;

                   C <- object type;

                   DE '<- window handle.

FindFirstWindow_-find the first window

                   application.

                   HL <- the handle of the application.

                   A-> window number (junior

                       part of the handle).

GetFocus_-move the window on the

                   top of the list boxes.

                   HL-window handle.

WinOnTop_-move the window on the

                   top of the list of windows and

                   redraw the screen.

                   HL-window handle.

WinMinimize_-clean window screen.

                   HL-window handle.

WinRestore_-restore window on

                   screen.

                   HL-window handle.

MoveWindow_-move the window.

                   HL-window handle.

GetWindowStatus_-update window handle

                   from the descriptor table

                   HL-window handle.

GetIX_-take the address of the descriptor

                   window table

                   descriptors.

                   HL <- window handle;

                   IX-> address descriptor

                        (16 bytes).

GetIXA_-take the address of the descriptor

                   window table

                   descriptors.

                   A <- number of windows;

                   IX-> address descriptor

                        (16 bytes).

IfOnTop_-check box.

                   HL <- window handle;

                   A-> result:

                   0 - box at the top of the list

                   -1 - Not the top.

GetAdr_-taking the address in the sprite

                   window coordinates.

                   HL (X, Y) <- coordinates;

                   IX <- window handle.

                   HL-> address in the sprite.

                   DE, BC-preserved.

Working with memory.
+++++++++++++++++
For memory use system
functions, since they are designed to interrupt their work and 
recovery in the sequel. If the result of query functions memory 
returns -1, it means that the backup memory proizoshlo.V this 
case, you can use the repeated requests of the photon, so as 
not to slow down the system, or output from the application.


Page_-switching pages.

                  Is the current

                  driver memory. When

                  access to the forbidden

                  memory area

                  an error occurs.

                  A-sequence number

                     page.

SetDriver_-driver installation

                  memory.

                  A-mPent128 | mScorpion

                   | MPent512 | mProfi.

GetSysPage_-Reservation

                  system page.

                  HL-> handle created

                       application.

GetPage_-page book

                  data.

                  HL <- the handle of the application;

                  A-> page number.

FreePage_-free stranitsu.Esli

                  application attempts to

                  free foreign

                  page, there is a

                  error.

                  HL <- the handle of the application;

                  A <- page number.

FreePages_-release of all pages

                  this application.

                  HL <- the handle of the application.

GetBlocks_-Reservation lower

                  memory.

                  HL <- the handle of the application;

                  B <- number of blocks;

                  HL-> memory address.

FreeBlock_-free blocks

                  lower memory. If

                  application attempts to

                  free alien memory

                  an error occurs.

                  A <- number of the beginning of the block;

                  HL <- the handle of the application;

                  B <- the number of

                      vacated units

FreeBlocks_-release the entire lower

                  memory applications.

                  HL <- the handle of the application.

GetByte_-take a byte from the top

                  memory.

                  A <- page number;

                  HL <- Address;

                  A-> data.

GetFreeBlocks_-free number to learn

                  blocks at the bottom of memory.

                  A-> number of blocks.

GetFreePages_-free number to learn

                  page top of memory.

                  A-> number of pages.


Working with processes and threads.
+++++++++++++++++++++++++++++
KillTask_
ExitProcess_
RunApplication_
CreateProcess_
KillProcess_
SkipQuant_
CreateThread_
KillThread_
KillThreads_
GetAppStatus_
SetAppStatus_
SuspendThread_
ReleaseThread_

Working with files.
+++++++++++++++++
FindFile_
ChangeSector_
Flush_
ReadFile_
DeleteFile_
ReadCat_
DosFunc_
GetFileData_
SaveFile_
SaveCat_

Working with an arrow.
+++++++++++++++++++
GetFireStatus_
Wait_On_
Wait_Off_
Arr_Yes_
Arr_No_
PRINTS_
RESTS_
KEYS_

System functions.
++++++++++++++++++
SendMessage_
GetMessage_
DispatchMessage_
TranslateMessage_
Exit_
IncludeLibrary_
ReleaseLibraries_

Working with external devices.
+++++++++++++++++++++++++++++++
ShutAy_
KeyOn_
KeyOff_
GetKey_
PutKey_
SetIm2Mode_
SetIm1Mode_


System installation.

Driver memory;
-List of the available control devices
 (Mouse, joystick, ...);
-Installation of external devices;
-A list of disk drivers;
List-resident programs;
Systemic-schedule;
-Color;


Setup explorer:

Startup programs (*);
-Desktop (icons, wallpaper, ...);

(*) May have to hang a autoloading
into the system.


Possible resident programs:

-Crack (*);
The driver wheel mouse:


Types of programs:

. Run a standard application
. Dll library. Loaded into the main

     memory and initialized.

     Is registered in the system.
. Thr thread. As a parent acts

     process that started it.

     Recorded by herself.
. Drv Device Driver. Actually

     could be anything. The main

     memory space allocated for a file and

     control is transferred to the top of the code.

     All further operations produces

     himself. As the handle to indicate

    system.

Ed.


  Well, now bring to your attention the front part of the body 
chaos because than screenshots we offer you more

neither of which can not.






Other articles:

Events - On completion of the first part of a virtual musical party The Compo.

Softinka - On operating systems for Spectrum ChAOS and ZXVGS.

Inferno - The authors of the magazine.

Pentagon - Instructions on how to activate unused (zero), the banks ROM in your computer Pentagon.

Pentagon - Instructions for remaking the Pentagon-128 to exit at Reset'u in the 0-th bank ROM 27512.

Gameland - Black Raven Passage of game: Unknown shipment. Disk 1.

Gameland - Black Raven Passage of game: Unknown shipment. Disk 2.

Softinka - Description of the GUI for disk-TR-DOS - ChAOS.

Inferno - On the shell.

Softinka - Editor of two screen graphics DouBleScreen Editor v0.4.

Softinka - Operating system ZXVGS. Composition versions software.

Inferno - Introduction by the editors.

Iron - The results of the development of coders RGB - PAL / NTSC, at the end of 2002.

Gameland - On the game King's Bounty 3, Black Raven: Unknown shipment.

Others - On the survey.

For Coderz - Macros for assembler Alasm v4.4x.

Mathematics - Mandelbrot fractal.

Softinka - Music Editor Pro Tracker v3.71. Features of the program.

Softinka - Format RAR 2.x. Technical information.

Others - Registered users ZXVGS and CPM22QED.

Softinka - File Types defined in the OS ZXVGS.

Softinka - The functions of the operating system ZXVGS.

Softinka - The appearance of the operating system ZXVGS.

Softinka - IDEDOS - access to hard disks in OS ZXVGS.

Softinka - The description of the operating system ZXVGS.

Softinka - MEMDISK - file system for storing files in memory.

Softinka - OS Releases ZXVGS and their differences.

Softinka - Resident System Extensions (RSX) in ZXVGS.

Softinka - Version of the new operating system for Spectrum ZXVGS.

Iron - Advanced Keyboard sinclair-compatible personal computers.

For Coderz - An algorithm for finding the integer part of square root.

Events - Nominees virtual musical party The Compo.


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

Similar articles:
Assembler - Procedures: Stretch texture engine, Texture mapping engine, Texture mapping + gourauds hading engine, Gouraudmapping engine for Z80.
Our news - Friday 13 February ...

В этот день...   26 April