68KMB Monitor

Here is an example of a monitor that can be adapted to the 6800NV board ..where  the monitor is in low memory from 000000 address and on .... and uses 68681 Duart for comms. This monitor is from a course given by Scott McKenzie .. (which also has written a book The 68000 Microprocessor ).You an find most of the information about the monitor and heaps of examples of 68000 code .. that can be used even with this board. The source file of the monitor seems to be well documented ..and should be easy enough to alter if needed.

Since 68000NV board is not exactly setup to be able to run the monitor .. few wiring links are needed to be able to use it. I will show you a configuration example ...to be able to use the board in similar memory space specs as the course for that monitor.

Memory space:

The monitor Binary files:

The board runs @ 9600  baud, 8 or 7 bits, ODD parity and 2 stop bits.

The pld file for the GAL chips is something like follows ..note only use of addresses a12 to a15 for decoding.. ones above are ignored. In reality you can have lot more space available when DS1250 NVram chips are used.

PLD File

Name            68K ram/rom;

Partno          0001;

Revision        68KMB Monitor;

Date            4/9/18;

Designer        mc;

Company         mcoz;

Location        oz;

Assembly        manual;

Device          g22v10;

/** Inputs **/

pin 7 = rnw;

pin 8 = nlds;

pin 9 = nuds;

pin 10 = nas;

pin 11 = sio_ndtack;

pin 13 = a0;

pin 14 = a1;

pin 15 = a2;

pin 16 = a3;

/** Outputs **/

pin 23 = !cs_sio;

pin 22 = !cs_ram;

pin 21 = !lwr;

pin 20 = !lrd;

pin 19 = !uwr;

pin 18 = !urd;

pin 17 = !dtack;

/** Declarations and Intermediate Variable Definitions **/

field ioaddr= [a0..3];

cs_ram_eqn   = ((ioaddr:[0..3])&rnw & !nas) # ((ioaddr:[4..B])& !nas) ;

cs_sio_eqn   = (ioaddr:[C..D])&!nas & !nlds ;

/** Logic Equations **/

cs_ram = cs_ram_eqn;

cs_sio = cs_sio_eqn;

dtack =!nas;

lwr = !rnw & !nlds;

lrd = rnw & !nlds;

uwr = !rnw & !nuds;

urd = rnw & !nuds;

Hardware changes:

If NVRam chips and gal chip programmed properly .. the monitor should boot up.. typing 'h' give you all the monitor commands ...

Monitor is reasonably easy to use ..here is example of loading an S record file  of a sample message program ..

S File

S00B00006D65737361676532DD

S11380003E3C0009227C000080124E4251CFFFF614

S11380104E4E0D0A417373656D626C79206C616E0E

S113802067756167652070726F6772616D6D696EE7

S10C8030672069732066756E0077

S90380007C

Message program

00008000 Starting Address

Assembler used: EASy68K Editor/Assembler v5.16.01

Created On: 4/09/2018 11:00:47 AM

00000000                             1  ******************************************************

00000000                             2  * MESSAGE2.SRC                                       *

00000000                             3  *                                                    *

00000000                             4  * This program sends a message to the console ten    *

00000000                             5  * times on ten separate lines.  The program uses two *

00000000                             6  * traps from MON68K: TRAP #2 (OUTSTR) and TRAP #14   *

00000000                             7  * (return to monitor).                               *

00000000                             8  ******************************************************

00000000  =0000000D                  9  CR       EQU      $0D      ;ASCII carriage return

00000000  =0000000A                 10  LF       EQU      $0A      ;ASCII line feed

00000000                            11 

00008000                            12           ORG      $8000

00008000  3E3C 0009                 13  MESSAGE2 MOVE.W   #9,D7        ;use D7 as counter

00008004  227C 00008012             14  LOOP     MOVEA.L  #TEXT,A1     ;A1 ---> message

0000800A  4E42                      15           TRAP     #2           ;OUTSTR trap

0000800C  51CF FFF6                 16           DBRA     D7,LOOP      ;repeat until done

00008010  4E4E                      17           TRAP     #14          ;return to MON68K

00008012                            18 

00008012= 0D 0A 41 73 73 65 ...     19  TEXT     DC.B     CR,LF,'Assembly language programming'

00008031= 20 69 73 20 66 75 ...     20           DC.B     ' is fun',0

00008039                            21           END      MESSAGE2

No errors detected

No warnings generated

SYMBOL TABLE INFORMATION

Symbol-name         Value

-------------------------

CR                  D

LF                  A

LOOP                8004

MESSAGE2            8000

TEXT                8012

Following shows upload of the S file .. execution and showing the run of the message code. Also shown is disassembly command of the code in the memory @ 8000.

For further info on the monitor and sample programs see Scotts web pages.

You can also find extra information here.

Some more online books about 68000 ...