Hi there folks :)

Work is currently in progress on a new interface for the SAM. It's a 
ROM podule that slots in the back, (ROM size between 128 and 512k -- 
undecided as of yet), with 32k or 128k of battery back static RAM 
(you decide how much you want to buy -- 128k is 6 pounds extra I 
think).

Control ports:
Currently, ports 0x??DE and 0x??DF (&xxDE, &xxDF) are being used to 
control the paging.

Different ROM/RAM configurations are possible, also you may have any 
combination of ROM/RAM pages in place of the two standard ROM pages.

Software on the board:
The board is designed to be a programmer's development toolkit. 
Currently decided for it are the following:

COMET source compatible ASSEMBLER:
Also features the following things that COMET doesn't:
Convert ASCII to SOURCE -- for PC files etc etc
Convert SOURCE to ASCII -- save out source in a text file
Conditional assembly    -- source that is only assembled if a 
condition such as symbol contains a specific value, or symbol is/is 
not defined.
Macros                  -- Routines like subroutines, but which are 
not CALLed -- they are put in with the source itself on assembly.
Repeat loops            -- Useful for unlooping code for speed. 
Replaces the need to put 128 LDI's (or whatever) in your code with a 
simple
On assembly, MACLxxx labels are replaced with MACP00O0000, which are 
the page and offset which that label addresses.

REPEAT 128
LDI
REPEND

Note: Nested REPEATs , IFs and MACROs are not allowed; however, a 
MACRO may contain an IF or a REPEAT _and may be called_ from within 
an IF or a REPEAT. If necessary, this will be made clearer later.

Ie:

                REPEAT 100
                REPEAT 20       -- this is invalid
    
                IF symbol EXISTS
                IF symbol NOT EXISTS -- this is invalid
    
TEXT.TO.SCREEN: MACDEF x,y,z   --- this is the macro TEXT.TO.SCREEN
                REPEAT 10
MACL1:
                LD HL,x
                LD (HL),y
                OR z
                REPEND
                MACEND
                      
                REPEAT 20   -- this is valid 
                TEXT.TO.SCREEN 1,2,3 
                REPEND
                
Other features:
We are hoping to get Simon Owen to rewrite his excellent TurboMON 
program for the Programmer's Development Rom (PDR). This will be the 
Monitor/Disassembler suite for the program.

Disk Toolkit:
This will allow as well as repair etc, formatting of discs, MSDOS 
file read/writing and a plethora of other file management routines.

System Variables Editor:
Designed to allow monitoring/modification of the Systems variables 
(probably will include MASTERBASIC variables; definitely will have 
MASTERDOS variables)

System Environment Editor: Switch paging on or off, allocate space, 
edit the current palette data, change the font (or design your own?), 
modify/reset system vectors, alter DOS configuration, examine RAM 
Disks, Memory maps..).

Graphics Finder:
Allows you to scan through memory to find graphics data, sprites, 
fonts, etc.

Online Technical Manual:
Includes diagrams of pinouts, memory maps, technical documentation, 
tricks, tactics. Documentation of lots of SAM stuff included, such as 
the clock controller chip, the Meg, the Gig (coming soon!), the 
Accelerator board's principles, etc etc... We'll put in as much as we 
can fit in...

Systems Information:
Evaluates the hardware plugged into your system and returns a list of 
what you've got.

Also, this all comes in a GUI style package and boots up on RESET. 
You can drop back into BASIC, you can call the ROM back up again from 
BASIC by pressing [SHIFT]+[SYMBOL]+[EDIT]. RESET key combination (ala 
ESI -- SYMBOL + CNTRL + DELETE -and- CAPS + CNTRL + EDIT are both 
also included -- will only work from BASIC programs, but is part of 
the new keyscan routine).

Options are available to:

Load SAMDOS v2.2 from ROM

Reset SAM and return to ORIGINAL ROM *note* RESET button will need to 
be pressed to return to the new ROM, as the new ROM is locked out 
with this option.

Reset SAM (doesn't return to new ROM, but clears the SAM's memory. 
Warning is made if this will delete SOURCE CODE from memory).

With the 128k configuration, as much source as possible will be kept 
in the ROM board, although this will be up to a maximum of approx. 
96k. It *is* possible to, for example, mark areas of memory as used 
or "not present" and use them to create source code in (this is 
especially useful to work with DOS routines; mark a MEG missing, and 
then work with RAMDRIVES etc etc... this gives a full megabyte of 
source to play with!).

Oh yes, and also, file system is fully MSDOS 720k disc compatible!!!!

Estimated cost: 60 pounds. May be lower if can be arranged.

Si Cooke

Suggestions please?



Reply via email to