Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
boards:ecb:cassette_intf:start [2020/01/25 23:53]
b1ackmai1er [Usage Notes]
boards:ecb:cassette_intf:start [2020/01/31 07:04] (current)
b1ackmai1er [Serial Mode]
Line 149: Line 149:
 ====== Saving and Loading files ====== ====== Saving and Loading files ======
  
-Due to the lack of specific software for the ECB Cassette to load and save files, CP/M redirection facilities are used to load and save files. This requires all files to be converted to a text format and in our case the HEX file format is used. The UNLOAD.COM program is used to save a text HEX version of a file. This utility can be downloaded below in the files list (UNLOAD.ZIP). To convert the HEX format file back to binary, the LOAD command is used. This is a built in CP/M command. There is no hardware limitation related to saving and loading binary data. The limitation is due to the lack of software that directly communicates with the ECB-Cassatte UART.+Due to the lack of specific software for the ECB Cassette to load and save files, CP/M redirection facilities are used. This requires all files to be converted to a text format and in our case the HEX file format is used. The UNLOAD.COM program is used to save a text HEX version of a file. To convert the HEX format file back to binary, the LOAD.COM program is used. This utility can be downloaded below in the files list (CASSUTIL.ZIP).. There are no hardware limitations in regard to saving and loading binary data. The limitation is due to the lack of software that directly communicates with the ECB-Cassette UART.
  
 __Saving__ __Saving__
Line 158: Line 158:
  
 \\ \\
-''1. If you have a load/save switch installed, toggle switch to SAVE\\ +''1. If you have a load/save switch installed, toggle switch to SAVE.\\ 
-2. Press Record on cassette player\\ +2. Press Record on the cassette recorder.\\ 
-3. Key PIP command ie. PIP PUN:=TEST.HEX[E] <RETURN>''+3. Key PIP command ie. PIP PUN:=TEST.HEX[E] <RETURN>.''
  
 __Loading__ __Loading__
  
 +''1. Key PIP command ie. PIP TEST.HEX=RDR:[E] <RETURN>.\\
 +2. Press Play on the cassette player.\\
 +3. If you have a load/save switch installed, toggle switch to LOAD.'' \\
 \\ \\
-''1.key PIP command ie. PIP TEST.HEX=RDR:[E] <RETURN>\\ +''Convert a HEX file back to its original format, use LOAD.\\
-2.press play\\ +
-3.If you have load/save switch installed, toggle switch to LOAD'' \\ +
-\\ +
-''convert HEX back to COM file use LOAD.\\+
 example: LOAD TEST.HEX <RETURN>\\ example: LOAD TEST.HEX <RETURN>\\
-—–> creates TEST.COM\\ +—–> creates TEST.COM'' 
-\\ + 
-Handling large files.\\+''Rename the file from .COM if required.'' 
 \\ \\
 +''Handling large files.\\
 \\ \\
-files over 25K split into smaller files with notepad.\\ +Due to LOAD and UNLOAD being limited to files that fit into memory, files over ~25K must be split into smaller files.\\ 
-for retrieval, concatenate files with PIP.\\+For retrieval, concatenate files with PIP.\\
 example: PIP WHOLEFILE.HEX=1STFILE.HEX[ I ],2NDFILE.HEX'' example: PIP WHOLEFILE.HEX=1STFILE.HEX[ I ],2NDFILE.HEX''
  
Line 230: Line 231:
 Set the port address of the board to 80h, jumper P1 3-4:5-6:7-8:9-10. Set the port address of the board to 80h, jumper P1 3-4:5-6:7-8:9-10.
  
-If another port setting is required or the default serial speed needs to be changed then a custom build of ROMWBW is requires. Update the uart.asm source as shown below+If another port setting is required then a custom build of ROMWBW is requires. Update the uart.asm source as shown below
  
 <code> <code>
