From fb15f1aa9b00a6d8587ae47ac651a2259c940cc7 Mon Sep 17 00:00:00 2001 From: Fredrik Rambris Date: Thu, 15 Feb 2024 10:08:35 +0100 Subject: [PATCH] Style fixes. Should work better on mobile --- .gitignore | 1 + 05-01-the-bare-bones.html | 20 ++--- 05-02-string-functions.html | 34 +++---- 05-03-maths.html | 58 ++++++------ 05-04-control-structures.html | 32 +++---- 05-05-procedures.html | 18 ++-- 05-06-text.html | 66 +++++++------- 05-07-windows.html | 30 +++---- 05-08-the-joystick-and-mouse.html | 30 +++---- 05-09-memory-banks.html | 46 +++++----- 06-01-setting-up-screens.html | 56 ++++++------ 06-02-using-screens.html | 26 +++--- 06-03-screen-effects.html | 20 ++--- 06-04-graphics.html | 42 ++++----- 06-05-menus.html | 88 +++++++++---------- 07-01-hardware-sprites.html | 30 +++---- 07-02-blitter-objects.html | 40 ++++----- 07-03-updating-objects.html | 10 +-- 07-04-detecting-collisions.html | 28 +++--- 07-05-iff-animation.html | 20 ++--- 07-06-amal.html | 42 ++++----- 07-07-icons-and-blocks.html | 30 +++---- 08-01-music.html | 22 ++--- 08-02-samples.html | 14 +-- 08-03-playing-music-modules.html | 24 ++--- 09-01-amos-interface.html | 4 +- 09-02-interface-language.html | 4 +- 09-03-advanced-control-panels.html | 20 ++--- 09-04-interface-resources.html | 8 +- 10-01-using-the-keyboard.html | 26 +++--- 10-02-disc-access.html | 56 ++++++------ 10-03-accessing-a-printer.html | 22 ++--- 10-04-accessing-a-serial-port.html | 34 +++---- 10-05-the-parallel-port.html | 20 ++--- 10-06-arexx.html | 12 +-- 11-01-fonts.html | 14 +-- 11-02-speech.html | 12 +-- 11-04-multi-tasking.html | 18 ++-- 11-05-libraries-and-devices.html | 48 +++++----- 12-01-monitor.html | 2 +- 12-02-error-handling.html | 18 ++-- 13-01-configuration.html | 8 +- 14-appendix-b-amos-professional-run-time.html | 2 +- 14-appendix-c-pal-and-ntsc.html | 6 +- 14-appendix-f-copper-lists.html | 2 +- contents.html | 4 +- index.html | 6 +- styles.css | 36 +++++++- 48 files changed, 621 insertions(+), 588 deletions(-) diff --git a/.gitignore b/.gitignore index 485dee6..29b636a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ .idea +*.iml \ No newline at end of file diff --git a/05-01-the-bare-bones.html b/05-01-the-bare-bones.html index 29a4fd9..4507637 100644 --- a/05-01-the-bare-bones.html +++ b/05-01-the-bare-bones.html @@ -231,7 +231,7 @@

Storing variables

-

SET BUFFER

+

SET BUFFER

instruction: set the size of the variable area
Set Buffer number of kilobytes

@@ -255,7 +255,7 @@

Arrays

Professional the size of the table of variables needed for your array. There is a special command for setting up this dimension.

-

DIM

+

DIM

instruction: dimension an array
Dim variable name(number,number,number...)

@@ -335,7 +335,7 @@

Functions

"functions". These are command words that have one thing in common: they all work with numbers in order to give a result.

-

FREE

+

FREE

function: give the amount of free memory in the variable buffer area
memory=Free

@@ -360,7 +360,7 @@

FREE

programs, and they can be used to compute commonly used values very quickly and very simply.

-

DEF FN

+

DEF FN

structure: create a user-defined function
Def Fn name (list of variables)=expression

@@ -378,7 +378,7 @@

DEF FN

When a user-defined function is called up my variables that are entered with it will be substituted in the appropriate positions, as demonstrated below.

-

FN

+

FN

structure: call a user-defined function
Fn name(list of variables)

@@ -467,7 +467,7 @@

Controlling a program skeleton

Print "I am the next instruction." -

END

+

END

instruction: end the current program
End

@@ -483,7 +483,7 @@

END

Print "This instruction will never be executed!" -

STOP

+

STOP

instruction: interrupt the current program
Stop

@@ -496,7 +496,7 @@

STOP

Print "I have been abandoned" -

EDIT

+

EDIT

instruction: leave current program and return to Edit Screen
Edit

@@ -510,7 +510,7 @@

EDIT

Print "I have been ignored!" -

DIRECT

+

DIRECT

instruction: leave current program and return to Direct Mode
Direct

@@ -605,7 +605,7 @@

Marking the bones of a program

typed messages to remind yourself exactly what this section of program is for. These little comments or messages are known as "Rem statements".

-

REM

+

REM

structure: insert a reminder message into a program
Rem Typed in statement
' Typed in statement

diff --git a/05-02-string-functions.html b/05-02-string-functions.html index d849f1d..e38dbbc 100644 --- a/05-02-string-functions.html +++ b/05-02-string-functions.html @@ -36,7 +36,7 @@

String Functions

Reading characters in a string

-

LEFT$

+

LEFT$

function: return the leftmost characters of a string
destination$=Left$(source$,number)
Left$(destination$,number)=source$

@@ -67,7 +67,7 @@

LEFT$

Exactly the same processes can be performed with characters from the right-hand side of a string, by using the equivalent RIGHT$ function.

-

RIGHT$

+

RIGHT$

function: return the rightmost characters of a string
destination$=Right$(source$,number)
Right$(destination$,number)=source$

@@ -87,7 +87,7 @@

RIGHT$

-

MID$

+

MID$

function: return a number of characters from the middle of a string
destination$=Mid$(source$,offset,number)
Mid$(destination$,offset,number)=source$

@@ -117,7 +117,7 @@

Finding characters in a string

other words, to search through strings for individual characters or sub-strings. Similarly, you may wish to write an adventure game where lines of text must be broken down into individual commands.

-

INSTR

+

INSTR

function: search for occurrences of one string within another string
x=Instr(host$,guest$)
x=Instr(host$,guest$,start of search position)

@@ -163,7 +163,7 @@

INSTR

Converting strings

-

UPPER$

+

UPPER$

function: convert a string of text to upper case
new$=Upper$(old$)

@@ -174,7 +174,7 @@

UPPER$

D> Print Upper$("aMoS pRoFeSsIoNaL") -

LOWER$

+

LOWER$

function: convert a string of text to lower case
new$=Lower$(old$)

@@ -190,7 +190,7 @@

LOWER$

Print "OK. Continuing with your program" -

STR$

+

STR$

function: convert a number into a string
s$=Str$(number)

@@ -203,7 +203,7 @@

STR$

E> Centre "Remaining memory is"+Str$(Chip Free)+" Bytes" -

VAL

+

VAL

function: convert a string of digits into a number
v=Val(x$)
v#=Val(x$)

@@ -217,7 +217,7 @@

VAL

D> X=Val("1234") : Print X -

STRING$

+

STRING$

function: create a new string from an existing string
new$=String$(existing$, number)

@@ -240,7 +240,7 @@

Manipulating strings

wish to pad out a piece of text before it gets printed onto the screen, you will need an accurate method of creating spaces in the string.

-

SPACE$

+

SPACE$

function: space out a string
s$=Space$(number of spaces)

@@ -250,7 +250,7 @@

SPACE$

E> Print "Ten";Space$(10);"spaces" -

FLIP$

+

FLIP$

function: invert a string
inverted$=Flip$(original$)

@@ -261,7 +261,7 @@

FLIP$

D> Print Flip$("SOMA gnippilf") -

REPEAT$

+

REPEAT$

function: repeat a string
r$=Repeat$(text$,number)

@@ -280,7 +280,7 @@

REPEAT$

Getting information about strings

The next three functions are provided to discover particular properties of strings.

-

CHR$

+

CHR$

function: return the character with a given ASCII code
s$=Chr$(code number)

@@ -294,7 +294,7 @@

CHR$

E> For S=32 To 255: Print Chr$(S); : Next S -

ASC

+

ASC

function: Give the ASCII code of a character
code=Asc(a$)

@@ -306,7 +306,7 @@

ASC

Print Asc("AMOS Professional") -

LEN

+

LEN

function: give the length of a string
length=Len(a$)

@@ -323,7 +323,7 @@

Array operations

To end this Chapter, here are a pair of useful instructions for manipulating arrays.

-

SORT

+

SORT

instruction: sort all elements in an array
Sort a(0)
Sort a#(0)
@@ -356,7 +356,7 @@

SORT

Next X -

MATCH

+

MATCH

