%started%
=====================
== Getting Started ==                                           Page 1 of 3
=====================

          Welcome to the NCR NVDOS SCRIPTS Debugger
                     Revision 1.0.0

NVDOS is a DOS-based debugger for NCR SCSI SCRIPTS.  To EXECUTE code, 
you must have an adapter card with an NCR 53C700-66, NCR 53C710, 
NCR 53C720 or any NCR 53C8XX SCSI I/O Processor (SIOP) plugged into any 
empty expansion slot. You can use the debugger without a board to look 
through the menus or use the register search feature, which is described 
in the "Registers" section of this on-line help document.

The debugger interface consists of pull-down menus that are accessed with the
keyboard arrow keys and the ENTER key.  In general, the ESC key can be used
to cancel an action or back up through the menus.  Each Menu Item can be 
accessed from the keyboard by typing the capital letter in the desired menu 
item.
.cp
Getting Started -----------------------------------------------Page 2 of 3
Some laptop computers may lock up during SCRIPTS operation if they contain
non-standard DMA controllers. To avoid this, simply set DMA =0 in
the NVXX.RST file.  

This software comes with a user's guide that explains the debugger menus in
detail.  The following information might help you get started:
1) NVDOS currently defaults to SIOP cards installed at segment D800.
   If your card resides at some other segment, select Config from the main 
   menu bar followed by "Hrdwr config," or set a new MEM_MAP in the .RST file.
2) To load a SCRIPTS program (previously compiled with NASM), select 
   File from the main menu followed by "Open file."
3) To view or modify the SIOP registers select Regs from the main menu or
   Window from the main menu followed by "open Regs."
     a) to modify a register's contents, use the arrow keys to position 
        the cursor and press ENTER.
4) To view the loaded SCRIPTS file, select Window then "open Code."
     a) Use arrow keys, PGUP, and PGDWN to move through the SCRIPTS file
     b) While scrolling though the SCRIPTS code, pressing the M key  
        displays the memory contents at the current line.
.cp
Getting Started------------------------------------------------Page 3 of 3
     c) A search feature is included.  To quickly jump to a section of code, 
        press the slash key (/) followed by typing "inquiry"; the code 
        window now shows the start of the inquiry SCSI SCRIPTS instruction.
     d) With the code window cursor highlighting the inquiry instruction, 
        press the D key to load the DSP with the start location of the 
        inquiry SCRIPTS instruction. Now press either the S key to step, 
        or the R key to run until an interrupt occurs.

      All the code was written for a DOS platform using TURBO C compiler.
      NV00.exe  = 53C700-66 debugger
      NV10.exe  = 53C710 debugger  
      NV20.exe  = 53C720 debugger
      NVPCI.exe = 53C8XX debugger

      One final note on limitations:
      ------------------------------
     2000 line limit on SCRIPTS.SS File
     64k buffer limit of instructions + data + SCRIPTS.SS text
     256 DSA pointers 
*END*
%registers%
===============
== Registers ==                                              Page 1 of 4
===============

   The register window contains the bit names and values for each of  
   the SIOP operating registers. There are three ways to enter the 
   register window: 

   1) Select the Window menu, then "open Regs"
   2) Select the Window menu, then "open Code," and press the G Key
   3) Select the Regs menu

   In the register window, use the arrow keys to position the
   cursor on the register you wish to examine and press ENTER. This will
   bring up the register modify screen, including binary bit descriptions.  
   Press the ESC key to return control to the main menu without 
   writing the register.

FORCE Register Read -
   All 8-bit registers shown by the debugger are snapshots of live
   registers.  To FORCE a new snapshot of all registers, press the F key
   while in the register window.
.cp
Registers--------------------------------------------------------Page 2 of 4
                         REGISTER SEARCH FEATURE
  
  "/"      Pressing the slash key from the register window brings up the 
           bit field search option. This search looks for the desired 
           text in the bit names of all registers in the register window. 
           This search is not case sensitive. Spaces are not allowed, 
           since they are used as delimiters.

  EXAMPLE - To find out which register deals with the SIOP's
            Chained Mode feature, simply press the slash key followed by
            the word "chained."  NVDOS searches all bit names for the 
            word "chained" and jumps to the register that has that word in
            its bit descriptions.