Line 239: Line 240:
         .DB $80            ; IO PORT BASE (RBR, THR)                <<<Change port here         .DB $80            ; IO PORT BASE (RBR, THR)                <<<Change port here
         .DB $80 + UART_LSR ; LINE STATUS PORT (LSR)                 <<<and here         .DB $80 + UART_LSR ; LINE STATUS PORT (LSR)                 <<<and here
-        .DW SER_300_8N1    ; LINE CONFIGURATION                     <<<Change baud rate here. See std.asm for options i.e. SER_9600_8N1+        .DW UARTCASSPD     ; LINE CONFIGURATION
         .FILL 2,$FF        ; FILLER         .FILL 2,$FF        ; FILLER
 #ENDIF #ENDIF
 </code> </code>
  
-Set the baud rate selector mode jumpers P5 to 1-2. This reconfigures the UART transmit and receive clock to use the crystal derived source.+The default cassette or serial speed can also be changed by adding the following change to your customer configuration file. Other speed options are listed in the std.asm file but generally take the form SER_XXX_8N1. 
 + 
 +<code> 
 + 
 +UARTCASSPD    .SET    SER_300_8N1    ; UART: ECB CASSETTE UART DEFAULT SPEED 
 +</code> 
 + 
 + \\ Set the baud rate selector mode jumpers P5 to 1-2. This reconfigures the UART transmit and receive clock to use the crystal derived source.
  
  
Line 318: Line 326:
  
 ====== Troubleshooting ====== ====== Troubleshooting ======
 +
 +It is helpful to be able to output a stream of characters to the ECB-Cassette for testing. The CSTSO utility from the CASSUTIL archive can be used:
 +
 +<code>
 +B>h:cstso
 +USAGE: CSTSO x y.z
 +
 +x = ROMWBW unit number (0-9)
 +y = Character to output
 +    * used if none given
 +z = Add control character Z
 +
 +Example:
 +
 +CSTSO 0 #.Z
 +
 +Will output a stream of #'s to ROMWBW character device 0, appended with a Ctrl-Z character.
 +</code>
 +
 +For example, the following shows a string of characters output the the console device CIO 0.
 +
 +<code>
 +B>h:cstso 0 #.Z
 +######################################################################################
 +
 +######################################################################################
 +
 +######################################################################################
 +
 +######################################################################################
 +
 +######################################################################################
 +
 +######################################################################################
 +</code>
 +
 +Change the unit number to match that of your ECB-Cassette board. This information is listed at boot. i.e. UART1: is the ECB-Cassette and assigned as CIO 2. So __<font inherit/Courier New,Courier,monospace;;inherit;;inherit>cstso 2 #.Z</font>__  would be used to output to the cassette. The z parameter allows a control character to be appended at the end, typically Ctrl-Z, which is useful to exit redirected input to the console. Press a key at any time to exit the program.
 +
 +<code>
 +Unit        Device      Type              Capacity/Mode
 +----------  ----------  ----------------  --------------------
 +Char 0      UF0:        RS-232            9600,8,N,1
 +Char 1      UART0:      RS-232            38400,8,N,1
 +Char 2      UART1:      RS-232            600,8,N,1
 +</code>
 +
 +
  
 Initial recording and playback testing can be done by connecting the ECB-Cassette board to a computer's earphone and microphone socket and using standard PC applications to play and record sound. This will help eliminate sound quality issues coming from the cassette i.e. speed variation, tape quality or record issues. Also, it is easier to identify correct playback volume through a computer that can be repeated accurately. Initial recording and playback testing can be done by connecting the ECB-Cassette board to a computer's earphone and microphone socket and using standard PC applications to play and record sound. This will help eliminate sound quality issues coming from the cassette i.e. speed variation, tape quality or record issues. Also, it is easier to identify correct playback volume through a computer that can be repeated accurately.
boards/ecb/cassette_intf/start.1580014422.txt.gz · Last modified: 2020/01/25 23:53 by b1ackmai1er
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0