function: search an array for a value
x=Match(array(0),value)
x=Match(array#(0),value#)
diff --git a/05-03-maths.html b/05-03-maths.html index a92fbe5..461b341 100644 --- a/05-03-maths.html +++ b/05-03-maths.html @@ -133,7 +133,7 @@

Fast calculations

There are three instructions that can be used to speedflip the process of simple calculations.

-

INC

+

INC

instruction: increment an integer variable by 1
Inc variable

@@ -144,7 +144,7 @@

INC

D> V=10 : Inc V : Print V -

DEC

+

DEC

instruction: decrement an integer variable by 1
Dec variable

@@ -155,7 +155,7 @@

DEC

D> V=10 : Dec V : Print V -

ADD

+

ADD

instruction: perform fast integer addition
Add variable,expression
Add variable,expression,base To top

@@ -197,7 +197,7 @@

Relative values

or strings of characters. If you need to compare two expressions, the following functions are provided to examine them and establish their relative values.

-

MAX

+

MAX

function: return the maximum of two values
value=Max(a,b)
value#=Max(a#,b#)
@@ -215,7 +215,7 @@

MAX

-

MIN

+

MIN

function: return the minimum of two values
value=Min(a,b)
value#=Min(a#,b#)
@@ -237,7 +237,7 @@

Values and signs

Any number can have one of three values: negative, positive or zero, and these are represented by the "sign" of a number.

-

SGN

+

SGN

function: return the sign of a number
sign=Sgn(value)
sign=Sgn(value#)

@@ -252,7 +252,7 @@

SGN

0 if the value is zero -

ABS

+

ABS

function: return an absolute value
a=Abs(value)
a=Abs(value#)

@@ -276,7 +276,7 @@

Floating point numbers

messy results in Basic programming. The movement of the decimal point slows down the processing, and levels of accuracy may be too great for your needs.

-

INT

+

INT

function: convert floating point number into an integer
integer=Int(number#)

@@ -289,7 +289,7 @@

INT

Print Int(-1.1) -

FIX

+

FIX

instruction: fix precision of floating point
Fix(number)

@@ -346,7 +346,7 @@

Single and double precision

it will also cause a great slowing down of calculations. It should only be used when extra accuracy is absolutely vital.

-

SET DOUBLE PRECISION

+

SET DOUBLE PRECISION

instruction: engage double precision accuracy
Set Double Precision

@@ -360,7 +360,7 @@

SET DOUBLE PRECISION

Standard mathematical functions

-

SQR

+

SQR

function: calculate square root
square=Sqr(number)
square#=Sqr(number#)

@@ -374,7 +374,7 @@

SQR

Print Sqr(11.1111) -

EXP

+

EXP

function: calculate exponential
exponential#=Exp(value#)

@@ -384,7 +384,7 @@

EXP

D> Print Exp(1) -

LOG

+

LOG

function: return logarithm
a=Log(value)
a#=Log(value#)

@@ -396,7 +396,7 @@

LOG

A#=Log(100) -

LN

+

LN

function: return natural logarithm
a#=Ln(value#)

@@ -417,7 +417,7 @@

Trigonometry

creating graphic design effects, calculating trajectories in gameplay, as well as making intricate musical wave forms.

-

PI#

+

PI#

function: return a constant &pi
p#=Pi#

@@ -441,7 +441,7 @@

PI#

point b. However, your Amiga uses a default by which it expects all angles to be given in "radians" and not degrees. -

DEGREE

+

DEGREE

instruction: use degrees
Degree

@@ -456,14 +456,14 @@

DEGREE

Print Sin(45) -

RADIAN

+

RADIAN

instruction: use radians
Radian

If DEGREE has already been called, the RADIAN function returns to the default status, where all future angles are expected to be entered in radians.

-

SIN

+

SIN

function: calculate sine of an angle
s#=Sin(angle)
s#=Sin(angle#)

@@ -480,7 +480,7 @@

SIN

Next X -

COS

+

COS

function: calculate cosine of an angle
c#=Cos(angle)
c#=Cos(angle#)

@@ -497,7 +497,7 @@

COS

Plot X,Y#*50+100 -

TAN

+

TAN

function: calculate tangent of an angle
t#=Tan(angle)
t#=Tan(angle#)

@@ -510,7 +510,7 @@

TAN

Radian : Print Tan(Pi#/8) -

ACOS

+

ACOS

function: calculate arc cosine
a#=Acos(number#)

@@ -522,14 +522,14 @@

ACOS

Print Acos(A#) -

ASIN

+

ASIN

function: calculate arc sine
a#=Asin(number#)

Similarly to ACOS, the ASIN function calculates the angle needed to generate a value with SIN. -

ATAN

+

ATAN

function: calculate arc tangent
a#=Atan(number#)

@@ -547,7 +547,7 @@

ATAN

express the relationship between various distances of a point on the hyperbolic curve and the coordinate axes.

-

HSIN

+

HSIN

function: calculate hyperbolic sine
h#=Hsin(angle)
h#=Hsin(angle#)

@@ -555,14 +555,14 @@

HSIN

The HSIN function calculates the hyperbolic sine of a given angle.

-

HCOS

+

HCOS

function: calculate hyperbolic cosine
h#=Hcos(angle)
h#=Hcos(angle#)

Use this function to find the hyperbolic cosine of an angle.

-

HTAN

+

HTAN

function: calculate hyperbolic tangent
h#=Htan(angle)
h#=Htan(angle#)

@@ -579,7 +579,7 @@

Random numbers

again. It then has the same chance as any other number offered for selection, when the next random choice is made.

-

RND

+

RND

function: generate a random number
value=Rnd(number)

@@ -596,7 +596,7 @@

RND

Loop -

RANDOMIZE

+

RANDOMIZE

instruction: set the seed for a random number
Randomize seed

@@ -620,7 +620,7 @@

RANDOMIZE

numbers. RANDOMIZE can also be used in conjunction with the TIMER variable, to generate genuine random numbers.

-

TIMER

+

TIMER

reserved variable: count in 50ths of a second
v=Timer
Timer=v

diff --git a/05-04-control-structures.html b/05-04-control-structures.html index fab6dc1..29bef68 100644 --- a/05-04-control-structures.html +++ b/05-04-control-structures.html @@ -31,7 +31,7 @@

Control Structures

decisions. They are usually known as control structures. This Chapter explains how AMOS Professional takes (lie best of these traditions and uses them to give your Amiga a logical brain.

-

GOTO

+

GOTO

structure: jump to a specified place in the program
Goto label
Goto line number
@@ -88,7 +88,7 @@

GOTO

Goto BEGIN -

GOSUB

+

GOSUB

structure: jump to a sub-routine
Gosub label
Gosub number
@@ -110,7 +110,7 @@

GOSUB

the main program, which prevents AMOS Professional from executing any GOSUBs after the main program has finished.

-

RETURN

+

RETURN

instruction: return from a sub-routine called by GOSUB
Return

@@ -133,7 +133,7 @@

RETURN

Return -

POP

+

POP

instruction: remove RETURN information
Pop

@@ -206,7 +206,7 @@

Decision making

E> If NIGHT<DAY Or NIGHT=12 Then Edit -

ELSE

+

ELSE

structure: qualify a condition
If condition Then statement1 Else statement2

@@ -238,7 +238,7 @@

ELSE

Structured tests

-

END IF

+

END IF

structure: terminate a structured test
If structured test End If

@@ -275,7 +275,7 @@

END IF

Note how each IF statement must be paired with a single END IF to inform AMOS Professional exactly which group of instructions is to be executed inside the test.

-

ELSE IF

+

ELSE IF

structure: allow multiple structured tests
If condition Else If multiple conditions ... Else statement End If

@@ -330,7 +330,7 @@

ELSE IF

of -1 is used to represent TRUE, and the value of 0 is used to represent FALSE. A value of either -1 (True) or 0 (False) is produced every time a test is made to satisfy a condition.

-

NOT

+

NOT

structure: toggle binary digits
value=Not digits

@@ -344,7 +344,7 @@

NOT

Since -1 (True) can be expressed in binary as %1111111111111111, then NOT TRUE must be equal to FALSE, and a logical NOT operation is achieved.

-

SWAP

+

SWAP

structure: swap the contents of two variables
Swap a,b
Swap a#,b#
@@ -416,7 +416,7 @@

Using loops

Print "And I am outside both loops!" -

EXIT IF

+

EXIT IF

structure: exit from a loop depending on a test
Exit If expression
Exit If expression,number

@@ -533,7 +533,7 @@

Controlled loops

Next X -

STEP

+

STEP

structure: control increment of index in a loop
For index=first number To last number Step size

@@ -565,7 +565,7 @@

Forced jumps

particular variable is recognised, in other words, regardless of any other conditions. GOTO and GOSUB are examples of a "forced" jump.

-

ON

+

ON

structure: jump on recognising a variable
On variable Proc list of procedures
On variable Goto list of numbered lines or labels
@@ -640,7 +640,7 @@

ON

explained in the relevant sections of the Procedures and Error Handling Chapters of this User Guide.

-

EVERY

+

EVERY

instruction: call subroutine or procedure at regular intervals
Every time Gosub label
Every time Proc name

@@ -686,7 +686,7 @@

EVERY

Handling data

-

DATA

+

DATA

structure: place a list of data items in a program
Data list

@@ -741,7 +741,7 @@

DATA

End Proc -

READ

+

READ

structure: read data into a variable
Read list

@@ -763,7 +763,7 @@

READ

Data "Text string",100,N,"AMOS"+"Professional" -

RESTORE

+

RESTORE

structure: set the current READ pointer
Restore Label
Restore LABEL$
diff --git a/05-05-procedures.html b/05-05-procedures.html index e18233e..0c646c2 100644 --- a/05-05-procedures.html +++ b/05-05-procedures.html @@ -38,11 +38,11 @@

Procedures

Creating a procedure

-

PROCEDURE

+

PROCEDURE

structure: create a procedure
Procedure NAME [list of optional parameters]

-

END PROC

+

END PROC

structure: end a procedure
End Proc

@@ -74,7 +74,7 @@

END PROC

using the SET BUFFER command. Programs can also be held up if there is no more stack space available, and this problem is cured by the following command.

-

SET STACK

+

SET STACK

instruction: set stack space
Set Stack number

@@ -104,7 +104,7 @@

Keeping track of procedures

HEY: HEY: HEY: Rem Define label HEY and perform HEY procedure twice -

PROC

+

PROC

structure: flag a procedure
Proc NAME

@@ -208,7 +208,7 @@

Jumping in and out of a procedure

Normally, procedures will only return to the main program when the END PROC instruction is reached. But supposing you need to jump out of a procedure instantly.

-

POP PROC

+

POP PROC

structure: leave a procedure immediately
Pop Proc

@@ -227,7 +227,7 @@

POP PROC

Print "I'm free!" -

ON BREAK PROC

+

ON BREAK PROC

structure: jump to a procedure when break in program
On Break Proc NAME

@@ -320,7 +320,7 @@

Local and global variables

TRIPLETS["Xenon","Yak","Zygote"] -

SHARED

+

SHARED

structure: define a list of global variables
Shared list of variables

@@ -351,7 +351,7 @@

SHARED

global variables. This offers an easy way of transferring large amounts of information between your procedures.

-

GLOBAL

+

GLOBAL

structure: declare a list of global variables for procedures
Global list of variables

@@ -450,7 +450,7 @@

Returning values from a procedure

find this local variable.

-

PARAM

+

PARAM

function: return a parameter from a procedure
Param
Param#
diff --git a/05-06-text.html b/05-06-text.html index 2b96749..8748e24 100644 --- a/05-06-text.html +++ b/05-06-text.html @@ -41,7 +41,7 @@

Printing on the screen

The PRINT instruction is one of the most familiar command words in most Basic languages.

-

PRINT

+

PRINT

instruction: print items on screen
Print items

@@ -85,7 +85,7 @@

PRINT

Setting text options

-

PEN

+

PEN

instruction: set the colour of text
Pen index number

@@ -101,7 +101,7 @@

PEN

Next INDEX -

PEN$

+

PEN$

function: return a control index number to set the pen colour
p$=Pen$(index number)

@@ -117,7 +117,7 @@

PEN$

Print "In the RED" -

PAPER

+

PAPER

instruction: set colour of text background
Paper index number

@@ -133,7 +133,7 @@

PAPER

Next INDEX -

PAPER$

+

PAPER$

function: return a control index number to set background colour
b$=PAPER$(index number)

@@ -210,7 +210,7 @@

Setting text styles

Text 100,S*20+20,AMOS Professional" : Next S -

SET TEXT

+

SET TEXT

instruction: set the style of a text font
Set Text style number

@@ -226,7 +226,7 @@

SET TEXT

Set the appropriate bits in the form of a style number from 0 to 7, as in the last example.

-

TEXT STYLES

+

TEXT STYLES

function: return current text style
s=Text Styles

@@ -245,7 +245,7 @@

Changing the text mode

For even more flexibility in presenting your text on screen, you can select the way it is combined with other screen data.

-

WRITING

+

WRITING

instruction: select text writing mode of subsequent text
Writing value1
Writing value1,optional value2

@@ -286,7 +286,7 @@

Positioning the text cursor

Professional programmer is offered several methods of controlling the cursor in order to make text look more orderly, attractive or eye-catching.

-

LOCATE

+

LOCATE

instruction: position the text cursor
Locate x,
Locate ,y
@@ -313,7 +313,7 @@

LOCATE

Locate 10,10 : Print "Ten down and ten across" -

HOME

+

HOME

instruction: force text cursor home
Home

@@ -327,7 +327,7 @@

HOME

Wait 100: Home : Print "Home!" -

CMOVE

+

CMOVE

instruction: move text cursor
Cmove width
Cmove height
@@ -348,7 +348,7 @@

CMOVE

Cmove 10,14: Print "France" -

CMOVE$

+

CMOVE$

function: return control string to move text cursor
a$=Cmove$(x,y)

@@ -362,7 +362,7 @@

CMOVE$

Print A$ -

AT

+

AT

function: return a string to position the text cursor
a$=At(x,y)

@@ -399,7 +399,7 @@

AT

Print HI_SCORE$;SCORE -

CENTRE

+

CENTRE

instruction: print text centrally on current line
Centre a$

@@ -415,7 +415,7 @@

CENTRE

Centre "suspicion" -

TAB$

+

TAB$

function: move text cursor to next Tab
t$=Tab$

@@ -425,7 +425,7 @@

TAB$

The default setting for this is four characters, which can be changed as follows:

-

SET TAB

+

SET TAB

instruction: change Tab setting
Set Tab number

@@ -438,7 +438,7 @@

SET TAB

Set Tab 10 : Print Tab$;"Away" -

CDOWN

+

CDOWN

instruction: move text cursor down
Cdown

@@ -448,7 +448,7 @@

CDOWN

E> Cls: Print "Over" : Cdown : Print "the Moon" -

CDOWN$

+

CDOWN$

function: return control character to move text cursor down
c$=Cdown$

@@ -464,34 +464,34 @@

CDOWN$

Next A -

CUP

+

CUP

instruction: move text cursor one line up
Cup

-

CLEFT

+

CLEFT

instruction: move text cursor one character left
Cleft

-

CRIGHT

+

CRIGHT

instruction: move text cursor one character right
Cright


These three commands are self-explanatory, and work in exactly the same way as CDOWN. their equivalent functions are listed below, and work in the same way as CDOWN$:

-

CUP$

+

CUP$

function: return control character (30) to move cursor up one line
x$=Cup$

-

CLEFT$

+

CLEFT$

function: return control character (29) to move cursor left one character
x$=Cleft$

-

CRIGHT$

+

CRIGHT$

function: return control character (28) to move cursor right one character
x$=Cright$

-

CLINE

+

CLINE

instruction: clear some or all text on current cursor line
Cline
Cline number

@@ -556,7 +556,7 @@

Tracking the text cursor

Changing the text cursor

-

CURS PEN

+

CURS PEN

instruction: select colour of text cursor
Curs Pen index number

@@ -578,7 +578,7 @@

CURS PEN

X> Flash 2,"(FFF,15)(000,15)" -

SET CURS

+

SET CURS

instruction: set the shape of the text cursor
Set Curs L1,L2,L3,L4,L5,L6,L7,L8

@@ -617,7 +617,7 @@

SET CURS

Advanced text commands

-

ZONE$

+

ZONE$

function: create a zone around text
z$=ZONE$(text$,zone number)

@@ -636,7 +636,7 @@

ZONE$

Chr$(27)+"ZO"+A$+Chr$(27)+"R"+Chr$(48+n) -

BORDER$

+

BORDER$

function: create a border around text
b$=Border$(text$, border number)

@@ -657,7 +657,7 @@

BORDER$

Chr$(27)+"E0"+A$+Chr$(27)+"R"+Chr$(48+n) -

HSCROLL

+

HSCROLL

instruction: scroll text horizontally
Hscroll number

@@ -672,7 +672,7 @@

HSCROLL

4 Scroll entire screen to the right -

VSCROLL

+

VSCROLL

instruction: scroll text vertical
Vscroll number

@@ -713,7 +713,7 @@

Advanced printing

E> ? "AMOS Professional" -

USING

+

USING

instruction: format printed output
Print Using format$;variable list

@@ -804,7 +804,7 @@

Sending text to a printer

following command offers easy access to a printer from inside an AMOS Professional program or via Direct mode.

-

LPRINT

+

LPRINT

instruction: output a list of variables to a printer
Lprint variable list

diff --git a/05-07-windows.html b/05-07-windows.html index 648bd60..f415c8c 100644 --- a/05-07-windows.html +++ b/05-07-windows.html @@ -40,7 +40,7 @@

Windows

Creating windows

-

WIND OPEN

+

WIND OPEN

instruction: create a window
Wind Open number,x,y,width,height
Wind Open number,x,y,width,height,border

@@ -70,7 +70,7 @@

WIND OPEN

Next W -

WINDOW

+

WINDOW

instruction: change the current window
Window number

@@ -89,7 +89,7 @@

WINDOW

The active window is host to the flashing text cursor, unless it has been made invisible with a CURS OFF command.

-

BORDER

+

BORDER

instruction: change window border
Border number,paper, pen

@@ -104,7 +104,7 @@

BORDER

D> Border 2,, -

TITLE TOP

+

TITLE TOP

instruction: set title at top of current window
Title Top title$

@@ -116,7 +116,7 @@

TITLE TOP

Title Top "Top of the morning" -

TITLE BOTTOM

+

TITLE BOTTOM

instruction: set title at bottom of current window
Title Bottom title$

@@ -132,7 +132,7 @@

TITLE BOTTOM

Manipulating windows

-

WINDON

+

WINDON

function: return the value of the current window
w=Windon

@@ -146,7 +146,7 @@

WINDON

Loop -

WIND SAVE

+

WIND SAVE

instruction: save the contents of the current window
Wind Save

@@ -166,7 +166,7 @@

WIND SAVE

your program. When this dialogue box is called up, the area beneath it will be saved as part of your dummy window, so it will automatically be restored after your box has been removed.

-

WIND CLOSE

+

WIND CLOSE

instruction: close the current window
Wind Close

@@ -181,7 +181,7 @@

WIND CLOSE

Wind Close -

WIND MOVE

+

WIND MOVE

instruction: move the current window
Wind Move x,y

@@ -211,7 +211,7 @@

WIND MOVE

reappear from the top. SCROLL ON starts the scrolling process again, so that a new line is inserted when the cursor tries to pass beyond the bottom of the window.

-

WIND SIZE

+

WIND SIZE

instruction: change the size of the current window
Wind Size width, height

@@ -232,7 +232,7 @@

WIND SIZE

Wind Size 30,10 -

CLW

+

CLW

instruction: clear the current window
Clw

@@ -254,7 +254,7 @@

Creating slider bars

One of the standard uses of windows is to create interactive slider bars, like the one at the right- hand side of your AMOS Professional Edit Screen.

-

HSLIDER

+

HSLIDER

instruction: draw a horizontal slider bar
Hslider x1 ,y1 To x2,y2, units, position, length

@@ -278,7 +278,7 @@

HSLIDER

Hslider 10,50 To 150,100,25,10,10 -

VSLIDER

+

VSLIDER

instruction: draw a vertical slider
Vslider x1 ,y1 To x2,y2,units,position,length

@@ -293,7 +293,7 @@

VSLIDER

Vslider 250,0 To 319,199,10,2,6 -

SET SLIDER

+

SET SLIDER

instruction: set fill pattern for slider bar
Set Slider ink1,paper1,outline1,pattern1,ink2,paper2,outline2,pattern2

@@ -330,7 +330,7 @@

Displaying a text window

may be scrolled through at will, the display window can be dragged around the screen and there is even a facility to include a title line.

-

READ TEXT$

+

READ TEXT$

instruction: display a text window on screen
Read Text$ name$
Read Text$ name$,address, length

diff --git a/05-08-the-joystick-and-mouse.html b/05-08-the-joystick-and-mouse.html index 5fcb006..544dae6 100644 --- a/05-08-the-joystick-and-mouse.html +++ b/05-08-the-joystick-and-mouse.html @@ -39,7 +39,7 @@

Joysticks

!Weds to be able to read its movements and actions. AMOS Professional offers a number of useful functions to do just that.

-

JOY

+

JOY

function: read status of joystick
status=Joy(port number)

@@ -75,7 +75,7 @@

JOY

Each of those aspects of the joystick status can be accessed individually, using the following functions:

-

JLEFT

+

JLEFT

function: test for joystick movement towards the left
x=Jleft(port number)

@@ -84,15 +84,15 @@

JLEFT

The three other function in this family are self-evident, as follows:

-

JRIGHT

+

JRIGHT

function: test for joystick movement towards the right
x=Jright(port number)

-

JUP

+

JUP

function: test for joystick movement upwards
x=Jup(port number)

-

JDOWN

+

JDOWN

function: test for joystick movement downwards
x=Jdown(port number)

@@ -107,7 +107,7 @@

JDOWN

Loop -

FIRE

+

FIRE

function: test status of fire-button
x=Fire(port number)

@@ -143,7 +143,7 @@

The mouse pointer

3 Clock -

CHANGE MOUSE

+

CHANGE MOUSE

instruction: change the shape of the mouse pointer
Change Mouse number

@@ -168,7 +168,7 @@

CHANGE MOUSE

For such oversized sprites, the SET SPRITE BUFFER command should be used, which is explained in Chapter 7.1.

-

HIDE

+

HIDE

instruction: remove the mouse pointer from the screen
Hide
Hide On

@@ -184,7 +184,7 @@

HIDE

X> Hide On -

SHOW

+

SHOW

instruction: reveal the mouse pointer back on screen
Show
Show On

@@ -212,7 +212,7 @@

Reading the status of the mouse

make any use of the mouse. It needs to recognise where the mouse pointer is as well as if any of the mouse buttons have been pressed.

-

X MOUSE

+

X MOUSE

reserved variable: report or set the x-co-ordinate of the mouse pointer
X Mouse
x=X Mouse

@@ -239,7 +239,7 @@

X MOUSE

Next N -

Y MOUSE

+

Y MOUSE

reserved variable: report or set the y-coordinate of the mouse pointer
Y Mouse
y=Y Mouse

@@ -256,7 +256,7 @@

Y MOUSE

Next N -

MOUSE KEY

+

MOUSE KEY

function: read status of mouse buttons
k=Mouse Key

@@ -283,7 +283,7 @@

MOUSE KEY

Loop -

MOUSE CLICK

+

MOUSE CLICK

function: check for click of mouse button
c=Mouse Click

@@ -322,7 +322,7 @@

Limiting the mouse pointer

Supposing you need to set up a control panel on your screen, but you want to prevent the mouse pointer from wandering outside the area of that panel.

-

LIMIT MOUSE

+

LIMIT MOUSE

instruction: limit mouse pointer to part of the screen
Limit Mouse x1 ,y1 To x2,y2
Limit Mouse

@@ -369,7 +369,7 @@

Finding the mouse pointer

X> X=Hzone(X Mouse,Y Mouse) -

MOUSE SCREEN

+

MOUSE SCREEN

function: check which screen the mouse pointer is occupying
screen number=Mouse Screen

diff --git a/05-09-memory-banks.html b/05-09-memory-banks.html index c9d84b9..2cb98ab 100644 --- a/05-09-memory-banks.html +++ b/05-09-memory-banks.html @@ -118,7 +118,7 @@

Reserving a bank

you will have noted the increase in the range of available bank numbers from the original 15. There are four alternative types of bank that can be reserved, and these will now be explained.

-

RESERVE AS DATA

+

RESERVE AS DATA

instruction: reserve a new data bank
Reserve As Data bank number,length

@@ -128,7 +128,7 @@

RESERVE AS DATA

so this type of bank should not be used for information such as Objects and samples which need to be accessed directly by the Amiga's hardware chips.

-

RESERVE AS WORK

+

RESERVE AS WORK

instruction: reserve a new work bank
Reserve as Work bank number,length

@@ -148,7 +148,7 @@

RESERVE AS WORK

End If -

RESERVE AS CHIP DATA

+

RESERVE AS CHIP DATA

instruction: reserve a new chip data bank
Reserve As Chip Data bank number,length

@@ -166,7 +166,7 @@

RESERVE AS CHIP DATA

Once a bank has been defined by this command, it will be saved automatically, along with your AMOS Professional Basic program.

-

RESERVE AS CHIP WORK

+

RESERVE AS CHIP WORK

instruction: reserve a new chip work bank
Reserve As Chip Work bank number,length

@@ -188,7 +188,7 @@

Saving memory banks

AMOS Professional provides the simplest of instructions for saving memory banks.

-

SAVE

+

SAVE

instruction: save one or more memory banks onto disc
Save "filename.abk"
Save "filename.abk",bank number

@@ -239,7 +239,7 @@

Loading memory banks

Once saved, memory banks need to be retrieved and loaded, ready for use. AMOS Professional makes this process very easy too.

-

LOAD

+

LOAD

instruction: load one or more banks into memory
Load "filename"
Load "filename",bank number

@@ -274,7 +274,7 @@

LOAD

Saving and loading memory blocks

-

BSAVE

+

BSAVE

instruction: save an unformatted memory block
Bsave file$,start To end

@@ -293,7 +293,7 @@

BSAVE

written for a file when BSAVE is used. This means that LOAD cannot be used for this type of file. It is also not suitable for Object banks.

-

BLOAD

+

BLOAD

instruction: load block of binary data into bank or address
Bload file$,bank number
Bload file$, address

@@ -324,7 +324,7 @@

Deleting memory banks

quit the program and re-start the Amiga, but providing you are aware of the potential problem and provided that memory banks are kept as small as is practical, all should be well.

-

ERASE

+

ERASE

instruction: clear a single memory bank
Erase bank number

@@ -340,7 +340,7 @@

ERASE

Print "There is now ";Chip Free; "available bytes." -

ERASE ALL

+

ERASE ALL

instruction: clear all current memory banks
Erase All

@@ -362,7 +362,7 @@

ERASE ALL

part of the program listing. Use the ERASE ALL command carefully to save large amounts of valuable disc space.

-

ERASE TEMP

+

ERASE TEMP

instruction: clear temporary memory banks
Erase Temp

@@ -378,7 +378,7 @@

ERASE TEMP

List Bank -

BANK SHRINK

+

BANK SHRINK

instruction: reduce the size of a bank to new length
Bank Shrink bank number To length

@@ -403,7 +403,7 @@

BANK SHRINK

Swapping banks

-

BANK SWAP

+

BANK SWAP

instruction: swap over two memory banks
Bank Swap first bank number, second bank number

@@ -434,7 +434,7 @@

BANK SWAP

Listing banks on the screen

-

LIST BANK

+

LIST BANK

instruction: list all current banks in memory
List Bank

@@ -470,7 +470,7 @@

Memory bank functions

AMOS Professional provides a full range of memory bank functions, which are used to provide information about the status of available banks.

-

LENGTH

+

LENGTH

function: return the length of a memory bank
length=Length(bank number)

@@ -486,7 +486,7 @@

LENGTH

Print "There are ";Length(1);" images available." -

START

+

START

function: return the address of a memory bank
address=Start(bank number)

@@ -528,7 +528,7 @@

Grabbing accessory program memory banks

details of these commands as well as communication between programs is explained in Chapter 11.4. Here are the available bank-grabbing instructions and functions:

-

BLENGTH

+

BLENGTH

function: return the length of a memory bank from a previous program
length=Blength(bank number)

@@ -538,14 +538,14 @@

BLENGTH

not been defined in the previous program, or if there is no previous program accessible at all (PRG UNDER= 0).

-

BSTART

+

BSTART

function: return the address of a memory bank from a previous program
address=BSTART(bank number)

Similarly, the BSTART function will give the address of the specified memory bank from a previous program, if possible. An error will be returned if no such bank has been reserved.

-

BGRAB

+

BGRAB

instruction: grab a memory bank used by the previous program
Bgrab bank number

@@ -561,7 +561,7 @@

BGRAB

If the bank which is specified to be grabbed does not exist a "Bank not reserved" message will be generated.

-

BSEND

+

BSEND

instruction: transfer a memory bank from the current program to the previous program
Bsend bank number

@@ -611,21 +611,21 @@

Creating your own utilities

programmer, but they do allow advanced users to create customised AMOS Professional utilities.

-

SCREEN BASE

+

SCREEN BASE

function: get screen table
address=Screen Base

This function returns the base address of the internal table that is used to hold the number and position of AMOS Professional screens.

-

ICON BASE

+

ICON BASE

function: get Icon base
address=Icon Base(number)

ICON BASE returns the address of the Icon whose number is specified in brackets. The format of this information is exactly the same as for the SPRITE BASE function, explained below.

-

SPRITE BASE

+

SPRITE BASE

function: get Sprite table
n=Sprite Base(number)

diff --git a/06-01-setting-up-screens.html b/06-01-setting-up-screens.html index fbc03cd..cf5ca63 100644 --- a/06-01-setting-up-screens.html +++ b/06-01-setting-up-screens.html @@ -70,7 +70,7 @@

The AMOS Professional screens

Defining a screen

-

SCREEN OPEN

+

SCREEN OPEN

instruction: open a new screen
Screen Open number,width,height,colours,pixel mode

@@ -103,11 +103,11 @@

SCREEN OPEN

allowing 320 pixels to be displayed across the screen, at any one time. Hires halves the width of each pixel, and so allows 640 to be displayed.

-

LOWRES

+

LOWRES

function: set screen mode to 320 pixels wide
Screen Open number,width,height,colours,Lowres

-

HIRES

+

HIRES

function: set screen mode to 640 pixels wide
Screen Open number,width,height,colours,Hires

@@ -163,7 +163,7 @@

HIRES

Controlling screens

-

SCREEN CLOSE

+

SCREEN CLOSE

instruction: erase a screen
Screen Close number

@@ -171,7 +171,7 @@

SCREEN CLOSE

Use the SCREEN CLOSE command to erase a screen and free the memory it was using for other programming needs. Simply specify the screen number to be deleted.

-

DEFAULT

+

DEFAULT

instruction: re-set to the default screen
Default

@@ -193,7 +193,7 @@

DEFAULT

updated at a convenient point, using the VIEW instruction. To re-activate the automatic screen updating system, use the AUTO VIEW ON command.

-

VIEW

+

VIEW

instruction: display current screen setting
View

@@ -212,7 +212,7 @@

Moving a screen

above one another, and so several different screen modes can be shown at once in separate areas of the display.

-

SCREEN DISPLAY

+

SCREEN DISPLAY

instruction: position a screen
Screen Display number
Screen Display number,x,y, width,height

@@ -267,7 +267,7 @@

SCREEN DISPLAY

TV display, and then move the visible area around inside its boundaries. When using extra-large screens, the area to be viewed is set with the SCREEN OFFSET command.

-

SCREEN OFFSET

+

SCREEN OFFSET

instruction: offset screen at hardware coordinates
Screen Offset number,x,y

@@ -293,7 +293,7 @@

SCREEN OFFSET

Manipulating screens

-

SCREEN CLONE

+

SCREEN CLONE

instruction: clone a screen
Screen Clone number

@@ -328,7 +328,7 @@

SCREEN CLONE

original screen data in memory, it is impossible to use the SCREEN command with the cloned copy.

-

DUAL PLAYFIELD

+

DUAL PLAYFIELD

instruction: combine two screens
Dual Playfield first screen,second screen

@@ -376,7 +376,7 @@

DUAL PLAYFIELD

When using SCREEN OFFSET to position a dual playfield screen, always specify the first screen, and never set screen offsets for both dual playfield screens to zero.

-

DUAL PRIORITY

+

DUAL PRIORITY

instruction: reverse order of dual playfield screens
Dual Priority first screen, second screen

@@ -394,7 +394,7 @@

Clearing, hiding and showing screens

Screens can be removed from view by permanently erasing them, or by hiding them away for later display.

-

CLS

+

CLS

instruction: clear current screen
Cls
Cls colour number
@@ -418,12 +418,12 @@

CLS

E> Cls: Circle 100,98,98: Cls 0,50,50 To 150,150 -

SCREEN HIDE

+

SCREEN HIDE

instruction: hide a screen
Screen Hide
Screen Hide number

-

SCREEN SHOW

+

SCREEN SHOW

instruction: show a screen
Screen Show
Screen Show number

@@ -452,7 +452,7 @@

Screen priority

screens queuing up one behind the other, a method is needed to bring any one of these screens to the front of the display.

-

SCREEN TO FRONT

+

SCREEN TO FRONT

instruction: move screen to front of display
Screen To Front
Screen To Front number

@@ -462,7 +462,7 @@

SCREEN TO FRONT

screen number is omitted after the command, then the current screen will be brought to the front.

-

SCREEN TO BACK

+

SCREEN TO BACK

instruction: move screen to back of display
Screen To Back
Screen To Back number

@@ -483,7 +483,7 @@

SCREEN TO BACK

Wait 100 : Screen To Back -

SCREEN

+

SCREEN

instruction: set current screen
Screen number

@@ -507,7 +507,7 @@

SCREEN

Defining screen colours

-

DEFAULT PALETTE

+

DEFAULT PALETTE

instruction: define standard palette
Default Palette $1,$2,$3 ... $32

@@ -523,7 +523,7 @@

DEFAULT PALETTE

D> Default Palette $000,$111,$A69,,,,,$FFF -

GET PALETTE

+

GET PALETTE

instruction: copy palette from a screen
Get Palette number
Get Palette number,mask

@@ -542,7 +542,7 @@

Screen functions

AMOS Professional provides a full range of screen functions, to monitor and exploit the current status of your screens.

-

SCREEN

+

SCREEN

function: give current screen number
screen number=Screen

@@ -550,12 +550,12 @@

SCREEN

SCREEN can be used as a function to return the number of the screen which is currently active. This screen is used for all drawing operations, but it is not necessarily visible.

-

SCREEN HEIGHT

+

SCREEN HEIGHT

function: give current screen height
height=Screen Height
height=Screen Height number

-

SCREEN WIDTH

+

SCREEN WIDTH

function: give current screen width
height=Screen Width
height=Screen Width (number)

@@ -570,7 +570,7 @@

SCREEN WIDTH

Print Screen Width -

SCREEN COLOUR

+

SCREEN COLOUR

function: give maximum number of colours
number=Screen Colour

@@ -581,7 +581,7 @@

SCREEN COLOUR

D> Print Screen Colour -

SCIN

+

SCIN

function: give screen number at hardware coordinates
number=SCIN(x,y)

@@ -599,7 +599,7 @@

IFF screens

AMOS Professional allows you to make use of legally available, ready-made pictures in the public domain, for your own programs.

-

LOAD IFF

+

LOAD IFF

instruction: load an IFF screen from disc
Load Iff "filename"
Load Iff "filename",screen number

@@ -610,7 +610,7 @@

LOAD IFF

which will open that screen for the picture. If this numbered screen already exists, its contents will be erased and replaced by the IFF data.

-

SAVE IFF

+

SAVE IFF

instruction: save an IFF screen to disc
Save Iff "filename"
Save Iff "filename"
@@ -719,7 +719,7 @@

Interlaced screens

Interlaced mode is perfect for displaying pictures, but is not recommended for much else.

-

LACED

+

LACED

reserved variable: return a value in conjunction with screen resolution
Screen Open number,width,height,colours,Laced+resolution

@@ -743,7 +743,7 @@

LACED

list calculations. As soon as the last interlaced screen has been closed, the entire display returns to normal mode.

-

SCREEN MODE

+

SCREEN MODE

function: return screen mode
value=Screen Mode

diff --git a/06-02-using-screens.html b/06-02-using-screens.html index 277ed70..18c620f 100644 --- a/06-02-using-screens.html +++ b/06-02-using-screens.html @@ -38,7 +38,7 @@

Copying screens

screen, time and time again, at great speed. Copying between the "physical" and "logical" screens is fully discussed in Chapter 7.2, along with detailed explanations of double buffering.

-

SCREEN COPY

+

SCREEN COPY

instruction: copy an area of a screen
Screen Copy source number To destination number
Screen Copy source number,x1,y1,x2,y2 To destination number,x3,y3
@@ -118,7 +118,7 @@

SCREEN COPY

Scrolling the screen

-

DEF SCROLL

+

DEF SCROLL

instruction: define a scrolling screen zone
Def Scroll number,x1,y1 To x2,y2,horizontal value, vertical value

@@ -133,7 +133,7 @@

DEF SCROLL

negative values will shift the zone towards the left of the screen. Similarly, positive vertical values will scroll downwards and negative values cause an upward scroll.

-

SCROLL

+

SCROLL

instruction: scroll a screen zone
Scroll zone number

@@ -145,7 +145,7 @@

SCROLL

Enlarging and reducing the screen

-

ZOOM

+

ZOOM

instruction: change size of part of screen
Zoom source number, x1 ,y1 ,x2,y2 To destination number,x3,y3,x4,y4

@@ -193,7 +193,7 @@

Physical and logical screens

process is completely automatic when using the DOUBLE BUFFER command, which is fully explained in Chapter 7.2.

-

SCREEN SWAP

+

SCREEN SWAP

instruction: swap over logical and, physical screens
Screen Swap
Screen Swap number

@@ -203,7 +203,7 @@

SCREEN SWAP

instantly switched between the two of. them. If the DOUBLE BUFFER command has been engaged, this process is automatic.

-

LOGBASE

+

LOGBASE

function: return the address of logical screen bit-plane
address=Logbase(plane)

@@ -212,7 +212,7 @@

LOGBASE

directly. The current screen is made up of six possible bit-planes, and after LOGBASE has been called, the address of the required plane is returned, or zero is given if it does not exist.

-

PHYBASE

+

PHYBASE

function: return the address of the current screen
address=Phybase(plane)

@@ -224,7 +224,7 @@

PHYBASE

X> Loke Phybase(0),0 : Rem Poke a thin line directly onto screen -

PHYSIC

+

PHYSIC

function: return identification number for physical screen
number=Physic
number=Physic(screen number)
@@ -236,7 +236,7 @@

PHYSIC

ZOOM, APPEAR and SCREEN COPY commands. The PHYSIC identification number of the current screen will be returned, unless an optional screen number is specified.

-

LOGIC

+

LOGIC

function: return identification number for logical screen
number=Logic
number=Logic(screen number)

@@ -269,7 +269,7 @@

Screen synchronisation

when AMOS Professional must be instructed to wait for the next vertical blank period, in order keep in step.

-

WAIT VBL

+

WAIT VBL

instruction: wait for next vertical blank period
Wait Vbl
@@ -287,7 +287,7 @@

Screen compaction

AMOS Professional programmer needs to crunch the data that makes up screen graphics, pack it into an acceptable amount of memory and then unpack it when necessary.

-

SPACK

+

SPACK

picture compactor extension: pack a screen
Spack screen number To bank number
Spack screen number To bank number xl,y1,x2,y2

@@ -325,7 +325,7 @@

SPACK

will run smoothly. If a one second delay is not acceptable to you, please see the alternative system that uses GET CBLOCK and PUT CBLOCK in Chapter 7.7.

-

PACK

+

PACK

picture compactor extension: pack screen data
Pack screen number To bank number
Pack screen number To bank number xl,y1,x2,y2

@@ -345,7 +345,7 @@

PACK

behind existing Bobs, so it is possible to exploit this command together with SCREEN OFFSET to create superb scrolling backgrounds.

-

UNPACK

+

UNPACK

picture compactor extension: unpack a compacted screen
Unpack bank number
Unpack bank number,x,y
diff --git a/06-03-screen-effects.html b/06-03-screen-effects.html index 5ee94c1..29e4adc 100644 --- a/06-03-screen-effects.html +++ b/06-03-screen-effects.html @@ -31,7 +31,7 @@

Screen Effects

When the image of one screen dissolves and melts into the image of another screen, various "fade" effects are produced.

-

APPEAR

+

APPEAR

instruction: fade between two screens
Appear source screen To destination screen, pixels
Appear source screen To destination screen, number pixels, range

@@ -65,7 +65,7 @@

APPEAR

That example fades the top part of your default screen into the newly opened Screen 1. Obviously, the appearance of fades will vary, depending on the screen mode being used.

-

FADE

+

FADE

instruction: blend colours to new values
Fade speed
Fade speed,colour list
@@ -153,7 +153,7 @@

Flashing colours

default setting for the text cursor. By using interrupts, any colour index can be cycled through a series of colour changes, producing complex flashing effects.

-

FLASH

+

FLASH

instruction: set flashing colour sequence
Flash index number,"(colour,delay)(colour,delay)(colour,delay)..."
Flash Off

@@ -182,7 +182,7 @@

FLASH

Curs Off : Wait 250 : Flash Off -

SHIFT UP

+

SHIFT UP

instruction: rotate colour values upwards
Shift Up delay,first,last,flag

@@ -205,7 +205,7 @@

SHIFT UP

Each of your screens can have its own set of animated colour rotations, and because they are executed using interrupts they will not affect the running of your programs.

-

SHIFT DOWN

+

SHIFT DOWN

instruction: rotate colour values downwards
Shift Down delay,first,last,flag

@@ -215,7 +215,7 @@

SHIFT DOWN

so on. With the final flag set to zero, all colours are eventually replaced with the last colour in the list.

-

SHIFT OFF

+

SHIFT OFF

instruction: turn off all colour shifts for current screen
Shift Off

@@ -233,7 +233,7 @@

Rainbow effects

used to generate hundreds of colours in some spectacular rainbow effects. Before any rainbows can be conjured up, their parameters must first be set.

-

SET RAINBOW

+

SET RAINBOW

instruction: define a rainbow
Set Rainbow number,index,height,red$,green$,blue$

@@ -278,7 +278,7 @@

SET RAINBOW

controlling the "speed" of the sequence. Step is a value to be added to the colour, which controls the colour change. Count is simply the number of times this whole process is performed.

-

RAINBOW

+

RAINBOW

instruction: display a rainbow
Rainbow number,offset,vertical position,height

@@ -304,7 +304,7 @@

RAINBOW

However, experienced Amiga users will be able to start more than one rainbow at the same line, using the Copper. See Appendix F for an explanation of this technique.

-

RAINBOW DEL

+

RAINBOW DEL

instruction: delete a rainbow
Rainbow Del
Rainbow Del number

@@ -313,7 +313,7 @@

RAINBOW DEL

Use this command on its own to get rid of all rainbows that have been set up. If a rainbow identity number is added, then only that particular rainbow will be deleted.

-

RAIN

+

RAIN

function: change the colour of a rainbow line
Rain(number,line)=colour

diff --git a/06-04-graphics.html b/06-04-graphics.html index 248b8b0..80613d4 100644 --- a/06-04-graphics.html +++ b/06-04-graphics.html @@ -39,7 +39,7 @@

Graphics

Graphic coordinates

-

PLOT

+

PLOT

instruction: plot a single point
Plot x,y
Plot x,y,colour

@@ -59,7 +59,7 @@

PLOT

Loop -

POINT

+

POINT

function: return the colour of a point
c=Point(x,y)

@@ -76,7 +76,7 @@

POINT

Setting the graphics cursor

-

GR LOCATE

+

GR LOCATE

instruction: position the graphics cursor
Gr Locate x,y @@ -114,7 +114,7 @@

GR LOCATE

Drawing lines

-

DRAW

+

DRAW

instruction: draw a line
Draw x1 ,y1 To x2,y2
Draw To x,y

@@ -140,7 +140,7 @@

DRAW

%01111111111111111
-

SET LINE

+

SET LINE

instruction: set a line style
Set Line binary mask

@@ -163,7 +163,7 @@

Drawing outline shapes

Here is a range of AMOS Professional short-cuts for drawing outline shapes on the screen.

-

POLYLINE

+

POLYLINE

instruction: draw multiple line
Polyline x1 ,y1 To x2,y2 To x3,y3
Polyline To x1 ,y1 To x2,y2

@@ -178,7 +178,7 @@

POLYLINE

Polyline 160,6 To 100,173 To 250,69 To 71,69 To 222,173 To 160,6 -

BOX

+

BOX

instruction: draw a rectangular outline
Box x1 ,y1 To x2,y2

@@ -186,7 +186,7 @@

BOX

Boxed outlines are drawn at settings determined by the top left-hand and bottom right-hand coordinates, as in the last example.

-

CIRCLE

+

CIRCLE

instruction: draw a circular outline
Circle x,y,radius

@@ -210,7 +210,7 @@

CIRCLE

Loop -

ELLIPSE

+

ELLIPSE

instruction: draw an elliptical outline
Ellipse x,y,radius1,radius2

@@ -225,7 +225,7 @@

ELLIPSE

Ellipse ,,20,50 -

CLIP

+

CLIP

instruction: restrict drawing to a limited screen area
Clip Clip x1 ,y1 To x2,y2

@@ -257,7 +257,7 @@

Selecting colours

explained in Chapter 6.1.

-

INK

+

INK

instruction: set drawing colour
Ink number
Ink number,pattern,border

@@ -298,7 +298,7 @@

INK

-

COLOUR

+

COLOUR

function: read the colour assignment
c=Colour(index)

@@ -337,7 +337,7 @@

COLOUR

-

COLOUR

+

COLOUR

instruction: assign a colour to an index
Colour number,$RGB

@@ -368,7 +368,7 @@

Setting several colours

colours to every colour index would be a tedious business. AMOS Professional handles all the donkey work as usual.

-

PALETTE

+

PALETTE

instruction: set the current screen colours
Palette colour list

Filled shapes stage explains how to combine these skills. Re-set your colours now, by getting rid of any customised PALETTE commands, before continuing.

-

PAINT

+

PAINT

instruction: fill a screen area with colour
Paint x,y
Paint x,y,mode

@@ -436,7 +436,7 @@

PAINT

adjoining area.

-

BAR

+

BAR

instruction: draw a filled rectangle
Bar x1,y1 To x2,y2

@@ -444,7 +444,7 @@

BAR

This is used to draw solid bars of colour by the familiar method of setting the top left-hand and bottom right-hand graphic coordinates.

-

POLYGON

+

POLYGON

instruction: draw a filled polygon
Polygon x1,y1 To x2,y2 To x3,y3
Polygon To x1,y1, To x2,y2

@@ -471,7 +471,7 @@

Alternative fill style

Filling shapes with plain colours is a useful technique, but the AMOS Professional programmer has a much wider choice of fill effects.

-

SET PATTERN

+

SET PATTERN

instruction: select a fill pattern
Set Pattern number

@@ -551,7 +551,7 @@

SET PATTERN

-

SET PAINT

+

SET PAINT

instruction: toggle outline mode
Set Paint mode

@@ -588,7 +588,7 @@

Overwriting styles

screen. There are four alternative drawing modes that change the way your graphics appear, and they may be used individually or combined to generate a whole range of effects.

-

GR WRITING

+

GR WRITING

instruction: change graphic writing mode
Gr Writing bitpattern

@@ -633,7 +633,7 @@

Advanced techniques

instruction has been performed. The size of the memory buffer is equivalent to a single bit plane in the current screen mode, so the default screen takes up a total of 8k.

-

SET TEMPRAS

+

SET TEMPRAS

instruction: set Temporary Raster
Set Tempras
Set Tempras buffer address,buffer size

diff --git a/06-05-menus.html b/06-05-menus.html index f8a9a02..663e4fd 100644 --- a/06-05-menus.html +++ b/06-05-menus.html @@ -102,7 +102,7 @@

Using AMOS Professional menus

That specifies your list of alternatives for the "Action" and "Mouse" menus. Before this program can be run, it must first be activated.

-

MENU ON

+

MENU ON

instruction: activate a menu
Menu On

@@ -125,7 +125,7 @@

MENU ON

Reading a simple menu

-

CHOICE

+

CHOICE

function: read a menu
selection=Choice
title number=Choice(1)
@@ -178,7 +178,7 @@

Creating advanced menus

Now look at these uses of MENU$, which are used to give a single item its own characteristics:

-

MENU$

+

MENU$

instruction: define appearance of a single item in a menu
Menu$(single item parameters)=normal$
Menu$(single item parameters)=normal$,selected$,inactive$,background$

@@ -221,7 +221,7 @@

MENU$

cause delays while the menus were being read. AMOS Professional provides a method for handling the largest of menus.

-

ON MENU PROC

+

ON MENU PROC

instruction: automatic menu selection
On Menu Proc procedure1
On Menu Proc procedure1,procedure2

@@ -239,7 +239,7 @@

ON MENU PROC

call. Procedures can make use of the CHOICE function to monitor which option has been triggered, and to perform the appropriate action.

-

ON MENU GOSUB

+

ON MENU GOSUB

instruction: automatic menu selection
On Menu Gosub label1
On Menu Gosub label1,label2

@@ -253,7 +253,7 @@

ON MENU GOSUB

evaluated once only when the program is run.

-

ON MENU GOTO

+

ON MENU GOTO

instruction: automatic menu selection
On Menu Goto label1
On Menu Goto label1, labe12...

@@ -279,7 +279,7 @@

ON MENU GOTO

program is executing a procedure which must be performed without interruptions, such as loading and saving information to disc. Menus are reactivated using ON MENU ON.

-

ON MENU DEL

+

ON MENU DEL

instruction: delete labels and procedures used by ON MENU
On Menu Del

@@ -292,7 +292,7 @@

ON MENU DEL

The Menu control commands

-

MENU ON

+

MENU ON

instruction: activate a menu
Menu On
Menu On bank number

@@ -303,7 +303,7 @@

MENU ON

optional bank number is included after the command, the appropriate menu will be taken from the numbered memory bank. Please see MAKE MENU BANK, below.

-

MENU OFF

+

MENU OFF

instruction: deactivate a menu
Menu Off

@@ -312,7 +312,7 @@

MENU OFF

This command temporarily turns a menu off, making it inactive. The menu can be reactivated at any time with the MENU ON command.

-

MENU DEL

+

MENU DEL

instruction: delete one or more menu items
Menu Del
Menu Del(single item parameters)

@@ -331,7 +331,7 @@

MENU DEL

Menu Del(2,3,4) : Rem Delete sub-option 4 of option 3 of title 2 -

MENU TO BANK

+

MENU TO BANK

instruction: save menu definitions into a memory bank
Menu To Bank number

@@ -343,7 +343,7 @@

MENU TO BANK

in the editor memory. If the bank number you select already exists, the appropriate error message will be given.

-

BANK TO MENU

+

BANK TO MENU

instruction: restore a menu definition saved in a menu bank
Bank To Menu number

@@ -352,7 +352,7 @@

BANK TO MENU

stored. The menu will be restored to its exact state when originally saved, so the restoration process may take a few seconds. To activate the restored menu, call MENU ON.

-

MENU CALC

+

MENU CALC

instruction: recalculate a menu
Menu Calc

@@ -382,7 +382,7 @@

Alternative menu styles

menu, and design a customised layout. As a default, all titles are displayed in a horizontal bar with their related options arranged below in a vertical block. Here are the alternatives:

-

MENU LINE

+

MENU LINE

instruction: display menu options as a horizontal line
Menu Line level number
Menu Line (single item parameters)

@@ -403,7 +403,7 @@

MENU LINE

X> Menu Line(1,1,1) : Rem Display sub-option 1,1,1 as a line -

MENU TLINE

+

MENU TLINE

instruction: display a menu as a total line
Menu Tline level number
Menu Tline(single item parameters)

@@ -414,7 +414,7 @@

MENU TLINE

item is centre screen. Use this instruction in the same way as MENU LINE during your menu definitions.

-

MENU BAR

+

MENU BAR

instruction: display menu items as a vertical bar
Menu Bar level number
Menu Bar(single item parameters)

@@ -451,7 +451,7 @@

MENU BAR

End Proc -

MENU INACTIVE

+

MENU INACTIVE

instruction: turn off a menu item
Menu Inactive level number
Menu Inactive(single item parameters)

@@ -466,7 +466,7 @@

MENU INACTIVE

menu options that have been made inactive will be shown in italics. Otherwise the special inactive string will appear.

-

MENU ACTIVE

+

MENU ACTIVE

instruction: activate a menu item
Menu Active level number
Menu Active(single item parameters)

@@ -484,7 +484,7 @@

Moving menu displays

As has been explained, AMOS Professional menus can be displayed anywhere on your screen. he display positions can be moved either by the user or by your program.

-

MENU MOVABLE

+

MENU MOVABLE

instruction: activate automatic menu movement
Menu Movable level number
Menu Movable(single item parameters)

@@ -501,7 +501,7 @@

MENU MOVABLE

hierarchy, but please note that this command does not allow you to change the status of any items below the selected level.

-

MENU STATIC

+

MENU STATIC

instruction: fix a menu in static position
Menu Static level number
Menu Static(single item parameters)

@@ -512,14 +512,14 @@

MENU STATIC

memory this can cause real problems. MENU STATIC can be used to avoid these difficulties by setting the level or item at which the entire menu becomes immovable by the user.

-

MENU ITEM STATIC

+

MENU ITEM STATIC

instruction: fix items in static positions
Menu Item Static level number
Menu Item Static(single item parameters)

This command locks one or more menu items into place, and is the default setting.

-

MENU ITEM MOVABLE

+

MENU ITEM MOVABLE

instruction: move individual menu options
Menu Item Movable level number
Menu Item Movable(single item parameters)

@@ -545,7 +545,7 @@

MENU ITEM MOVABLE

X> Menu$(1 ,1)=,,,,"(Bar40,100)(Loc0,0)" -

MENU SEPARATE

+

MENU SEPARATE

instruction: separate a list of menu items
Menu Separate level number
Menu Separate(single item parameters)

@@ -561,14 +561,14 @@

MENU SEPARATE

can be split at any chosen point. Once an item has been separated it can be affected by the MENU MOVABLE command instead of the ITEM instructions.

- +

instruction: link a list of menu items
Menu Link level number
Menu Link(single item parameters)

This is the exact opposite of MENU SEPARATE, and is used to link one or more items together.

-

X MENU

+

X MENU

function: return the graphical x-coordinate of a menu item
x=X Menu(single item parameters)

@@ -576,7 +576,7 @@

X MENU

The X MENU function allows you to get the position of a menu item, relative to the previous option on screen. This information can be used to set up very powerful menus.

-

Y MENU

+

Y MENU

function: return the graphical y-coordinate of a menu item
y=Y Menu(single item parameters)

@@ -589,7 +589,7 @@

Y MENU

Moving a menu within a program

-

MENU BASE

+

MENU BASE

instruction: move the starting position of a menu
Menu Base x,y

@@ -598,7 +598,7 @@

MENU BASE

absolute screen coordinates at x,y. All subordinate menu items will now be displayed relative to this starting point.

-

SET MENU

+

SET MENU

instruction: move a menu item
Set Menu(single item parameters) To x,y

@@ -638,7 +638,7 @@

Keyboard shortcuts

command, including the ON MENU range.

-

MENU KEY

+

MENU KEY

instruction: assign a key to a menu item
Menu Key(single item parameters) To c$
Menu Key(single item parameter) To scancode, bitmap

@@ -756,7 +756,7 @@

Embedded menu commands

In the listings for all of the following embedded commands, the two important characters that make up the command are in upper case bold type.

-

LOcate

+

LOcate

embedded command: move the graphics cursor
LOcate x,y

@@ -774,7 +774,7 @@

LOcate

Menu On : Wait Key -

BOb

+

BOb

embedded command: draw a bob
BOb number

@@ -784,7 +784,7 @@

BOb

transparent, but this can be changed with NO MASK. All coordinates will be measured relative to the top left-hand corner.

-

ICon

+

ICon

embedded command: draw an icon
ICon number

@@ -792,7 +792,7 @@

ICon

transparent in this case, but transparency can be achieved with MAKE ICON MASK, as detailed in Chapter 7.7. -

Ink

+

Ink

embedded command: set pen, paper or outline colour
INk mode,value

@@ -807,7 +807,7 @@

Ink

3 Set OUTLINE colour -

SFont

+

SFont

embedded command: set font
SFont number

@@ -817,7 +817,7 @@

SFont

executed.

-

SStyle

+

SStyle

embedded command: set font style
SStyle bit-pattern

@@ -832,13 +832,13 @@

SStyle

2 italic -

LIne

+

LIne

embedded command: draw a line
LIne x,y

LIne draws a line from the current cursor position to the graphics coordinates x,y.

-

SLine

+

SLine

embedded command: set line pattern
SLine pattern

@@ -847,19 +847,19 @@

SLine

Because there is no evaluation of expressions, the bit-pattern must be converted into decimal notation before use.

-

BAr

+

BAr

embedded command: draw a bar
BAr x,y

BAr draws a rectangular bar from the current cursor coordinates to x,y.

-

PAttern

+

PAttern

embedded command: draw a pattern
PAttern number

PAttern changes the fill pattern used by the BAr command to the numbered style. -

OUtline

+

OUtline

embedded command: enclose a bar with an outline
OUtline value

@@ -876,7 +876,7 @@

OUtline

ELlipse draws an ellipse centred on the current coordinates, with the chosen radii. To draw a circle centred at the current coordinates, simply make radius1 equal to radius2.

-

PRoc

+

PRoc

embedded command: call a procedure
PRoc NAME

@@ -952,7 +952,7 @@

PRoc

-

REserve

+

REserve

embedded command: reserve a local data area for a procedure
REserve number of bytes

@@ -969,7 +969,7 @@

Automatic re-drawing of menus

The last two commands in this Chapter affect the automatic process which re-draws the selected menu 50 times every second.

-

MENU CALLED

+

MENU CALLED

instruction: re-draw a menu item continually
Menu Called(single item parameters)

@@ -989,7 +989,7 @@

MENU CALLED

Because menu items are not double buffered, bobs may flicker a little, but the use of computed sprites will present no such problems.

-

MENU ONCE

+

MENU ONCE

instruction: turn off automatic re-drawing
Menu Once(single item parameters)

diff --git a/07-01-hardware-sprites.html b/07-01-hardware-sprites.html index 4074e0d..1239513 100644 --- a/07-01-hardware-sprites.html +++ b/07-01-hardware-sprites.html @@ -256,7 +256,7 @@

The Sprite command

Sprite 8,,,2 -

DEL SPRITE

+

DEL SPRITE

instruction: delete an image from the Object Bank
Del Sprite number
Del Sprite first To last

@@ -289,7 +289,7 @@

DEL SPRITE

After the last image has been deleted from the Object Bank, the entire Bank is erased automatically.

-

INS SPRITE

+

INS SPRITE

instruction: insert a blank Sprite image into the Object bank
Ins Sprite number
Ins Sprite first To last

@@ -368,7 +368,7 @@

The Sprite Palette

sprites are exactly the same. A procedure is provided to accomplish this, and it may be found along with a host of other useful procedures, in Appendix C.

-

GET SPRITE PALETTE

+

GET SPRITE PALETTE

instruction: grab sprite colours into screen
Get Sprite Palette
Get Sprite Palette mask

@@ -410,7 +410,7 @@

GET SPRITE PALETTE

Please note that the GET BOB PALETTE and GET OBJECT PALETTE instructions perform an identical task to the GET SPRITE PALETTE command.

-

GET SPRITE

+

GET SPRITE

instruction: grab screen image into the Object Bank
Get Sprite image number,x1,y1 To x2,y2
Get Sprite screen number,image number,x1,y1 To x2,y2

@@ -434,7 +434,7 @@

GET SPRITE

It should be noted that the GET BOB instruction is identical to GET SPRITE, making them interchangeable.

-

SET SPRITE BUFFER

+

SET SPRITE BUFFER

instruction: set maximum height of Sprites
Set Sprite Buffer number

@@ -461,7 +461,7 @@

SET SPRITE BUFFER

Sprite Commands

-

SPRITE UPDATE

+

SPRITE UPDATE

instruction: control Sprite movements
Sprite Update
Sprite Update Off
@@ -480,7 +480,7 @@

SPRITE UPDATE

Sprites that have been moved since the last update. Alternatively, SPRITE UPDATE ON returns to the default status of automatic updating.

-

SPRITE OFF

+

SPRITE OFF

instruction: remove Sprites from screen
Sprite Off
Sprite Off number

@@ -497,7 +497,7 @@

SPRITE OFF

Sprites are automatically returned to their original positions the next time Direct Mode is entered.

-

X SPRITE

+

X SPRITE

function: return x-coordinate of a Sprite
x=X Sprite(number)

@@ -506,13 +506,13 @@

X SPRITE

The Sprite number can range from 0 to 63, and positions are given in hardware coordinates. Use X SPRITE to check if a Sprite has passed off the edge of the screen.

-

Y SPRITE

+

Y SPRITE

function: return y-coordinate of a Sprite
y=Y Sprite(number)

This gives the vertical position of the specified Sprite, measured in hardware coordinates.

-

I SPRITE

+

I SPRITE

function: return current image number of a Sprite
image=I Sprite(number)

@@ -524,12 +524,12 @@

I SPRITE

Conversion Functions

-

X SCREEN

+

X SCREEN

function: convert hardware x-coordinate to screen x-coordinate
x=X Screen(xcoordinate)
x=X Screen(screen number,xcoordinate)

-

Y SCREEN

+

Y SCREEN

function: convert hardware y-coordinate to screen y-coordinate
y=Y Screen(ycoordinate)
y=Y Screen(screen number,ycoordinate)

@@ -541,12 +541,12 @@

Y SCREEN

which case the coordinates will be returned relative to that screen.

-

X HARD

+

X HARD

function: convert screen x-coordinate into hardware x-coordinate
x=X Hard(xcoordinate)
x=X Hard(screen number,xcoordinate)

-

Y HARD

+

Y HARD

function: convert screen y-coordinate into hardware y-coordinate
y=Y Hard(ycoordinate)
y=Y Hard(screen number,ycoordinate)

@@ -600,7 +600,7 @@

The Hot Spot

all coordinate calculations.

-

HOT SPOT

+

HOT SPOT

instruction: set reference point for all coordinate calculations
Hot Spot image number,x,y
Hot Spot image number,pre-set value

diff --git a/07-02-blitter-objects.html b/07-02-blitter-objects.html index 2a9dcf1..52029a1 100644 --- a/07-02-blitter-objects.html +++ b/07-02-blitter-objects.html @@ -166,7 +166,7 @@

Displaying a Bob

General Bob Commands

-

BOB OFF

+

BOB OFF

instruction: remove a Bob from display
Bob Off
Bob Off number

@@ -184,11 +184,11 @@

BOB OFF

The BOB OFF instruction also turns off any animation or collision routines associated with these Bobs.

-

X BOB

+

X BOB

function: get x-coordinate of a Bob
x-coordinate=X Bob(number)

-

Y BOB

+

Y BOB

function: get y-coordinate of a Bob
y-coordinate=Y Bob(number)

@@ -222,7 +222,7 @@

Y BOB

is possible to loose track of the precise image currently displayed, so the next function has been supplied to rectify this.

-

I BOB

+

I BOB

function: get image number used by a Bob
image=IBob(number)

@@ -246,7 +246,7 @@

I BOB

Loop -

GET BOB PALETTE

+

GET BOB PALETTE

instruction: load image colours into current screen
Get Bob Palette
Get Bob Palette mask

@@ -267,7 +267,7 @@

GET BOB PALETTE

Unmasking Bobs

-

NO MASK

+

NO MASK

instruction: remove colour zero mask from Bob
No Mask number

No Mask number

@@ -304,11 +304,11 @@

Bob Priority

AMOS Professional allows changes in the priority system to suit your needs, this first system offers an alternative based not on Bob numbers, but on the position of Bobs on the screen.

-

PRIORITY ON

+

PRIORITY ON

instruction: set Bob priority to highest y-coordinate
Priority On

-

PRIORITY OFF

+

PRIORITY OFF

instruction: set Bob priority to default status
Priority Off

@@ -318,11 +318,11 @@

PRIORITY OFF

perspective effects can be created. All that is needed to re-set the original Bob number priorities is to use the PRIORITY OFF command.

-

PRIORITY REVERSE ON

+

PRIORITY REVERSE ON

instruction: toggle on Reverse Priority of Bobs
Priority Reverse On

-

PRIORITY REVERSE OFF

+

PRIORITY REVERSE OFF

instruction: toggle off Reverse Priority of Bobs
Priority Reverse Off

@@ -338,7 +338,7 @@

PRIORITY REVERSE OFF

Bobs and screens

AMOS Professional offers a full range of commands to allow Bobs and screens to interact.

-

LIMIT BOB

+

LIMIT BOB

instruction: limit Bob to part of screen
Limit Bob x1 ,y1 To x2,y2
Limit Bob number,x1,y1 To x2,y2
@@ -368,7 +368,7 @@

LIMIT BOB

X> Limit Bob -

DOUBLE BUFFER

+

DOUBLE BUFFER

instruction: activate Double Buffering system
Double Buffer

@@ -422,7 +422,7 @@

DOUBLE BUFFER

including a DOUBLE BUFFER command, screens are switched after the drawing process is complete, and as explained above, the process is completely automatic.

-

GET BOB

+

GET BOB

instruction: grab an image from part of screen
Get Bob image,x1,x2 To x2,y2
Get Bob screen number,image,x1,y1 To x2,y2

@@ -474,7 +474,7 @@

GET BOB

Loop -

PUT BOB

+

PUT BOB

instruction: put a fixed copy of a Bob on screen
Put Bob number

@@ -490,7 +490,7 @@

PUT BOB

buffered screens, it is not particularly useful, and PASTE BOB is recommended as the preferred command. Please see below.

-

PASTE BOB

+

PASTE BOB

instruction: draw an image from Object Bank
Paste Bob x,y,image

@@ -531,7 +531,7 @@

PASTE BOB

Bob Bank Commands

-

DEL BOB

+

DEL BOB

instruction: delete an image from the Object Bank
Del Bob number
Del Bob first To last

@@ -564,7 +564,7 @@

DEL BOB

After the last image has been deleted from the Object Bank, the entire Bank is erased automatically.

-

INS BOB

+

INS BOB

instruction: insert a blank Bob image into the Object bank
Ins Bob number
Ins Bob first To last

@@ -607,7 +607,7 @@

Flipping Bob Images

to display the same image in different orientations, so that a character can be mirrored and turned upside down, simply by flipping its image.

-

HREV

+

HREV

function: flip an image horizontally
new number=Hrev(image number)

@@ -667,7 +667,7 @@

HREV

the way your image is displayed on screen. Be careful to position your hot spots sensibly, or avoid any risks by setting them centrally, using the appropriate HOT SPOT command.

-

VREV

+

VREV

function: flip an image vertically
new number=Vrev(image number)

@@ -693,7 +693,7 @@

VREV

X> "Anim 0,($4001,2)($4002,2)($4003,2)($4004,2)" -

REV

+

REV

function: double-flip an image vertically and horizontally
new number=Rev(image number)

diff --git a/07-03-updating-objects.html b/07-03-updating-objects.html index e46e4a8..2b289af 100644 --- a/07-03-updating-objects.html +++ b/07-03-updating-objects.html @@ -246,7 +246,7 @@

The updating commands

You are recommended to add a WAIT VBL instruction after each SPRITE UPDATE, to make sure that Sprite movements are perfectly synchronised with the existing screen display.

-

UPDATE

+

UPDATE

instruction: move all objects at once
Update
Update Off
@@ -266,11 +266,11 @@

UPDATE

UPDATE ON returns the updating system back to the original automatic setting.

-

BOB CLEAR

+

BOB CLEAR

instruction: clear all Bobs from the screen
Bob Clear

-

BOB DRAW

+

BOB DRAW

instruction: re-draw all Bobs on screen
Bob Draw

@@ -351,7 +351,7 @@

The Autoback command

graphics operations with all Bob updates. This means that once DOUBLE BUFFER is activated, graphics and text can be displayed as normal. This is the principle of the AUTOBACK system.

-

AUTOBACK

+

AUTOBACK

instruction: set mode for graphics operations on double buffered screen
Autoback mode

@@ -400,7 +400,7 @@

Bob drawing modes

Once Bobs have been set up, you are allowed to change the way that they react with other screen graphics.

-

SET BOB

+

SET BOB

instruction: set drawing mode for Bobs
Set Bob number,background,planes,mask

diff --git a/07-04-detecting-collisions.html b/07-04-detecting-collisions.html index 9faf873..dd599c1 100644 --- a/07-04-detecting-collisions.html +++ b/07-04-detecting-collisions.html @@ -147,7 +147,7 @@

Masks

Sprites have no masks unless you specifically attach them. So if you intend to make use of collision detection, it is vital to ensure that all your objects are wearing their masks.

-

MAKE MASK

+

MAKE MASK

instruction: mask an image for collision detection
Make Mask
Make Mask number

@@ -163,7 +163,7 @@

MAKE MASK

The collision functions

-

BOB COL

+

BOB COL

function: detect for collision between Blitter Objects
c=Bob Col(number)
c=Bob Col(number, first To last)

@@ -192,7 +192,7 @@

BOB COL

pair of objects have collided amongst a whole range of similar objects. The COL function is explained later.

-

SPRITE COL

+

SPRITE COL

function: test for collision between Sprites
c=Sprite Col(number)
c=Sprite Col(number,start To finish)

@@ -215,7 +215,7 @@

SPRITE COL

SPRITE COL instruction. Also that the equivalent AMAL function is SC.

-

SPRITEBOB COL

+

SPRITEBOB COL

function: test for collision between one Sprite and range of Bobs
c=Spritebob Col(number)
c=Spritebob Col(number,start To finish)

@@ -243,7 +243,7 @@

SPRITEBOB COL

screens, and attempts to use it in high resolution will lead to unpredictable results. This is because your Sprites and Bobs are likely to have different sized screen points.

-

BOBSPRITE COL

+

BOBSPRITE COL

function: test for collision between one Bob and range of Sprites
c=Bobsprite Col(number)
c=Bobsprite Col(number,first To last)

@@ -255,7 +255,7 @@

BOBSPRITE COL

first to the last number in that range. As with SPRITEBOB COL, this function should only be used in low resolution.

-

COL

+

COL

function: test status of an object after collision detection
status=Col(number)

@@ -311,7 +311,7 @@

COL

individual "hostiles" and "friendlies". You simply check for a collision between each object with a BOB COL or SPRITE COL, then grab the number of the collision object with the COL function.

-

SET HARDCOL

+

SET HARDCOL

instruction: set hardware register for hardware Sprite collision detection
Set Hardcol bitmap1 ,bitmap2

@@ -326,7 +326,7 @@

SET HARDCOL

determines the comparison itself, setting bits zero to 5. Please refer to your hardware manual for a technical explanation of this register.

-

HARDCOL

+

HARDCOL

function: return collision status after a Set Hardcol instruction
c=Hardcol

@@ -346,7 +346,7 @@

Collisions with rectangular blocks

detection in computer games, as well as for setting up buttons, control panels and dialogue boxes.

-

RESERVE ZONE

+

RESERVE ZONE

instruction: RESERVE memory for a detection zone
Reserve Zone
Reserve Zone number

@@ -360,7 +360,7 @@

RESERVE ZONE

To erase all current zone definitions and restore the allocated memory to the main program, simply give the RESERVE ZONE command without any number parameter.

-

SET ZONE

+

SET ZONE

instruction: set a screen zone for testing
Set Zone number,x1 ,y1 To x2,y2

@@ -370,7 +370,7 @@

SET ZONE

command is followed by the number of the new zone, followed by its coordinates from top left to bottom right-hand corner.

-

ZONE

+

ZONE

function: return the zone number under specified screen coordinates
number=Zone(x,y)
number=Zone(screen number,x,y)

@@ -393,7 +393,7 @@

ZONE

-

HZONE

+

HZONE

function: return the zone number under the specified hardware coordinates
number=Hzone(x,y)
number=Hzone(screen number,x,y)

@@ -407,14 +407,14 @@

HZONE

X> N=Hzone(X Sprite(n),Y Sprite(n)) -

MOUSE ZONE

+

MOUSE ZONE

function: test if mouse pointer has entered a zone
number=Mouse Zone

This is a short reminder that the MOUSE ZONE function is used to check whether the mouse pointer has entered a zone, as outlined in Chapter 5.8.

-

RESET ZONE

+

RESET ZONE

instruction: erase screen zone
Reset Zone
Reset Zone number

diff --git a/07-05-iff-animation.html b/07-05-iff-animation.html index 0741212..640794a 100644 --- a/07-05-iff-animation.html +++ b/07-05-iff-animation.html @@ -163,7 +163,7 @@

Creating an IFF animation

Playing an IFF animation

-

IFF ANIM

+

IFF ANIM

instruction: play an animation file
Iff Anim "filename" To screen number
Iff Anim "filename" To screen number, times

@@ -204,7 +204,7 @@

Direct IFF animation

directly in your programs.

-

FRAME LOAD

+

FRAME LOAD

function: load frames into memory
frames=Frame Load(channel To bank/address)
frames=Frame Load(channel To bank/address,number of frames)

@@ -250,7 +250,7 @@

FRAME LOAD

Print "Number of frames in this file is ";N -

FRAME LENGTH

+

FRAME LENGTH

function: return the length of frames in bytes
size=Frame Length(channel)
size=Frame Length(channel,number of frames)

@@ -286,7 +286,7 @@

FRAME LENGTH

Print "Required memory for frame 1=";L -

FRAME PLAY

+

FRAME PLAY

function: play frames on screen
frame=Frame Play(bank/address,number)
frame=Frame Play(bank/address,number,screen)

@@ -347,7 +347,7 @@

FRAME PLAY

Loop -

FRAME SKIP

+

FRAME SKIP

function: skip past an animation frame
s=Frame Skip(bank/address)
s=Frame Skip(bank/address,number)

@@ -363,7 +363,7 @@

FRAME SKIP

This means that the animation will only re-commence when an identical frame is reached to the one currently being displayed.

-

FRAME PARAM

+

FRAME PARAM

function: return a parameter after playing a frame
p=Frame Param

@@ -394,11 +394,11 @@

IFF Masking

specific parts of the file that hold such items as the palette and the bit-maps only. The PICTURE function is used in conjunction with the MASK IFF function to achieve this.

-

PICTURE

+

PICTURE

function: return mask details of an IFF image
mask=Picture

-

MASK IFF

+

MASK IFF

instruction: mask IFF picture data
Mask Iff bit-map

@@ -427,11 +427,11 @@

Freezing the display

The following commands are equivalents to these two instructions, and also offer STOS compatibility.

-

FREEZE

+

FREEZE

instruction: freeze the display
Freeze

-

UNFREEZE

+

UNFREEZE

instruction: unfreeze the display
Unfreeze

diff --git a/07-06-amal.html b/07-06-amal.html index a184d9a..365be6a 100644 --- a/07-06-amal.html +++ b/07-06-amal.html @@ -170,7 +170,7 @@

Moving an Object

Animating an Object

-

Anim

+

Anim

AMAL instruction: animate an Object
Anim number,(image,delay)(image,delay) ..

@@ -205,7 +205,7 @@

Anim

Moving within AMAL programs

-

Jump

+

Jump

AMAL instruction: move to a label in AMAL program
Jump label

@@ -239,7 +239,7 @@

Jump

AMAL registers

-

Let

+

Let

AMAL instruction: assign a value to a register
Let register=expression

@@ -291,7 +291,7 @@

Logical decisions

You can trigger a Jump to a label as the result of a simple test performed in an AMAL program.

-

If

+

If

AMAL structure: perform a test
If test Jump label

@@ -439,7 +439,7 @@

Playing a complex movement path

featured in the latest video arcade game, your envy is at an end. AMAL allows you complete freedom to animate Objects through any sequence of movements imaginable.

-

PLay

+

PLay

AMAL instruction: create a movement path

PL

ay path

@@ -644,7 +644,7 @@

AMAL function list

Calling an AMAL program from AMOS Professional

-

AMAL

+

AMAL

instruction: call an AMAL program
Amal channel number,"instruction string"
Amal channel number,program number
@@ -705,7 +705,7 @@

Controlling update timings

and so it is unpredictable. This can generate jerky movement patterns for certain Objects. Fortunately, This problem can be solved very easily.

-

UPDATE EVERY

+

UPDATE EVERY

instruction: control update intervals
Update Every number

@@ -732,7 +732,7 @@

Assigning Objects to Channels

SYNCHRO OFF command, which is explained below. As a default, the 16 interrupt channels are assigned to the relevant Sprite numbers.

-

CHANNEL

+

CHANNEL

instruction: assign an Object to an AMAL channel
Channel number To Sprite number
Channel number To Bob number

@@ -814,7 +814,7 @@

Manipulating screens

size and generating rainbow effects.

-

CHANNEL

+

CHANNEL

instruction: manipulate a screen
Channel channel number To Screen Display screen number
Channel channel number To Screen Offset screen number
@@ -1057,7 +1057,7 @@

AMAL program control from AMOS Professional

re-activated by using the AMAL command again. By specifying an individual AMAL program number, only that program is stopped.

-

AMAL FREEZE

+

AMAL FREEZE

instruction: suspend AMAL programs
Amal Freeze
Amal Freeze number

@@ -1068,7 +1068,7 @@

AMAL FREEZE

AMAL FREEZE should be used to suspend AMAL before a command such as DIR is executed, otherwise timing problems may happen.

-

AMREG

+

AMREG

reserved variable: give value of AMAL register
register=Amreg(number)
register=Amreg(channel,number)
@@ -1096,7 +1096,7 @@

AMREG

Loop -

AMPLAY

+

AMPLAY

instruction: control animation produced by PLay
Amplay speed, direction
Amplay speed,direction start To end

@@ -1138,7 +1138,7 @@

AMPLAY

Amplay ,-1 3 To 6: Rem Stop movement on channels 3,4,5 and 6 -

CHANAN

+

CHANAN

function: test a channel for an active animation
value=Chanan(channel number) @@ -1157,7 +1157,7 @@

CHANAN

Print "Animation complete!" -

CHANMV

+

CHANMV

function: test channel for an active Object
value=Chanmv(channel number)

@@ -1186,7 +1186,7 @@

CHANMV

AMAL errors

-

AMALERR

+

AMALERR

function: give position of an AMAL error
position=Amalerr

@@ -1301,7 +1301,7 @@

Compatibility with STOS animation commands

Here is the entire STOS-compatible range of commands.

-

MOVE X

+

MOVE X

instruction: move a Sprite horizontally
Move X number,"(speed,step,count)... (speed,step,count)L"
Move X number,"(speed,step,count)Enumber"

@@ -1352,7 +1352,7 @@

MOVE X

E> Move X 1,"(1,-5,30)E100" -

MOVE Y

+

MOVE Y

instruction: move Object vertically
Move Y number,"(speed,step,count) ...(speed,step,count)"
Move Y number,"(speed,step,count) ...(speed,step,count)L"

@@ -1387,7 +1387,7 @@

MOVE Y

only that particular animation sequence will be activated. MOVE OFF has the opposite effect, halting all animations, or a single sequence specified by its number.

-

MOVON

+

MOVON

function: report movement status
value=Move On(Object number)

@@ -1398,7 +1398,7 @@

MOVON

generated by AMAL.

-

MOVE FREEZE

+

MOVE FREEZE

instruction: suspend Object movement
Move Freeze
Move Freeze number

@@ -1408,7 +1408,7 @@

MOVE FREEZE

animated using the MOVE ON command. If an optional Object number is given after MOVE FREEZE, then only that Object will be frozen.

-

ANIM

+

ANIM

instruction: animate an Object
Anim number"(image,delay) (image,delay)"
Anim number"(image,delay) (image,delay)L"

@@ -1451,7 +1451,7 @@

ANIM

sequences started by ANIM ON may be turned off by the ANIM OFF command.

-

ANIM FREEZE

+

ANIM FREEZE

instruction: freeze an animation
Anim Freeze
Anim Freeze number

diff --git a/07-07-icons-and-blocks.html b/07-07-icons-and-blocks.html index 9663154..3f4384e 100644 --- a/07-07-icons-and-blocks.html +++ b/07-07-icons-and-blocks.html @@ -58,7 +58,7 @@

Background screen graphics

Here is a complete list of the Icon commands.

-

GET ICON

+

GET ICON

instruction: create an Icon
Get Icon Icon number,x1,y1 To x2,y2
Get Icon screen number,lcon number,x1,y1 To x2,y2

@@ -75,7 +75,7 @@

GET ICON

this will select the screen to be used as the source of the Icon's image. If this screen number is omitted, the image is taken from the current screen.

-

GET ICON PALETTE

+

GET ICON PALETTE

instruction: load Icon colours into current screen
Get Icon Palette

@@ -88,7 +88,7 @@

GET ICON PALETTE

GET ICON PALETTE grabs the colours of the Icon images stored in Bank 2, and loads them in to the current screen.

-

PASTE ICON

+

PASTE ICON

instruction: draw an Icon
Paste Icon x,y,number

@@ -120,7 +120,7 @@

PASTE ICON

screen, and then the entire background may be copied to the physical screen, using SCREEN COPY, which is a much faster process.

-

DEL ICON

+

DEL ICON

instruction: delete Icons
Del Icon number
Del Icon first number To last number

@@ -130,7 +130,7 @@

DEL ICON

also be given, in which case, all Icons from the first number TO the second number will be deleted. When the final Icon in the bank has been deleted, the whole bank will be removed from memory.

-

INS ICON

+

INS ICON

instruction: insert a blank Icon image into the Icon bank
Ins Icon number
Ins Icon first To last

@@ -140,7 +140,7 @@

INS ICON

Chapter 7.2.

-

MAKE ICON MASK

+

MAKE ICON MASK

instruction: set colour zero to transparent
Make Icon Mask
Make Icon Mask number

@@ -153,7 +153,7 @@

MAKE ICON MASK

by this instruction, unless an optional Icon number is given, in which case only that Icon will be masked.

-

NO ICON MASK

+

NO ICON MASK

instruction: remove colour zero mask from Icon
No Icon Mask number

@@ -171,7 +171,7 @@

Screen blocks

graphics are displayed. They can be used to create "tiles" for all sorts of entertainment programs, such as visual puzzles, as well as practical programs like identi-kits and architectural planners.

-

GET BLOCK

+

GET BLOCK

instruction: grab a screen Block into memory
Get Block number,x,y,width,height
Get Block number,x,y,width,height,mask

@@ -187,7 +187,7 @@

GET BLOCK

will destroy and replace any graphics that used to occupy its position on screen. If the mask code is set to 1, the block is given a background mask, and colour zero becomes transparent.

-

PUT BLOCK

+

PUT BLOCK

instruction: copy Block onto screen
Put Block number
Put Block number,x,y
@@ -209,7 +209,7 @@

PUT BLOCK

these bit-planes can create numerous special effects, and various settings are dealt with at the beginning of Chapter 6.2.

-

DEL BLOCK

+

DEL BLOCK

instruction: delete a screen Block
Del Block
Del Block number

@@ -219,13 +219,13 @@

DEL BLOCK

used is returned to the main program automatically. If you only want to get rid of a single Block, follow the command with that Block's identification number.

-

HREV BLOCK

+

HREV BLOCK

instruction: flip a Block horizontally
Hrev Block number

This command reverses any numbered Block, by flipping it over its own horizontal axis.

-

VREV BLOCK

+

VREV BLOCK

instruction: flip a Block vertically
Vrev Block number

@@ -240,7 +240,7 @@

Compacted blocks

used for the following commands is designed for speed as opposed to efficiency. They save less memory than SPACK and PACK, but they are a lot faster!

-

GET CBLOCK

+

GET CBLOCK

instruction: save and compact a screen Block
Get Cblock number,x,y,width,height

@@ -255,7 +255,7 @@

GET CBLOCK

coordinate, and the width of the Block will be rounded to the nearest multiple of eight pixels.

-

PUT CBLOCK

+

PUT CBLOCK

instruction: display a compacted Block
Put Cblock number
Put Cblock number,x,y

@@ -266,7 +266,7 @@

PUT CBLOCK

drawn at the new position. Any new x-coordinate will also be rounded to the nearest 8-pixel boundary.

-

DEL CBLOCK

+

DEL CBLOCK

instruction: delete compacted Blocks
Del Cblock
Del Cblock number

diff --git a/08-01-music.html b/08-01-music.html index bc69e04..edc8799 100644 --- a/08-01-music.html +++ b/08-01-music.html @@ -66,7 +66,7 @@

Ready-made sound effects

Wait 50 : Boom -

SHOOT

+

SHOOT

instruction: generate percussive sound effect
Shoot

@@ -78,7 +78,7 @@

SHOOT

E> Shoot : Wait 25: Shoot : Print "Ouch!" -

BELL

+

BELL

instruction: generate pure tone
Bell
Bell pitch

@@ -214,12 +214,12 @@

Channels and voices

Playing notes

-

PLAY

+

PLAY

instruction: play a voice
Play pitch,delay
Play voice,pitch,delay

-

PLAY OFF

+

PLAY OFF

instruction: stop a voice playing
Play Off

@@ -274,7 +274,7 @@

Making waves

With AMOS Professional, the shape of a wave form is set using a list of 256 numbers, with each number representing the intensity of an individual section of the wave.

-

SET WAVE

+

SET WAVE

instruction: define a wave form
Set Wave number,shape$

@@ -355,7 +355,7 @@

SET WAVE

For N=10 To 60: Play N,10 : Next N -

WAVE

+

WAVE

instruction: assign a wave to sound channel
Wave number To voices

@@ -377,7 +377,7 @@

WAVE

Play 20,10 -

NOISE TO

+

NOISE TO

instruction: assign noise wave to sound channel
Noise To voices

@@ -393,7 +393,7 @@

NOISE TO

Play 30,0 -

SAMPLE

+

SAMPLE

instruction: assign a sample to the current wave
Sample number To voices

@@ -416,7 +416,7 @@

SAMPLE

The pitch values that can be applied to any particular sample will vary, but normally anything between 10 and 50 is satisfactory.

-

DEL WAVE

+

DEL WAVE

instruction: delete a wave
Del Wave number

@@ -439,7 +439,7 @@

Making audio envelopes

(sustain) and finally, the manner in which it meets its end (release). All of this is achieved simply by changing the volume of individual sections of the wave form.

-

SET ENVEL

+

SET ENVEL

instruction: create a volume envelope
Set Envel wave number,phase number To duration,volume

@@ -513,7 +513,7 @@

SET ENVEL

Amiga. When the LED filter is toggled off and on, this light is also turned off and on to indicate the status of the filter.

-

VUMETER

+

VUMETER

function: test volume of a voice
volume=Vumeter(voice)

diff --git a/08-02-samples.html b/08-02-samples.html index 7e3df69..ff4485e 100644 --- a/08-02-samples.html +++ b/08-02-samples.html @@ -107,7 +107,7 @@

Playing a sound sample

Sam Play 1,13,5000: Rem Higher Pitch -

SAM STOP

+

SAM STOP

instruction: stop one or more samples playing
Sam Stop
Sam Stop voices

@@ -137,7 +137,7 @@

Changing a sample bank

Digital sound samples are normally stored in memory bank 5, but there are no restrictions on assigning other banks to hold samples.

-

SAM BANK

+

SAM BANK

instruction: change the current sample bank
Sam Bank bank number

@@ -168,7 +168,7 @@

Playing a sample from memory

anywhere in the computer's memory using BLOAD, and then played with the following command:

-

SAM RAW

+

SAM RAW

instruction: play a raw sample from memory
Sam Raw voice,address,length,frequency

@@ -267,7 +267,7 @@

Double buffered sampling

  • The swapping system is then re-initialised by SAM SWAP, and the process continues.
  • -

    SLOAD

    +

    SLOAD

    instruction: load a section of a sample
    Sload channel number To address,length

    @@ -297,7 +297,7 @@

    SLOAD

    hard disc, Ram-disc or CD ROM will be fast enough to load samples, for use with the SAM SWAP command! This is explained below.

    -

    SSAVE

    +

    SSAVE

    instruction: save a data chunk anywhere into an existing file
    Ssave channel number, start To end

    @@ -306,7 +306,7 @@

    SSAVE

    you want to position the data within the file.

    -

    SAM SWAP

    +

    SAM SWAP

    instruction: activate sample-switching
    Sam Swap voices To address,length

    @@ -343,7 +343,7 @@

    SAM SWAP

    Sam Swap %0011,Start(6),20000 : Rem 20000 is the length of logical sample -

    SAM SWAPPED

    +

    SAM SWAPPED

    function: test for successful sample swap
    value=Sam Swapped(voice number)

    diff --git a/08-03-playing-music-modules.html b/08-03-playing-music-modules.html index 290bba9..12940b7 100644 --- a/08-03-playing-music-modules.html +++ b/08-03-playing-music-modules.html @@ -61,7 +61,7 @@

    Playing AMOS Professional music

    If you do not want your music to play through to the end, it can be halted in either of the two following ways.

    -

    MUSIC STOP

    +

    MUSIC STOP

    instruction: stop a single passage of music
    Music Stop

    @@ -69,7 +69,7 @@

    MUSIC STOP

    This instruction brings the current single passage of music to a halt. If there is any other active music held in the stack and waiting to be played, that music will begin to play at once.

    -

    MUSIC OFF

    +

    MUSIC OFF

    instruction: turn off all music
    Music Off

    @@ -78,7 +78,7 @@

    MUSIC OFF

    completely. After this command has been called, the sound track can only be re-started by executing a MUSIC command all over again.

    -

    MVOLUME

    +

    MVOLUME

    instruction: set the volume of a piece of music
    Mvolume level

    @@ -90,7 +90,7 @@

    MVOLUME

    Obviously, by setting up a simple loop, you can fade your music up or down.

    -

    TEMPO

    +

    TEMPO

    instruction: change the speed of a piece of music
    Tempo speed

    @@ -131,7 +131,7 @@

    Playing Tracker modules

    Professional VOLUME and TEMPO commands will have no effect on Tracker modules, which have their own built-in controls.

    -

    TRACK LOAD

    +

    TRACK LOAD

    instruction: load a Tracker module
    Track Load "modulename",bank number

    @@ -140,7 +140,7 @@

    TRACK LOAD

    choice. Any existing data in this bank will be erased before the module is loaded, and the new bank will be called "Tracker".

    -

    TRACK PLAY

    +

    TRACK PLAY

    instruction: play a Tracker module
    Track Play
    Track Play bank number,pattern number

    @@ -177,7 +177,7 @@

    TRACK PLAY

    Track Loop On -

    TRACK STOP

    +

    TRACK STOP

    instruction: stop all Tracker music
    Track Stop

    @@ -192,7 +192,7 @@

    Playing Med modules

    allocate unnecessary memory. Both "MMDO" and "MMD1" modules can be used for your programs.

    -

    MED LOAD

    +

    MED LOAD

    instruction: load a Med module
    Med Load "Module name",bank number

    @@ -211,7 +211,7 @@

    MED LOAD

    are active. When a sound effect is triggered, any Med music will be stopped on all four voices, and will start again as soon as the sample has been played.

    -

    MED PLAY

    +

    MED PLAY

    instruction: play a Med module
    Med Play
    Med Play bank number,song number

    @@ -228,7 +228,7 @@

    MED PLAY

    Med Play 2,2 -

    MED STOP

    +

    MED STOP

    instruction: stop the current Med module
    Med Stop

    @@ -236,7 +236,7 @@

    MED STOP

    This simple instruction halts the current Med song being played. The song can now be started from the beginning with a new call to MED PLAY, or continued using a MED CONT command.

    -

    MED CONT

    +

    MED CONT

    instruction: continue a Med module
    Med Cont

    @@ -244,7 +244,7 @@

    MED CONT

    This command is used to re-commence a Med module that has been halted by a MED STOP instruction. The song will continue from the exact point at which it was stopped.

    -

    MED MIDI ON

    +

    MED MIDI ON

    instruction: access MIDI instructions in a Med module
    Med Midi On

    diff --git a/09-01-amos-interface.html b/09-01-amos-interface.html index e2adf6e..4ffa412 100644 --- a/09-01-amos-interface.html +++ b/09-01-amos-interface.html @@ -361,7 +361,7 @@

    Resources

    Calling an AMOS Professional Interface program

    -

    DIALOG BOX

    +

    DIALOG BOX

    function: display dialogue box on screen
    button=Dialog Box(Interface$)
    button=Dialog Box(Interface$,value,parameter$,x,y)

    @@ -845,7 +845,7 @@

    Keyboard short-cuts

    Any of your buttons can be optionally assigned to an equivalent control-key combination from the keyboard.

    -

    KY

    +

    KY

    Interface instruction: set keyboard short-cut
    KY ascii,shift

    diff --git a/09-02-interface-language.html b/09-02-interface-language.html index cc2dfc2..9c9f67d 100644 --- a/09-02-interface-language.html +++ b/09-02-interface-language.html @@ -421,7 +421,7 @@

    Interface conditional tests

    Constructing a test facility inside the AMOS Professional Interface is relatively simple.

    -

    IF

    +

    IF

    Interface structure: Mark start of conditional test
    IF expression;[routine]

    @@ -511,7 +511,7 @@

    User-defined functions

    The Interface provides a method of arranging your user-defined instructions so that they behave exactly like the built-in graphics operations.

    -

    XY

    +

    XY

    Interface instruction: set graphics variables
    XY xa,ya,xb,yb

    diff --git a/09-03-advanced-control-panels.html b/09-03-advanced-control-panels.html index bcff10e..6bfac55 100644 --- a/09-03-advanced-control-panels.html +++ b/09-03-advanced-control-panels.html @@ -83,7 +83,7 @@

    Dialogue channels

    following function is used.

    -

    DIALOG RUN

    +

    DIALOG RUN

    function: run a dialogue box from an open channel
    button=DIALOG RUN(channel number)
    button=DIALOG RUN(channel number,label,x,y)

    @@ -133,7 +133,7 @@

    DIALOG RUN

    Dialog Close -

    DIALOG CLOSE

    +

    DIALOG CLOSE

    instruction: close one or more dialogue channels
    Dialog Close
    Dialog Close channel number

    @@ -214,7 +214,7 @@

    Testing an active zone

    Loop -

    RDIALOG

    +

    RDIALOG

    function: read the status of a zone or button
    button=RDIALOG(channel number,button number)
    button=RDIALOG(channel number,button number, object number)

    @@ -235,7 +235,7 @@

    RDIALOG

    checked in this way, a result of zero will given, and the RDIALOG$ function should be used instead. This is explained next.

    -

    RDIALOG$

    +

    RDIALOG$

    function: return text string entered into an edit zone
    text string=RDIALOG$(channel number,zone number)
    text string=RDIALOG$(channel number,zone number,object number)

    @@ -254,7 +254,7 @@

    Accessing a variable array

    directly from the main AMOS Professional program.

    -

    VDIALOG

    +

    VDIALOG

    function: assign or read an Interface string
    Vdialog(channel number,variable number)=value
    value=Vdialog(channel number,variable number)

    @@ -264,7 +264,7 @@

    VDIALOG

    The active channel number is selected, followed by the number of the variable you are interested in. The value refers to the new integer value that has been selected for this variable.

    -

    VDIALOG$

    +

    VDIALOG$

    function: assign or read an Interface value
    Vdialog$(channel number,variable number)=string$
    string$=Vdialog$(channel number,variable number)

    @@ -516,7 +516,7 @@

    Reading arrays

    from the AMOS Professional main program. A simple function is provided for transferring complete arrays into an Interface routine.

    -

    ARRAY

    +

    ARRAY

    function: load the address of an array into a program
    address=ARRAY(list$(0))

    @@ -864,7 +864,7 @@

    Controlling a selector from the main program

    -

    DIALOG FREEZE

    +

    DIALOG FREEZE

    instruction: stop dialogue channel input
    Dialog Freeze [channel number]

    @@ -873,7 +873,7 @@

    DIALOG FREEZE

    number of a single dialogue routine that is to be suspended is specified in square brackets. If this number is omitted all current channels will be frozen.

    -

    DIALOG UNFREEZE

    +

    DIALOG UNFREEZE

    instruction: re-activate a frozen dialogue channel
    Dialog Unfreeze [channel number]

    @@ -881,7 +881,7 @@

    DIALOG UNFREEZE

    Use this instruction to re-activate one or more dialogue channels from the point at which they were frozen.

    -

    DIALOG CLR

    +

    DIALOG CLR

    instruction: clear a dialogue box
    Dialog Clr channel number

    diff --git a/09-04-interface-resources.html b/09-04-interface-resources.html index 6334aaf..97166ce 100644 --- a/09-04-interface-resources.html +++ b/09-04-interface-resources.html @@ -187,7 +187,7 @@

    The Resource commands

    Here is a full explanation of the additional AMOS Professional instructions and functions that can be used to exploit the Resource Bank.

    -

    RESOURCE BANK

    +

    RESOURCE BANK

    instruction: select a bank to be used for resources
    Resource Bank number

    @@ -203,7 +203,7 @@

    RESOURCE BANK

    Resource Bank 16: Rem Set resources to Bank 16 -

    RESOURCE$

    +

    RESOURCE$

    function: read a message from the Resource Bank
    message=Resource$(message number)

    @@ -239,7 +239,7 @@

    RESOURCE$

    -2045 to -2049 Editor system files -

    RESOURCE SCREEN OPEN

    +

    RESOURCE SCREEN OPEN

    instruction: open a screen using the resource settings
    Resource Screen Open number,width,height,flash

    @@ -263,7 +263,7 @@

    RESOURCE SCREEN OPEN

    E> Resource Screen Open 0,640,200,2 -

    RESOURCE UNPACK

    +

    RESOURCE UNPACK

    instruction: unpack an image from the Resource Bank
    Resource Unpack number,x,y

    diff --git a/10-01-using-the-keyboard.html b/10-01-using-the-keyboard.html index 4253863..ff24b00 100644 --- a/10-01-using-the-keyboard.html +++ b/10-01-using-the-keyboard.html @@ -73,7 +73,7 @@

    Checking for a key-press

    character with a value of zero will be returned. When this happens, the internal "scan codes" of these keys can be found.

    -

    SCANCODE

    +

    SCANCODE

    function: return the scancode of a key entered with INKEY$
    s=Scancode

    @@ -93,7 +93,7 @@

    SCANCODE

    Loop -

    SCANSHIFT

    +

    SCANSHIFT

    function: return shift status of key entered with INKEY$
    s=Scanshift

    @@ -121,7 +121,7 @@

    SCANSHIFT

    Loop -

    KEY STATE

    +

    KEY STATE

    function: test for a specific key press
    k=Key State(scan code)

    @@ -138,7 +138,7 @@

    KEY STATE

    -

    KEY SHIFT

    +

    KEY SHIFT

    function: test the status of control keys
    bitmap=Key Shift

    @@ -177,7 +177,7 @@

    KEY SHIFT

    These keys can also be used when setting up macro definitions, using the SCAN$ and KEY$ functions, and this is explained below.

    -

    CLEAR KEY

    +

    CLEAR KEY

    instruction: re-set the keyboard buffer
    Clear Key

    @@ -195,7 +195,7 @@

    CLEAR KEY

    Keyboard inputs

    -

    WAIT KEY

    +

    WAIT KEY

    instruction: wait for a key-press
    Wait Key

    @@ -205,7 +205,7 @@

    WAIT KEY

    E> Print "Please press a key" : Wait key : Print "Thank you!"

    -

    INPUT$

    +

    INPUT$

    function: anticipate a number of characters to input into a string
    v$=Input$(number)

    @@ -223,7 +223,7 @@

    INPUT$

    There is another version of INPUT$ which operates with a number of characters from a disc. Please see Chapter 10.2 for details.

    -

    INPUT

    +

    INPUT

    instruction: load a value into a variable
    Input variables;
    Input "Prompt string";variables;

    @@ -262,7 +262,7 @@

    INPUT

    Locate 23, : Print "Hello ";Name$ -

    LINE INPUT

    +

    LINE INPUT

    instruction: input a list of variables separated by [Return]
    Line Input variables;
    Line Input "Prompt string";variables;

    @@ -276,7 +276,7 @@

    LINE INPUT

    Print A,B,C -

    PUT KEY

    +

    PUT KEY

    instruction:load a string into the keyboard buffer
    Put Key a$

    @@ -313,7 +313,7 @@

    Keyboard Macros

    the powerful KEY$ reserved variable.

    -

    KEY$

    +

    KEY$

    reserved variable: define a keyboard macro
    Key$(number)=command$
    command$=Key$(number)

    @@ -340,7 +340,7 @@

    KEY$

    appropriate scan-code can be included in a macro definition. This is achieved by using the SCAN$ function, explained next.

    -

    SCAN$

    +

    SCAN$

    function: return a scan-code for use with Key$
    x$=Scan$(scan-code)
    x$=Scan$(scan-code,mask)

    @@ -359,7 +359,7 @@

    Improving your typing skills

    formatted, even if upper and lower case is sometimes confused and spacings are not quite perfect. But even the most experienced programmer can be fumble-fingered at times.

    -

    KEY SPEED

    +

    KEY SPEED

    instruction: change key repeat speed.
    Key Speed time-lag,delay-speed

    diff --git a/10-02-disc-access.html b/10-02-disc-access.html index 333bec8..494035c 100644 --- a/10-02-disc-access.html +++ b/10-02-disc-access.html @@ -123,7 +123,7 @@

    Files and directories

    listing, you may be presented with a system requester. The simple solution is to re-insert the requested disc and try again.

    -

    DIR/W

    +

    DIR/W

    instruction: print out directory in two columns
    Dir/W
    Dir paths$ /W

    @@ -242,7 +242,7 @@

    DIR/W

    These two commands are used in exactly the same way as DIR and DIR/W, as explained above, and they list the directory of the current disc to a printer.

    -

    SET DIR

    +

    SET DIR

    instruction: set directory style
    Set Dir number
    Set Dir number,filter$

    @@ -302,7 +302,7 @@

    SET DIR

    D> Set Dir 8,"*.AMOS/*.IFF/*.Abk" -

    DIR$

    +

    DIR$

    function: change the current directory
    s$=Dir$
    Dir$=s$

    @@ -328,7 +328,7 @@

    DIR$

    D> Dir$="Df0:IFF/" -

    PARENT

    +

    PARENT

    instruction: negotiate a path through current directory
    Parent

    @@ -359,7 +359,7 @@

    PARENT

    Dir -

    ASSIGN

    +

    ASSIGN

    instruction: assign a name to a file or device
    Assign "Name:" To "New_Pathname"
    Assign "Name:" To "Device"

    @@ -378,7 +378,7 @@

    Checking for the existence of a file

    the other hand, you may be normal. AMOS Professional provides three, ways to check for elusive files.

    -

    EXIST

    +

    EXIST

    function: check if specified file exists
    value=Exist("filename")

    @@ -406,7 +406,7 @@

    EXIST

    -

    DIR FIRST$

    +

    DIR FIRST$

    function: get first file that satisfies current path name
    file$=Dir First$(path$)

    @@ -426,7 +426,7 @@

    DIR FIRST$

    continue to discover the name of the next file in the current directory with the following function.

    -

    DIR NEXT$

    +

    DIR NEXT$

    function: get next file that satisfies current path
    file$=Dir Next$

    @@ -449,7 +449,7 @@

    DIR NEXT$

    Selecting a file

    -

    FSEL$

    +

    FSEL$

    function: select a file
    f$=Fsel$(path$)
    f$=Fsel$(path$,default$,title1$,title2$)

    @@ -489,7 +489,7 @@

    Naming files

    To create a new folder that can be used to hold files of data, a suitable disc should be ready in the appropriate drive.

    -

    MKDIR

    +

    MKDIR

    instruction: create a folder
    Mkdir filename$

    @@ -502,7 +502,7 @@

    MKDIR

    Dir -

    RENAME

    +

    RENAME

    instruction: rename a file
    Rename oldname$ To newname$

    @@ -518,7 +518,7 @@

    RENAME

    Running programs from a disc

    -

    RUN

    +

    RUN

    instruction: execute an AMOS Professional program
    Run
    Run file$

    @@ -551,7 +551,7 @@

    RUN

    In fact, AMOS Professional does allow you to pass variable data from one program to another, by making use of "Command Lines".

    -

    COMMAND LINE$

    +

    COMMAND LINE$

    reserved variable: transfer parameters between programs
    c$=Command Lines$

    @@ -600,7 +600,7 @@

    COMMAND LINE$

    Disc space

    -

    DFREE

    +

    DFREE

    function: report free space on disc
    f=Dfree

    @@ -608,7 +608,7 @@

    DFREE

    This simple function returns the amount of free space remaining on the current disc, measured in bytes.

    -

    DISC INFO$

    +

    DISC INFO$

    function: report free space of a named device
    information$=Disc Info$("Name")

    @@ -627,7 +627,7 @@

    DISC INFO$

    Print "Free space=";D -

    KILL

    +

    KILL

    instruction: erase a file from current disc
    Kill filename$

    @@ -691,7 +691,7 @@

    Sequential files

    accessed, then the file must be closed. Those three steps must be done in exactly that order. Here is the list of commands you can use for handling sequential files.

    -

    OPEN OUT

    +

    OPEN OUT

    instruction: open a file for output
    Open Out channel,filename$

    @@ -699,7 +699,7 @@

    OPEN OUT

    Use this command to open a sequential file, ready for data to be added to its end. Give the channel number and filename, as explained above. If the file already exists, it will be erased.

    -

    APPEND

    +

    APPEND

    instruction: add data to an existing file
    Append channel,filename$

    @@ -708,7 +708,7 @@

    APPEND

    been defined. If the filename already exists, your new data will be appended to it, in other words it will be added to the end of that file.

    -

    OPEN IN

    +

    OPEN IN

    instruction: open a file for input
    Open In channel,filename$

    @@ -717,7 +717,7 @@

    OPEN IN

    does not already exist, AMOS Professional will report a "File not found" error.

    -

    CLOSE

    +

    CLOSE

    instruction: close a file
    Close file number

    @@ -777,7 +777,7 @@

    CLOSE

    used in normal written English will be treated as separators by the INPUT # structure.

    -

    SET INPUT

    +

    SET INPUT

    instruction: set end-of-line characters
    Set Input code1,code2

    @@ -806,7 +806,7 @@

    SET INPUT

    Use this function to input a set number of characters from a device or file. The parameters in brackets refer to the filename or device, followed by the count of characters to be input.

    -

    EOF

    +

    EOF

    function: test for end of file
    flag=Eof(channel)

    @@ -814,7 +814,7 @@

    EOF

    This tests to see if the end of a file has been reached at the current reading position, returning -1 for yes and 0 if this has not happened.

    -

    LOF

    +

    LOF

    function: give length of an open file
    length=Lof(channel)

    @@ -822,7 +822,7 @@

    LOF

    LOF returns the length of an open file, and it would be pointless to use this function with devices other than the current disc.

    -

    POF

    +

    POF

    reserved variable: hold current position of file pointer
    position=Pof(channel)

    @@ -871,7 +871,7 @@

    Random access files

    using the following commands.

    -

    OPEN RANDOM

    +

    OPEN RANDOM

    instruction: open a channel to a random access file
    Open Random channel,filename$

    @@ -906,7 +906,7 @@

    OPEN RANDOM

    TEL$="0625859333" -

    PUT

    +

    PUT

    instruction: output a record to a random access file
    Put channel,record number

    @@ -940,7 +940,7 @@

    PUT

    Having created your phone book, you will want to use it.

    -

    GET

    +

    GET

    instruction: read a record from a random access file
    Get channel,record number

    @@ -984,7 +984,7 @@

    Included files

    To assist the editing of lengthy programs in assembly language or C, an Include facility is provided. AMOS Professional programmers can enjoy exactly the same benefit!

    -

    INCLUDE

    +

    INCLUDE

    instruction: specify a file for inclusion when testing a program
    Include "File_To_Include.AMOS"

    diff --git a/10-03-accessing-a-printer.html b/10-03-accessing-a-printer.html index e1cd086..e44a7a3 100644 --- a/10-03-accessing-a-printer.html +++ b/10-03-accessing-a-printer.html @@ -67,7 +67,7 @@

    The printer device

    This command opens the printer device using your current preferences.

    -

    PRINTER CLOSE

    +

    PRINTER CLOSE

    instruction: close printer port
    Printer Close

    @@ -78,7 +78,7 @@

    PRINTER CLOSE

    program has requested the printer device during multi-tasking, as explained above. Secondly, if the system becomes short of memory and requires more.

    -

    PRINTER SEND

    +

    PRINTER SEND

    instruction: send a string to the printer
    Printer Send text$

    @@ -199,7 +199,7 @@

    Screen dumps

    There are three alternative ways of using the PRINTER DUMP command to perform a screen dump.

    -

    PRINTER DUMP

    +

    PRINTER DUMP

    instruction: print the contents of an AMOS Professional screen
    Printer Dump
    Printer Dump x1 ,y1 To x2,y2
    @@ -307,7 +307,7 @@

    PRINTER DUMP

    Other printer commands

    -

    PRINTER OUT

    +

    PRINTER OUT

    instruction: print data from an address
    Printer Out address,length

    @@ -329,7 +329,7 @@

    PRINTER OUT

    Similarly to PRINTER SEND, it must be ensured that data remains unchanged during the printing process, otherwise the resultant print-out will become corrupted.

    -

    PRINTER ABORT

    +

    PRINTER ABORT

    instruction: stop a printer operation
    Printer Abort

    @@ -337,7 +337,7 @@

    PRINTER ABORT

    This command halts the current printing operation. If your printer device has a large memory buffer, there may be a delay before the printing ceases.

    -

    PRINTER CHECK

    +

    PRINTER CHECK

    function: return the status of the printer
    status=Printer Check

    @@ -346,7 +346,7 @@

    PRINTER CHECK

    is available for use, or zero (False) if it is in active mid-operation.

    -

    PRINTER ONLINE

    +

    PRINTER ONLINE

    function: report if printer is on-line
    status=Printer Online

    @@ -355,7 +355,7 @@

    PRINTER ONLINE

    for use. It returns a value of -1 (True) if the printer is on-line, otherwise zero (False) will be given. This function only works with parallel printer devices.

    -

    PRINTER ERROR

    +

    PRINTER ERROR

    function: check for an error in printing operation
    status=Printer Error

    @@ -363,7 +363,7 @@

    PRINTER ERROR

    Use this function to check if the current printing operation is proceeding normally. A value of zero suggests that all is well, but any other value indicates an error.

    -

    PRINTER BASE

    +

    PRINTER BASE

    function: get the address of printer base
    address=Printer Base

    @@ -385,7 +385,7 @@

    Other ports and devices

    features of the Amiga is dealt with in Chapter 11.5. This Chapter ends with a general instruction and function for dealing with ports.

    -

    OPEN PORT

    +

    OPEN PORT

    instruction: open a channel to an 10 port
    Open Port channel number,"PAR:"
    Open Port channel number,"SER:"
    @@ -408,7 +408,7 @@

    OPEN PORT

    Close 1 -

    PORT

    +

    PORT

    function: test readiness of device
    value=Port(channel number)

    diff --git a/10-04-accessing-a-serial-port.html b/10-04-accessing-a-serial-port.html index e2793e9..0e9c35b 100644 --- a/10-04-accessing-a-serial-port.html +++ b/10-04-accessing-a-serial-port.html @@ -94,7 +94,7 @@

    Opening the Serial Port

    When the SERIAL OPEN command is called for the first time, the Serial Device library is loaded from the System disc automatically, so make sure that this disc is available in the current drive.

    -

    SERIAL CLOSE

    +

    SERIAL CLOSE

    instruction: close one or more Serial channels
    Serial Close
    Serial Close Channel number

    @@ -124,7 +124,7 @@

    Setting the serial parameters

    These settings can be changed using the instructions that are explained next.

    -

    SERIAL SPEED

    +

    SERIAL SPEED

    instruction: set transfer rate for a serial channel
    Serial Speed Channel number,Baud rate

    @@ -133,7 +133,7 @@

    SERIAL SPEED

    and receiving operations. A Baud rate cannot be split for a. single channel. If the specified transfer rate is not supported by the current serial device, it may be rejected by the system.

    -

    SERIAL BITS

    +

    SERIAL BITS

    instruction: set the number of bits for transmission of characters
    Serial Bits Channel number,number of bits,number of Stop bits

    @@ -142,7 +142,7 @@

    SERIAL BITS

    transmitted. After the channel number is specified, give the number of bits followed by the number of Stop bits to be used.

    -

    SERIAL PARITY

    +

    SERIAL PARITY

    instruction: set parity checking for a serial channel
    Serial Parity Channel number, Parity

    @@ -170,7 +170,7 @@

    SERIAL PARITY

    Serial Parity 1,P : Rem Set parity using the value in P -

    SERIAL X

    +

    SERIAL X

    instruction: set handshaking system of serial channel
    Serial X Channel number,Xmode

    @@ -188,7 +188,7 @@

    SERIAL X

    Sending and receiving Serial information

    -

    SERIAL SEND

    +

    SERIAL SEND

    instruction: output a string via a serial channel
    Serial Send Channel number,string

    @@ -198,7 +198,7 @@

    SERIAL SEND

    function must be used to detect when the transmission of data has been completed, and this is explained below.

    -

    SERIAL OUT

    +

    SERIAL OUT

    instruction: output a block of raw data via a serial channel
    Serial Out Channel number,address,length

    @@ -207,7 +207,7 @@

    SERIAL OUT

    instead of a string. Specify the channel number as usual, followed by the address in memory of the data to be transmitted, and the length of the data given in the number of bytes to be sent.

    -

    SERIAL GET

    +

    SERIAL GET

    function: get a byte from a serial device
    value=Serial Get(Channel number)

    @@ -217,7 +217,7 @@

    SERIAL GET

    a value of -1 will be returned.

    -

    SERIAL INPUT$

    +

    SERIAL INPUT$

    function: get a string from the Serial Port
    string=Serial Input$(Channel number)

    @@ -250,7 +250,7 @@

    SERIAL INPUT$

    Other Serial commands

    -

    SERIAL BUF

    +

    SERIAL BUF

    instruction: set the size of the serial buffer
    Serial Buffer Channel number,length

    @@ -259,7 +259,7 @@

    SERIAL BUF

    bytes to be allocated. The minimum allocation is 64 bytes, and the default setting is 512 bytes. You are recommended to increase the buffersize for high speed transfers of data.

    -

    SERIAL FAST

    +

    SERIAL FAST

    instruction: engage fast mode for data transfer
    Serial Fast Channel number

    @@ -269,7 +269,7 @@

    SERIAL FAST

    recommended for high speed transfers. Please note that when SERIAL FAST is called, the protocol is changed to: even parity, no XON/XOFF and 8 bits.

    -

    SERIAL SLOW

    +

    SERIAL SLOW

    instruction: re-set slow mode for data transfer
    Serial Slow Channel number

    @@ -278,7 +278,7 @@

    SERIAL SLOW

    error checks are enabled once more.

    -

    SERIAL CHECK

    +

    SERIAL CHECK

    function: report current serial device activity
    status=Serial Check(Channel number)

    @@ -288,7 +288,7 @@

    SERIAL CHECK

    been sent. If a value of zero (False) is returned, the last Serial command is still being executed. If the value is -1 (True) the transmission has been completed.

    -

    SERIAL STATUS

    +

    SERIAL STATUS

    function: report status of the serial port
    bit-map=Serial Status(channel number)

    @@ -322,7 +322,7 @@

    SERIAL STATUS

    15 - Reserved -

    SERIAL ERROR

    +

    SERIAL ERROR

    function: report success of the last data transfer
    status=Serial Error(Channel number)

    @@ -332,7 +332,7 @@

    SERIAL ERROR

    that there was an error in the last transmission.

    -

    SERIAL ABORT

    +

    SERIAL ABORT

    instruction: stop current data transfer
    Serial Abort(channel number)

    @@ -341,7 +341,7 @@

    SERIAL ABORT

    SERIAL OUT command, and leaves the channel clear. It allows an instant quit from a transfer, without the need to wait for current activities to be completed.

    -

    SERIAL BASE

    +

    SERIAL BASE

    function: get the address of the serial base
    address=Serial Base

    diff --git a/10-05-the-parallel-port.html b/10-05-the-parallel-port.html index 6820783..126faf5 100644 --- a/10-05-the-parallel-port.html +++ b/10-05-the-parallel-port.html @@ -46,7 +46,7 @@

    The Parallel Port

    There are few disadvantages, although control over sequence conversion is not possible, and screen dumps cannot be made via the Parallel Port.

    -

    PARALLEL OPEN

    +

    PARALLEL OPEN

    instruction: open the Parallel Port for reading or writing
    Parallel Open

    @@ -56,13 +56,13 @@

    PARALLEL OPEN

    loaded into memory. If it is not available, you will be prompted to insert the relevant disc automatically.

    -

    PARALLEL CLOSE

    +

    PARALLEL CLOSE

    instruction: close the parallel port
    Parallel Close

    This command simply closes the Parallel port.

    -

    PARALLEL SEND

    +

    PARALLEL SEND

    instruction: send a string of characters to the Parallel Port
    Parallel Send text$

    @@ -81,7 +81,7 @@

    PARALLEL SEND

    -

    PARALLEL OUT

    +

    PARALLEL OUT

    instruction: send data from memory to the Parallel Port
    Parallel Out address,length

    @@ -89,7 +89,7 @@

    PARALLEL OUT

    This instruction is similar to the PRINTER OUT command, and transmits the specified number of characters defined by the length parameter, starting from a given address.

    -

    PARALLEL INPUT$

    +

    PARALLEL INPUT$

    function: read a string from the Parallel Port
    text$=Parallel Input$(length[,stop])

    @@ -109,7 +109,7 @@

    PARALLEL INPUT$

    If you intend to devise a communications protocol using the Parallel Port, then the first item to send should be the total number of bytes to be transmitted!

    -

    PARALLEL ABORT

    +

    PARALLEL ABORT

    instruction: stop a parallel operation
    Parallel Abort

    @@ -118,7 +118,7 @@

    PARALLEL ABORT

    transmitting any additional information via the Parallel Port. Any characters that are currently in transit will be completely lost.

    -

    PARALLEL CHECK

    +

    PARALLEL CHECK

    function: report the availability of the Parallel Port
    value=Parallel Check

    @@ -127,7 +127,7 @@

    PARALLEL CHECK

    is returned by either a value of zero (False) if it is not available, or -1 (True) if the port is ready for use.

    -

    PARALLEL ERROR

    +

    PARALLEL ERROR

    function: check for an error in transmission via the Parallel Port
    value=Parallel Error

    @@ -139,7 +139,7 @@

    PARALLEL ERROR

    A value of zero is returned all the time that everything is proceeding normally, but any other value indicates a problem in the current transmission operation.

    -

    PARALLEL STATUS

    +

    PARALLEL STATUS

    function: return the current status of the Parallel Port
    status=Parallel Status

    @@ -155,7 +155,7 @@

    PARALLEL STATUS

    3 Direction of transmission (0=read, 1=write) -

    PARALLEL BASE

    +

    PARALLEL BASE

    function: get the base address of the Parallel Port
    address=Parallel Base

    diff --git a/10-06-arexx.html b/10-06-arexx.html index 9f808c0..c363dce 100644 --- a/10-06-arexx.html +++ b/10-06-arexx.html @@ -134,7 +134,7 @@

    AREXX-Compatible Instructions

    possible problems, and if it is already opened, an error will be generated and the program aborted.

    -

    AREXX CLOSE

    +

    AREXX CLOSE

    instruction: close a communications port
    Arexx Close

    @@ -145,7 +145,7 @@

    AREXX CLOSE

    be closed with an error code of 20, which is fatal! Please see below, for a further explanation of these error code values

    . -

    AREXX EXIST

    +

    AREXX EXIST

    function: check availability of a communications port
    value=Arexx Exist("PORT_NAME")

    @@ -169,7 +169,7 @@

    AREXX EXIST

    Endif -

    AREXX WAIT

    +

    AREXX WAIT

    instruction: wait for a message from an AREXX program
    Arexx Wait

    @@ -178,7 +178,7 @@

    AREXX WAIT

    program. This operation can be aborted at any time as usual, by pressing [Ctrl]+[C] to return to the AMOS Professional Editor.

    -

    AREXX

    +

    AREXX

    function: check for a message from an AREXX program
    status=Arexx

    @@ -204,7 +204,7 @@

    AREXX

    Loop -

    AREXX$

    +

    AREXX$

    function: get a message from an AREXX program
    message$=Arexx$(message number)

    @@ -216,7 +216,7 @@

    AREXX$

    The number refers to the number of the message you wish to read, ranging from zero to 15. If it is not included, an empty string will be returned.

    -

    AREXX ANSWER

    +

    AREXX ANSWER

    instruction: answer a message from an AREXX program
    Arexx Answer error value
    Arexx Answer error value,return$

    diff --git a/11-01-fonts.html b/11-01-fonts.html index 3cf5fb9..acecbf1 100644 --- a/11-01-fonts.html +++ b/11-01-fonts.html @@ -92,7 +92,7 @@

    ROM Fonts

    -

    GET DISC FONTS

    +

    GET DISC FONTS

    instruction: create a list of available fonts from current disc
    Get Disc Fonts

    @@ -101,7 +101,7 @@

    GET DISC FONTS

    through the "Fonts" folder of your current disc only. If new fonts are to be used, then they must first be copied into this folder.

    -

    GET ROM FONTS

    +

    GET ROM FONTS

    instruction: create a list of available ROM fonts
    Get Rom Fonts

    @@ -118,7 +118,7 @@

    GET ROM FONTS

    Next A -

    FONT$

    +

    FONT$

    function: return details of available fonts
    report$=Font$(font number)

    @@ -133,7 +133,7 @@

    FONT$

    Print Font$(2) -

    SET FONT

    +

    SET FONT

    instruction: select font for use by Text command
    Set Font font number

    @@ -147,7 +147,7 @@

    SET FONT

    -

    TEXT

    +

    TEXT

    instruction: print graphical text
    Text x,y,text$

    @@ -164,7 +164,7 @@

    TEXT

    Loop -

    TEXT BASE

    +

    TEXT BASE

    function: return the text base of the current character set
    baseline=Text base

    @@ -173,7 +173,7 @@

    TEXT BASE

    number of pixels between the top of the character, and the point that it will be printed on the screen. It is similar to the hot-spot of an Object.

    -

    TEXT LENGTH

    +

    TEXT LENGTH

    function: return the length of a section of graphical text
    width=Text Length(text$)

    diff --git a/11-02-speech.html b/11-02-speech.html index 167fb06..6ce04cf 100644 --- a/11-02-speech.html +++ b/11-02-speech.html @@ -80,7 +80,7 @@

    Synthetic speech

    by adding spaces at the end of a sentence, or using phonetic spellings. As always, you cannot do any harm by experimenting.

    -

    SET TALK

    +

    SET TALK

    instruction: set style of speech
    Set Talk sex,mode,pitch,rate

    @@ -116,7 +116,7 @@

    SET TALK

    Set Talk 0,,155,70 : Say "Hello, John Major speaking" -

    TALK MISC

    +

    TALK MISC

    instruction: set volume and frequency for speech
    Talk Misc volume,frequency

    @@ -141,7 +141,7 @@

    TALK MISC

    Next V -

    TALK STOP

    +

    TALK STOP

    instruction: stop speech in multitask mode
    Talk Stop

    @@ -158,7 +158,7 @@

    The narrator Mouth

    which can be displayed in multitask mode only. The MOUTH functions are used to govern the shape and movement of an animated mouth on screen, as follows:

    -

    MOUTH WIDTH

    +

    MOUTH WIDTH

    function: return the width of animated mouth
    width=Mouth Width

    @@ -166,7 +166,7 @@

    MOUTH WIDTH

    MOUTH WIDTH reports the width of the mouth at any instant, in pixels. This function will return a negative value if the current speech has finished.

    -

    MOUTH HEIGHT

    +

    MOUTH HEIGHT

    function: return the height of animated mouth
    height=Mouth Height

    @@ -174,7 +174,7 @@

    MOUTH HEIGHT

    Similarly to MOUTH WIDTH, a negative value is returned if the speech is over, otherwise the current height of the mouth is given in pixels.

    -

    MOUTH READ

    +

    MOUTH READ

    function: read position of animated mouth
    position=Mouth Read

    diff --git a/11-04-multi-tasking.html b/11-04-multi-tasking.html index aeb8f23..0a1ef5e 100644 --- a/11-04-multi-tasking.html +++ b/11-04-multi-tasking.html @@ -57,7 +57,7 @@

    Multi-Tasking

    The following simple commands are provided to allow complete control over multi-tasking facilities.

    -

    AMOS TO BACK

    +

    AMOS TO BACK

    instruction: hide AMOS Professional and reveal the Workbench
    Amos To Back

    @@ -65,7 +65,7 @@

    AMOS TO BACK

    This instruction allows other programs to be accessed, by bringing forward the Workbench display and hiding AMOS Professional from view.

    -

    AMOS TO FRONT

    +

    AMOS TO FRONT

    instruction: hide the Workbench and reveal AMOS Professional
    Amos To Front

    @@ -73,7 +73,7 @@

    AMOS TO FRONT

    Similarly, this instruction forces AMOS Professional back onto the display, leaving the Workbench environment hidden.

    -

    AMOS LOCK

    +

    AMOS LOCK

    instruction: disable [Amiga]+[A] toggle
    Amos Lock

    @@ -83,7 +83,7 @@

    AMOS LOCK

    how your program was written!

    -

    AMOS UNLOCK

    +

    AMOS UNLOCK

    instruction: re-activate toggle between AMOS Professional and Workbench
    Amos Unlock

    @@ -91,7 +91,7 @@

    AMOS UNLOCK

    Use this instruction to restore the facility for flipping between AMOS Professional and the Workbench, via the [Amiga]+[A] keys.

    -

    AMOS HERE

    +

    AMOS HERE

    function: report if AMOS Professional is currently at the front of the display
    status=Amos Here

    @@ -107,7 +107,7 @@

    Communication between programs

    As well as multi-tasking between AMOS Professional and other programs, communication is allowed between different AMOS Professional programs previously installed in memory.

    -

    PRUN

    +

    PRUN

    instruction: run a program from memory
    Prun "program name"

    @@ -187,7 +187,7 @@

    PRUN

    about the display after running another program with PRUN, you should also close all of the screens, and then call the main screen initialisation of your original program again.

    -

    PRG UNDER

    +

    PRG UNDER

    function: report the availability of a program "under" the current program
    status=Prg Under

    @@ -210,7 +210,7 @@

    PRG UNDER

    case, memory banks can be grabbed, but remote editor commands cannot be sent.

    -

    EXEC

    +

    EXEC

    instruction: send a CLI command to a device
    Exec "CLI Command","Output"

    @@ -238,7 +238,7 @@

    EXEC

    Amos To Front : Rem Return to AMOS Pro after the program -

    PRG STATE

    +

    PRG STATE

    function: return the status of how the current program was originally run
    status=Prg State

    diff --git a/11-05-libraries-and-devices.html b/11-05-libraries-and-devices.html index b028793..c736cab 100644 --- a/11-05-libraries-and-devices.html +++ b/11-05-libraries-and-devices.html @@ -68,7 +68,7 @@

    Accessing the system libraries

    format. Lastly, the minimum version number of the library that is to be installed in memory should be specified. If you are unsure of this parameter, use a value of zero.

    -

    LIB CLOSE

    +

    LIB CLOSE

    instruction: close one or all currently open libraries
    Lib Close
    Lib Close channel number

    @@ -78,7 +78,7 @@

    LIB CLOSE

    optional Channel number is included, an individual library may be closed. Please note that if a selected library does not exist, no error will be reported!

    -

    LIB CALL

    +

    LIB CALL

    function: call a function from a library
    result=Lib Call(channel number,function offset)

    @@ -105,7 +105,7 @@

    LIB CALL

    immediate use from the AREG and DREG variables. Note that AREG only allows the registers from A0 to A3 to be accessed. (Registers A4, A5 and A6 are not used by the libraries at all.)

    -

    LIB BASE

    +

    LIB BASE

    function: get the base address of the library
    address=Lib Base(channel number)

    @@ -114,7 +114,7 @@

    LIB BASE

    conjunction with the STRUC function to manipulate the internal data structures directly. Obviously, the normal PEEK and POKE functions can be used for this purpose as well.

    -

    DOSCALL

    +

    DOSCALL

    function: execute function from DOS library
    result=Doscall(function offset)

    @@ -131,7 +131,7 @@

    DOSCALL

    command has been executed, the result will be given as the return value in D0. Please note that the contents of the other registers will not be loaded back into AREG and DREG.

    -

    EXECALL

    +

    EXECALL

    function: call EXEC library
    result=Execall(function offset)

    @@ -141,7 +141,7 @@

    EXECALL

    function. A value is returned holding the contents of D0.

    -

    GFXCALL

    +

    GFXCALL

    function: call Graphics library
    result=Gfxcall(function offset)

    @@ -150,7 +150,7 @@

    GFXCALL

    DREG and AREG arrays. The function offset parameter enters the offset to the function you wish to call, and can also be set using the LVO function, if required.

    -

    INTCALL

    +

    INTCALL

    function: call Intuition library
    result=Intcall(function offset)

    @@ -185,7 +185,7 @@

    Equates and Offsets

    (explained below) to return the relevant offset values. Everything else is handled by AMOS Professional.

    -

    SET EQUATE BANK

    +

    SET EQUATE BANK

    instruction: set up the automatic equate system
    Set Equate Bank bank number

    @@ -197,7 +197,7 @@

    SET EQUATE BANK

    take care!

    -

    LVO

    +

    LVO

    function: get the Library Vector Offset
    offset=Lvo("Name_of_the_function")

    @@ -224,7 +224,7 @@

    LVO

    X> TASK=Execall(Lvo("FindTask")) -

    EQU

    +

    EQU

    function: get an equate
    value=Equ("Name_of_the_equate")

    @@ -246,7 +246,7 @@

    EQU

    X> DEV D0(channel,EQU("CMD_WRITE")) -

    STRUC

    +

    STRUC

    reserved variable: access an internal data structure
    value=Struc(address,"Offset Name")
    Struc(address,"Offset_Name")=value

    @@ -286,7 +286,7 @@

    STRUC

    X> Print Struc(Dev Base(1),"I0_LENGTH") -

    STRUC$

    +

    STRUC$

    function: read or write a string pointer to a structure
    value$=Struc$(address,"Offset_Name")
    Struc$(address,"Offset Name")="value"

    @@ -322,7 +322,7 @@

    The Requester Extension

    As a default, the AMOS Professional requester routine will be used in preference to hit' Workbench system requester.

    -

    REQUEST WB

    +

    REQUEST WB

    instruction: use the Workbench system requester
    Request Wb

    @@ -336,7 +336,7 @@

    REQUEST WB

    [Amiga]+[A] again to return to AMOS Professional. There should be no need to delete the Requester extension unless memory is very low.

    -

    REQUEST ON

    +

    REQUEST ON

    instruction: use the AMOS Professional requester routine
    Request On

    @@ -344,7 +344,7 @@

    REQUEST ON

    This is the default setting, and is used to make AMOS Professional employ its own requester routine.

    -

    REQUEST OFF

    +

    REQUEST OFF

    instruction: cancel the requester
    Request Off

    @@ -362,7 +362,7 @@

    Control of devices

    facilities like the synthetic speech handler. The following two functions need no expert knowledge to use!

    -

    DEV FIRST$

    +

    DEV FIRST$

    function: get the first device from the current device list
    device$=Dev First(path$)

    @@ -375,7 +375,7 @@

    DEV FIRST$

    FIRST$(A/**") is used if you only want to list assigns.

    -

    DEV NEXT$

    +

    DEV NEXT$

    function: get the next device that satisfies the current search path
    device$=Dev Next$

    @@ -398,7 +398,7 @@

    DEV NEXT$

    from your programs, but they should only be used by experienced programmers, armed with the relevant ROM Kernel manual. You have been warned!

    -

    DEV OPEN

    +

    DEV OPEN

    instruction: open a device
    Dev Open(channel number,"name.device",IOlength,UnitNumber,Flags)

    @@ -428,7 +428,7 @@

    DEV OPEN

  • Lastly, the OPEN DEVICE function is executed with the new structure.
  • -

    DEV CLOSE

    +

    DEV CLOSE

    instruction: close one or more devices
    Dev Close
    Dev Close channel

    @@ -442,7 +442,7 @@

    DEV CLOSE

    closed simultaneously, otherwise the single specified device is closed down. Note that if a specified channel is not already open, no error will be reported.

    -

    DEV DO

    +

    DEV DO

    instruction: call a command using DoI0
    Dev Do channel number,command number

    @@ -454,7 +454,7 @@

    DEV DO

    may be entered directly by name, using the EQU function explained earlier. You are warned to take great care when using this instruction!

    -

    DEV SEND

    +

    DEV SEND

    instruction: call a command using SendIO
    Dev Send channel number,command

    @@ -463,7 +463,7 @@

    DEV SEND

    tasking system. The new process will run invisibly in the background, and your AMOS Professional program will continue from the next instruction immediately.

    -

    DEV CHECK

    +

    DEV CHECK

    function: check status of a device with a CheckIO
    value=Dev Check(channel number)

    @@ -471,7 +471,7 @@

    DEV CHECK

    Use this function to perform a CheckIO on the specified channel. The resulting value is passed back to AMOS Professional.

    -

    DEV ABORT

    +

    DEV ABORT

    instruction: abort an IO operation
    Dev Abort channel number

    @@ -480,7 +480,7 @@

    DEV ABORT

    the specified device channel. It can be used to exit directly from a multi-tasking operation, without waiting for it to complete.

    -

    DEV BASE

    +

    DEV BASE

    function: get base address of an IO structure
    address=Dev Base(channel number)

    diff --git a/12-01-monitor.html b/12-01-monitor.html index 88821ce..f1e7d57 100644 --- a/12-01-monitor.html +++ b/12-01-monitor.html @@ -45,7 +45,7 @@

    Calling the Monitor

    in the Project Menu, or press the [F5] key.

    -

    MONITOR

    +

    MONITOR

    instruction: call AMOS Professional Monitor
    Monitor

    diff --git a/12-02-error-handling.html b/12-02-error-handling.html index 54376d8..65fe09e 100644 --- a/12-02-error-handling.html +++ b/12-02-error-handling.html @@ -40,7 +40,7 @@

    Trapping errors

    that when a mistake is spotted, error trapping swings into action. This process is triggered by the following command:

    -

    ON ERROR

    +

    ON ERROR

    structure: trap an error within a Basic program
    On Error Goto label

    @@ -96,7 +96,7 @@

    ON ERROR

    To get back to your program after ON ERROR has been called, you must use RESUME. Never use GOTO for this purpose.

    -

    RESUME

    +

    RESUME

    structure: resume the execution of current program after an error trapping routine
    Resume
    Resume Next
    @@ -109,7 +109,7 @@

    RESUME

    NEXT. Alternatively, to jump to a specific point in your main program, simply follow RESUME with a reference to a chosen label or a normal line number.

    -

    ON ERROR PROC

    +

    ON ERROR PROC

    structure: trap an error using a procedure
    On Error Proc name

    @@ -141,7 +141,7 @@

    ON ERROR PROC

    structure.

    -

    RESUME LABEL

    +

    RESUME LABEL

    structure: jump to a label after an error has been isolated using a procedure
    Resume Label label

    @@ -150,7 +150,7 @@

    RESUME LABEL

    error handler, immediately after the original ON ERROR PROC or ON ERROR GOTO statement. For an example of RESUME LABEL, please see the last routine in this Chapter.

    -

    ERRN

    +

    ERRN

    function: return the error code number of the last error
    number=Errn
    Print Errn

    @@ -161,7 +161,7 @@

    ERRN

    running each have a specific error code number, and the number of the last error to be isolated can be returned by using the ERRN function.

    -

    ERROR

    +

    ERROR

    instruction: deliberately generate an error and return to Editor
    Error number

    @@ -202,7 +202,7 @@

    ERROR

    -

    TRAP

    +

    TRAP

    instruction: trap an error
    Trap instruction

    @@ -228,7 +228,7 @@

    TRAP

    E> Trap Locate -1,-1 : Locate -1,-1 -

    ERRTRAP

    +

    ERRTRAP

    function: return an error code number after a TRAP
    number=Errtrap

    @@ -237,7 +237,7 @@

    ERRTRAP

    been detected, a zero is returned, otherwise the appropriate error number is given. The related error message can then be returned using the ERR$ function, explained next.

    -

    ERR$

    +

    ERR$

    function: return an error message string
    text$=Err$(error number)

    diff --git a/13-01-configuration.html b/13-01-configuration.html index 13132a4..233dd85 100644 --- a/13-01-configuration.html +++ b/13-01-configuration.html @@ -72,7 +72,7 @@

    Defining a new accessory

    listing, preferably immediately after a SET BUFFER instruction. The new accessory has the ability to communicate with the Editor, using the following two instructions.

    -

    CALL EDITOR

    +

    CALL EDITOR

    instruction: send instructions to the Editor from an accessory program
    Call Editor function
    Call Editor function,parameter,parameter$

    @@ -83,7 +83,7 @@

    CALL EDITOR

    functions, along with their code numbers, is featured in the [Editor] Help menu.

    -

    ASK EDITOR

    +

    ASK EDITOR

    instruction: return parameters from the Editor to an accessory program
    Ask Editor function
    Ask Editor function,parameter,parameter$

    @@ -379,7 +379,7 @@

    Saving memory

    Two powerful instructions are provided that allow you to maximise the available memory for your programs.

    -

    CLOSE WORKBENCH

    +

    CLOSE WORKBENCH

    instruction: close the Workbench
    Close Workbench

    @@ -401,7 +401,7 @@

    CLOSE WORKBENCH

    Run AmosPro in CLI
    -

    CLOSE EDITOR

    +

    CLOSE EDITOR

    instruction: close the AMOS Professional Editor Window
    Close Editor

    diff --git a/14-appendix-b-amos-professional-run-time.html b/14-appendix-b-amos-professional-run-time.html index 65c6407..8cf1318 100644 --- a/14-appendix-b-amos-professional-run-time.html +++ b/14-appendix-b-amos-professional-run-time.html @@ -72,7 +72,7 @@

    Run-only discs

    Because the Editor is a separate program, the Interpreter is not only able to work without it, but can also load it when a program is over, if necessary.

    -

    KILL EDITOR

    +

    KILL EDITOR

    instruction: remove the AMOS Professional Editor from memory
    Kill Editor

    diff --git a/14-appendix-c-pal-and-ntsc.html b/14-appendix-c-pal-and-ntsc.html index 2e79ab6..c09de8b 100644 --- a/14-appendix-c-pal-and-ntsc.html +++ b/14-appendix-c-pal-and-ntsc.html @@ -24,7 +24,7 @@

    App. C: PAL and NTSC

    -

    International television standard systems1

    +

    International television standard systems

    With millions of Amigas is use all over the world, it is vital to ensure that programs written with the AMOS Professional system can operate in as many territories as possible. For historical @@ -78,7 +78,7 @@

    The display size

    the bottom of the screen. Fortunately, AMOS Professional provides a function to assess the situation.

    -

    DISPLAY HEIGHT

    +

    DISPLAY HEIGHT

    function: report maximum available screen height
    height=Display height

    @@ -241,7 +241,7 @@

    Dual mode programs

    -

    International television standard systems2

    +

    International television standard systems

    The following lists catalogue the different standard systems adopted in various territories around the world.

    diff --git a/14-appendix-f-copper-lists.html b/14-appendix-f-copper-lists.html index 349f9b3..62ff26d 100644 --- a/14-appendix-f-copper-lists.html +++ b/14-appendix-f-copper-lists.html @@ -79,7 +79,7 @@

    The Copper List

    Accessing the Copper

    -

    COPPER OFF

    +

    COPPER OFF

    instruction: turn off the standard copper list
    Copper Off

    diff --git a/contents.html b/contents.html index 65ae7bb..c68653a 100644 --- a/contents.html +++ b/contents.html @@ -729,13 +729,13 @@

    Section 14 Appendix

  • Appendix 14.C: PAL and NTSC

  • Appendix 14.D: Extensions

  • diff --git a/index.html b/index.html index f6bac05..a6376a5 100644 --- a/index.html +++ b/index.html @@ -21,13 +21,11 @@ -
    - + - diff --git a/styles.css b/styles.css index 75316ea..beef14e 100644 --- a/styles.css +++ b/styles.css @@ -8,7 +8,11 @@ html { body { background-color: white; color: black; - margin: 1rem; + margin: 0 auto; + padding: 1rem; + max-width: min(60rem,90%); + border-left: #f0f0f0 1px solid; + border-right: #f0f0f0 1px solid; } ul { @@ -28,4 +32,34 @@ h2.menu-line { table#command-index th { text-align: left; +} + +h3.command { + margin-bottom: 0; + background-color: #f8f8f8; + padding: .3rem .2rem; + margin-left: -.2rem; + font-size: inherit; +} + +h3.command +p { + margin-top: .2rem; +} + +a > h3 { + display: inline-block; + margin-bottom: 0; +} + +ul.section h2 { + margin-bottom: 0; +} + +div#cover { + text-align: center; +} +#cover img { + width: 90%; + height: auto; + border: none; } \ No newline at end of file