.cp
 Registers-------------------------------------------------------Page 3 of 4
                         REGISTER LOAD FEATURE
  
  To load registers with the contents of the NVXX.RST file, do the following: 
  1) Open the register load file using the File ---> "Open file" command. 
  2) Issue a Chip Reset from the code window.

  Other Register load files can be loaded by selecting 
  File --->"Load Registers"  

REGISTER LOAD FILE FORMAT FOR SIOP     

The NVXX.RST file uses a free format structure, but only one entry per line

"Register Name" = Data  ;Any Comments
                 ^          ^
                  |          |________ Valid formats 12,0xA,b00001010
                  |___________________ Not Case Sensitive

.cp
Registers--------------------------------------------------------Page 4 of 4
                         REGISTER SAVE FEATURE

Register values may be dumped to disk, and loaded later with the register
load feature.  The feature provides a simplified method of
storing/retrieving SIOP setups.

To save a copy of current register values, select 
File ---> "save Registers," then enter the DOS file name at the prompt. 

REGISTER SAVE FILE FORMAT FOR SIOP

   "Register Name" = Data  ;Any Comments
                 ^          ^
                  |          |________ Valid formats 12,0xA,b00001010
                  |___________________ Not Case Sensitive



*END*
%config%
====================
== Configuration  ==                                      Page 1 of 2
====================

This debugger defaults to SEGMENT address D800 for the NCR SIOP adapter card
using memory mapped access. The NCR SIOP development kit contains an
adapter card which has jumper options to relocate the SEGMENT base address
of the card to one of four values.  To open the segment window, select

  Config --> "Hrdwr config" --> "Mem mapped"
  Now enter four hex digits for new memory mapped segment.

While all the NCR SIOP adapter cards are memory mapped, NVDOS supports
I/O mapped SIOP cards with I/O addressing.  To change the I/O mapping, select

 Config --> "Hrdwr config" --> "I/O mapped"

  Choosing this option makes all access to the SIOP as an I/O mapped
  device. Enter a 16-bit I/O base port address.
  The NCR SIOP cards are memory mapped.  DO NOT select I/O mapping
  for NCR cards received in the development kits. 
.cp
Configuration--------------------------------------------------- Page 2 of 2

Some custom configuration parameters may be included in the NVXX.RST
file.  This file is loaded whenever a reset is executed from the code 
window or code is loaded from disk.  The following parameters are allowed:

 MEM_MAP = XXXX ;  Specifies memory mapped device, SEGMENT Base at XXXX
 IO_MAP  = XXXX ;  Specifies I/O Mapped device, Base address at XXXX
 DMA     = X    ;  Specifies DMA channel assignment (valid 5,6 or 7)
                ;  Specification of any other is ignored
 SPEED   = X    ;  Slow Step Speed Factor, Valid options 0 - 15
                ;  0 = Fastest ; 15 = Really Slow, (Approx 5 Seconds)

*END*
%break%
==================
== Break Window ==                                              Page 1 of 1
==================
 This main menu option displays a list of break points set in the Code 
 Window.  Break points are set while in the code display window by pressing
 the B key. 
 
 To open the break point display window, select Bkpts from the 
 main Menu.  The break point window shows line numbers of the loaded 
 SCRIPTS.LIS file that have software break points inserted.

 A maximum of eight break points may be inserted.  Break points are simply
 SCRIPTS Interrupt instructions with a vector of 0xFFFFFFFF.  


*END*

%mem%
==================
==  MEM Window  ==                                              Page 1 of 1
==================

The memory window displays a byte listing of data residing at a given
address. To open the memory window, select: 

  Window ---> "open Mem" menu item. 

  The user is prompted to supply a SEGMENT:OFFSET address. A window
  displays 128 bytes of data located there.  The user can scan the data
  by pressing the PGUP or PGDN keys.  Pressing ESC closes the window.

Users can also modify bytes in memory by positioning the byte pointer
highlighted with the ">" symbol.  After using the arrow keys to position 
the ">" symbol, press the return key to enter new data.

  F      Pressing F key while in the memory window brings up the 
          Fill Memory Utility. User enters Length, Data fill value, and
          Data fill step.  Input can be either decimal or hex (0x??)

*END*
%file%
==================
== Open File    ==                                              Page 1 of 1
==================

Compiled SCRIPTS files are loaded into NVDOS by selecting

  File ---> "Open File" from the menus. 

