Doors AQUA OS



ATM Turbo
Spectrum 128
Scenergy







8BIT OPERATING SYSTEM FOR ZX-SPECTRUM

\history \doors2000

DOORS 2000 (appendix)
(Basically, the same as earlier, only in more brief form)
A part 1, 2, 3, 4, 5, 6

In the appendix I have decided to place that information which was not included into the book completely for whatever reasons. As here I have born those of a note and descriptions which are convenient for having near at hand always, instead of to rummage the book in searches of the necessary information.

 
ADDRESSES OF COMPONENTS D2K
(Doors 2000 build 2 Last Edition: 10.05.2000 23:32)

IS INCLUDED
;---------------------------------------------------
FONTP EQU *F700 ;
FONT5 EQU *F100 ;
rPAGE EQU *B53E ;
;---------------------------------------------------
mINIT EQU *9800 ; INIT DOORS SYSTEM
mCHECKON EQU *9803 ; CHECK AREA
mCHECKONITEM EQU *9806 ; CHECK ITEM
mREDRAW EQU *9809 ; REDRAW
mREDRAWITEM EQU *980C ; REDRWA ITEM
mPRMENU EQU *980F ; PRINT MENU
mPRITEM EQU *9812 ; PRINT ITEM
mSYNC EQU *9815 ; SYNCRO - (HALT)
mWAIT EQU *9818 ; RUN APPLICATION
mSTY EQU *981B ; STRELON
mSTN EQU *981E ; STRELOFF
mPRFIZ EQU *9821 ; PHYSICAL PRINT PROPORCIONAL
mPRFIZ5 EQU *9824 ; PHYSICAL PRINT 5X5
mIFITEMOFF EQU *9827 ; ON OFF ITEM (HL=PROC)
mCURSOR EQU *982A ; SET CURSOR
mCURITEM EQU *982D ; CHG CURS ON ITEM
mRUNOFFITEM EQU *9830 ; EXECUTE OFF ITEM
mPROCSTRON EQU *9833 ; STR PROC = HL
mPROCSTROFF EQU *9836 ; STR PROC = DELETE HL
mPROCINTERON EQU *9839 ; pOBR = HL
mPROCINTEROFF EQU *983C ; pOBR = DELETE HL
mSETFNTP EQU *983F ; HL - FONT PROPORCIONAL L=0!!!
mSETFNTPS EQU *9842 ; STANDART FONT (OUT HL - FNT)
mSETFNT5X5 EQU *9845 ; HL - FONT ADDR
mSETFNT5X5S EQU *9848 ; STANDART FONT (OUT HL - FNT)
mEXITW EQU *984B ; EXIT FROM WINDOW
mITEMFUNCTION EQU *984E ; EXECUTE ITEM FUNCTION
mSETTIMECUR EQU *9851 ; SET CURSOR ON "ON" ITEM TIME
mMAKEFNTPS EQU *9854 ; MAKE STANDART FONT PROPORCIONAL
mMAKEFNT5X5S EQU *9857 ; MAKE STANDART FONT 5X5
mIFITEMOFFDEL EQU *985A ; DISABLE IF ITEM OFF (HL = PROC)
mWINMEMCR EQU *985D ; WIN in mem - CREATE
mWINMEMDEL EQU *9860 ; WIN in mem - DELETE
mWINMEMEX EQU *9863 ; WIN in mem - EXCHANGE
mWINMOVE EQU *9866 ; MOVE WINDOW
mCOPYTOEXT EQU *9869 ; COPY SCR FROM MAIN TO EXT
mCOPYTOMAI EQU *986C ; COPY SCR FROM EXT TO MAIN
mGETFNTADRP EQU *986F ; GET ADR OF FONT PROP
mGETFNTADR5X5 EQU *9872 ; GET ADR OF FONT 5X5
mKEY EQU *9875 ; GET KEYS A, E-FAKE, D-REAL
mWINMOVEH EQU *9878 ; A = * FF - STAND, A=0 CAN HIDE
mKEYCLR EQU *987B ; CLEAR KEYS
-------Vectors-devices-----------
mFIRE EQU *987E ; the Button fire ON MUOE = A
mVECTOR EQU *9881 ; the Vector of MOVING = DE
mPAGE EQU *9884 ; LOGIC PAGE
mMAISCR EQU *9887 ; MAIN SCREEN
mEXTSCR EQU *988A ; EXTENDED SCREEN
mKEYBOARD EQU *988D ; KEYBOARD READ
mCNC EQU *9890 ; VIRTUAL KEY-> REAL KEY
DOWN_HL EQU *9893 ; DOWN_HL
UP_HL EQU *9896 ; UP_HL
DOWN_DE EQU *9899 ; DOWN_DE
UP_DE EQU *989C ; UP_DE
mSCREEN EQU *989F ; HL (XA, YP)-> DE (ADDR IN SCREEN)
-------Functions-works-with-memories - ---
mINITMEMDRV EQU *98A2 ; HL-ADR OF DRV
mINITMEM EQU *98A5 ; INIT STANDART 128KB Driver
mALLOC EQU *98A8 ; Alloc mem HL-ADR E-SIZ D-PRG
mALLOCH EQU *98AB ; Alloc hard A-PAGE (IF HIGH)
mFINDL EQU *98AE ; Find free mem low E-SIZE
mFINDH EQU *98B1 ; Find free mem high E-SIZE
mFINDALLOCL EQU *98B4 ; Find and allocate mem low
mFINDALLOCH EQU *98B7 ; Find and allocate mem high
mFINDHP EQU *98BA ; Find mem high in A-PAGE E-SIZE
mDEALLOC EQU *98BD ; Deallocate memory
-------eaaiaaoua-functions-----------
mFUN00 EQU *98C0 ; LEN OF STRING PROPORCIONAL
mFUN01 EQU *98C3 ; GET FROM IX HL, DE (X, Y, SX, SY)
mFUN02 EQU *98C6 ; GET AND XA-> XP SXA-> SXP
mFUN03 EQU *98C9 ; GET AND YA-> YP SYA-> SYP
mFUN04 EQU *98CC ; GET AND XA-> XP YA-> YP SXA-> SXP SYA-> SYP
mFUN05 EQU *98CF ; COMPARE COORDS (BC) HL-X, Y DE-SX, SY
mFUN06 EQU *98D2 ; PRT LINE *0 PHYSICAL PROPORCIONAL
mFUN07 EQU *98D5 ; PRT LINE *0 PHYSICAL 5X5
mFUN08 EQU *98D8 ; INIT ZADERZHKA
mFUN09 EQU *98DB ; ZADERZHKA (Z - DO IT, NZ - WAIT)
mFUN10 EQU *98DE ; GET XPwin YPwin (BEGIN)
mFUN11 EQU *98E1 ; GET XAwin YAwin (BEGIN)
mFUN12 EQU *98E4 ; COORD ADD BEGwin STYLE XP YP
mFUN13 EQU *98E7 ; COORD ADD BEGwin STYLE XA YP
mFUN14 EQU *98EA ; STANDAR ADDR OF RUN ELEMENT
mFUN15 EQU *98ED ; ADDITIONAL ELEMENTS CHECKING
mFUN16 EQU *98F0 ; ADDITIONAL ELEMENTS PRINT
mFUN17 EQU *98F3 ; PRINT 8X8 SP PHYS DE - XA, YP, HL - ADR
mFUN18 EQU *98F6 ; GET AND ADD K COORD XA YP
mFUN19 EQU *98F9 ; PHISICAL COORD CLR (A - ATTR C - FLAG)
mFUN20 EQU *98FC ; GET ADDR OF SYS 8X8 SPRITE (A - NUMBER)
mFUN21 EQU *98FF ; STANDART ROLIK EXECUTION
mFUN22 EQU *9902 ; GET ST WIN COORD
mFUN23 EQU *9905 ; GET BUF LINE ADDR
mFUN24 EQU *9908 ; A * BC = A, HL
mFUN25 EQU *990B ; PRINT 5X5 LINE *00 WITH SPACE
mFUN26 EQU *990E ; HL scr-> HL attr
-------Variables------------------
pFLAG EQU *9911 ; NOT ZERO-?OI-OI LIKE REPRINT IEIA NOW
gSTRFL EQU *9912 ; WHETHER THE ARROW
pTEKID EQU *9913 ; THE CURRENT APPENDIX
pTEKSD EQU *9914 ; THE BEGINNING FLEW. WINDOWS
gKLFL EQU *9916 ; 0 - LAT/RUS, 1-NONE/CAPS, 2-ON/OFF
gDOBCLK EQU *9917 ; PRESENCE DOUBLE CLICK
gCO_NEW EQU *9918 ; COORDINATES OF THE ARROW
pLASTC EQU *991A ; LAST PRESSED KEY
pMEMDRV EQU *991C ; THE ADDRESS OF THE DRIVER OF MEMORY
rPAG EQU *991E ; CURRENT PAGE OF MEMORY
rPAGES EQU *991F ; QUANTITY OF PAGES
-------Additional-function------
mFCALL EQU *9920 ;
mFCALLB EQU *9923 ;
-------Disk-function------------
mzINIT EQU *9926 ;
mzADDDR EQU *9929 ;
mzADDDRF EQU *992C ;
mzDELDR EQU *992F ;
mzCURDR EQU *9932 ;
mzDRACT EQU *9935 ;
mzDRACT1 EQU *9938 ;
mzADRV EQU *993B ;
mzBANV EQU *993D ;
mzPARAM EQU *993E ;

KEYBOARD
(Keyboard)

Here you will find codes which are returned with procedure mKEY. If you do not accept this procedure, for any reasons, you can use the, about it read above. I shall remind that mKEY returns in A - a code of a virtual key, and in D - a code in format ASCII, depending on the chosen installations.

Real Virtual Code
Key Fr Cs Ss E
Tr. Vid 3C
Inv. Vid 34
1 24 4C 74 9C
2 1C 44 6C 94
3 14 3C 64 8C
4 0C 34 5C 84
5 04 2C 54 7C
6 03 2B 53 7B
7 0B 33 5B 83
8 13 3B 63 8B
9 1B 43 6B 93
0 23 4B 73 9B
Break 20
Delete 4B
Graph 43
Q 25 4D 75 9D
W 1D 45 6D 95
E 15 3D 65 8D
R 0D 35 5D 85
T 05 2D 55 7D
Y 02 2A 52 7A
U 0A 32 5A 82
I 12 3A 62 8A
o 1A 42 6A 92
p 22 4A 72 9A
ExtM FE
Edit 4C
a 26 4E 76 9E
s 1E 46 6E 96
d 16 3E 66 8E
f 0E 36 5E 86
g 06 2E 56 7E
h 01 29 51 79
j 09 31 59 81
k 11 39 61 89
l 19 41 69 91
Enter 21 49 71 99
CShift
CLock 44
z 1F 47 6F **
x 17 3F 67 8F
c 0F 37 5F 87
v 07 2F 57 7F
b 00 28 50 78
n 08 30 58 80
m 10 38 60 88
" 72 9A
SShift
: 6F 97
Left 2C 7C
Right 3B 8B
Space 20
Down 2B 7B
Up 33 83
, 58
 
CURSOR TABLE
(Codes of standard cursors d2k)


0

1

2

3

4





 
Komentarii:
The cursor are a little bit increased, concerning the real size, therefore has some sense to comment on the given figures ?
  1. The Arrow - a standard kind of the cursor, they can press anything you like.

  2.  

  3. CHasiki - the system is borrowed, please wait. This cursor is convenient for using at any long calculations and to show that system does not hang, it is possible to include this cursor.

  4.  

  5. The Hand or a finger - though is considered that a finger to show not cultural:) all of us would advise, to use the given cursor for illumination of any keywords in the text or items of the menu. As it is possible to use this of rates in top kontitulah (menu) of a window.

  6.  

  7. The Arrow with a question - the given cursor was developed for the instruction on objects on which it was necessary to receive the information but as the given system has not received development it is possible that in the following version kenalja it will be replaced with a dagger or any other cursor.

  8.  

  9. This cursor is convenient for using on a place where input of the text is necessary.

home site news history screens software develop download feedback

| 1995-2000 © Ascendancy Creative Labs, 2000-2004 © FishBone Crew | webdesign by breeze\fishbone crew |