Type in the .LIS file name at the prompt.  Only the root file name need 
be entered; a .LIS extension is automatically added. The length of the field
is limited, so if the file doesn't reside in the current directory, the 
user may have to exit to the DOS shell and issue a cd (change directory)
command to locate the file.

*END*
%dos%
==================
== Dos Shell    ==                                              Page 1 of 1
==================

Users can open a DOS shell to change directory, recompile SCRIPTS, etc. by
selecting

  File ---> "Shell" from the menus. 

The shell displays the NCR logo, and allows the user to enter any
DOS command or run programs.  To return to the debugger 
environment, type "EXIT" and press the ENTER key.

*END*
%code%
==================
== Code Window  ==                                              Page 1 of 5
==================

The code window displays a compiled SCRIPTS file (.LIS) produced by the NASM
assembler.  Opening the code window is accomplished by selecting

  Window ---> "open Code" from the menus. 

Note: The SCRIPTS file must be previously compiled  with NASM  and 
loaded with the File ---> "Open file" selections before it can be
opened with this command.
.cp
Code Window------------------------------------------------------page 2 of 5
                       CODE WINDOW KEYBOARD COMMANDS 
 /      Pressing the slash key from the code window brings up the text
         search option.  This search is case sensitive. Spaces are not
         allowed.  The cursor will jump to the first occurrence of
         the text search string found in the SCRIPTS file.

  >>     Entering >> following the slash key causes the cursor
         to highlight the current instruction loaded in the DSP register.

  ##     Entering integers following the slash key causes the cursor
         to highlight the selected line number of the loaded (.LIS) file.

  M      Pressing the M key from the code window brings up the Memory
         dump window.  The address and byte data shown correspond to the 
         highlighted instruction or data that appeared in the code window. 

  D      DSP LOAD. Pressing the D key from the code window loads  
         the DSP register with the address of the instruction highlighted.
.cp
Code Window------------------------------------------------------page 3 of 5
  C      Chip Reset. Pressing the C key from the code window reads
         NVXX.RST  from disk and executes the contents in sequential order.

  B      Add break point. Pressing the B key while in the code window adds
         a software break point instruction with a vector of 0xFFFFFFFF. 
         NVDOS supports up to eight break points.  To remove a break point,
         press B while highlighting a line that contains a break point. 
         Lines that contain software break points are highlighted with 
         three stars (***).

  W      Slow Run. Pressing the W key loads the DSP with the highlighted
         SCRIPTS instruction.  Execution stops when an interrupt is received,
         or when any key is pressed.

  S      Single Step. Pressing the S key loads the DSP with the highlighted
         SCRIPTS instruction.  Execution stops after each instruction 
         completes, or when an interrupt occurs.
.cp
Code Window------------------------------------------------------page 4 of 5

  R      Run. Pressing the R key loads the DSP with the SCRIPTS
         instruction currently highlighted in the code window.  Execution 
         stops when an Interrupt instruction is executed.  An execution 
         time-out will halt the SCSI processor if an interrupt is not 
         received in 1 sec.

  K      Keyed Run. Pressing the K key loads the DSP with the SCRIPTS
         instruction currently highlighted in the code window.  Execution 
         stops when an Interrupt instruction is executed. The difference from 
         the Run command is that polling of the ISTAT register will not begin
         until a key is pressed. This prevents unwanted execution time-outs.
  
  G      Go to Registers. Pressing the G key from the code window 
         moves the cursor to the Register window.  Pressing the ESC key 
         returns the cursor to the code window.
.cp
Code Window------------------------------------------------------page 5 of 5

  L      Looped Run. This run-time option allows users to execute code
         loops.  The start of the loop is the current DSP value.  The end of 
         the loop is marked by an INT instruction with vector 0xFFFFFFFF. 
         The end points are easily inserted with the break feature. Simply 
         press the B key to mark the last code line of the loop. Looping 
         stops when you press any key, or when any other interrupt occurs.

  P      SIGP Run. Pressing the P key from the code window begins SCRIPTS 
         execution at the current instruction in the DSP. Upon pressing any 
         key the SIGP bit in the ISTAT register is set and interrupt polling 
         begins.

  END    Pressing the END key moves the cursor to the last line of 
         the SCRIPTS file. 
  HOME   Pressing the HOME key moves the cursor to the first line of 
         the SCRIPTS file. 
*END*

