Browse Source

Improvement to Forth documentation,

and hide NVR Configure app from app list menu
as it is in the main help menu
pull/497/head
Mark Pruden 1 year ago
parent
commit
c5280b3ebd
  1. 6
      Source/Doc/Applications.md
  2. 3
      Source/Doc/Catalog.md
  3. 3
      Source/Doc/Introduction.md
  4. 24
      Source/Forth/camel80.azm
  5. 1
      Source/HBIOS/layout.inc
  6. 2
      Source/HBIOS/romldr.asm

6
Source/Doc/Applications.md

@ -596,7 +596,7 @@ CamelForth is the version of Forth included as part of the boot ROM in
RomWBW. It has been converted from the Z80 CP/M version published at
<https://www.camelforth.com/page.php?5>. The
author is Brad Rodriguez who is a prolific Forth enthusiast, whose work
can be found here: <https://www.bradrodriguez/papers/index.html>.
can be found here: <https://www.bradrodriguez.com/papers>.
For those are who are not familiar with Forth, I recommend the
wikipedia article <https://en.wikipedia.org/wiki/Forth_(programming_language)>
@ -618,6 +618,10 @@ words are added to the dictionary.
This implementation does not support loading or saving of programs. All programs
need to be typed in. Additionally, screen editing and code blocks are not supported.
A CP/M version is not provided with RomWBW, this is only a ROM application. If you need to
run it under CP/M you would need to download it from the camelforth web site, the link is
above.
### Structure of Forth source files
File | Description

3
Source/Doc/Catalog.md

@ -381,11 +381,10 @@ The following files appear in User Area 0
| `GET.COM` | DRI CPM+ Temporarily get console input form a disk file |
| `HELP.COM` | DRI CPM+ Display information on how to use commands |
| `HELP.HLP` | DRI CPM+ Databse of help information for HELP.COM |
| `HEXCOM.COM` | DRI CPM+ Create a COM file from a hex file output by MAC |
| `HEXCOM.COM` | DRI CPM+ Create a COM file from a hex file (replaces LOAD.COM) |
| `INITDIR.COM` | DRI CPM+ Initializes a disk to allow time and date stamping |
| `LIB.COM` | DRI object file library manager |
| `LINK.COM` | DRI object file linker |
| `LOAD.COM` | DRI loader for Intel hex files |
| `MAC.COM` | DRI 8080 macro assembler |
| `PATCH.COM` | DRI CPM+ Display or install patch to the CPM+ system or command files |
| `PIP.COM` | DRI CPM+ Periperal Interchange Program |

3
Source/Doc/Introduction.md

@ -349,8 +349,7 @@ development of RomWBW. The project can be found at
#### Z80 fig-FORTH
Dimitri Theulings' implementation of fig-FORTH for the Z80 has a
RomWBW-specific variant. This fig-FORTH is built into the RomWBW
ROM. However, the project itself is hosted at
RomWBW-specific variant. The project is hosted at
<https://github.com/dimitrit/figforth>.
#### Assembly Language Programming for the RC2014 Zed

24
Source/Forth/camel80.azm

@ -6,7 +6,7 @@ BF_SYSRESET EQU 0F0h ; RESTART SYSTEM
BF_SYSRES_WARM EQU 01h ; WARM START (RESTART BOOT LOADER)
; THE FOLLOWING NEED TO BE SYNCED WITH STD.ASM SO ROMLDR
; THE FOLLOWING NEED TO BE SYNCED WITH INCLUDE.ASM SO ROMLDR
; KNOWS WHERE THIS EXECUTES AT
FTH_SIZ EQU 1700h
@ -31,7 +31,7 @@ HB_LOC EQU 0FD80h
; You should have received a copy of the GNU General Public License
; along with this program. If not, see <http://www.gnu.org/licenses/>.
; Commercial inquiries should be directed to the author at
; Commercial inquiries should be directed to the author at
; 115 First St., #105, Collingwood, Ontario L9Y 4W3 Canada
; or via email to bj@camelforth.com
;
@ -68,18 +68,18 @@ HB_LOC EQU 0FD80h
; keywords are being passed in a
; macro.
; b1ackmai1er difficultylevelhigh@gmail.com
; 03-Dec 20 v1.02 Add James Bowmans double
; 03-Dec 20 v1.02 Add James Bowmans double
; precision words as per RC2014
; version. Increase terminal
; version. Increase terminal
; input buffer (TIB) size.
; b1ackmai1er difficultylevelhigh@gmail.com
; b1ackmai1er difficultylevelhigh@gmail.com
; 22-Jan 21 v1.02 Adjust for revised HBIOS
; proxy size.
; b1ackmai1er difficultylevelhigh@gmail.com
; 07-Sep 21 v1.02 Separate additions.
; 07-Sep 21 v1.02 Separate additions.
; 05-Oct 21 v1.02 Add Douglas Beattie Jr.'s
; API call and port read and
; write words.
; write words.
; ===============================================
; Macros to define Forth headers
; HEAD label,length,name,action
@ -296,7 +296,7 @@ dodoes: ; -- a-addr
next
; CP/M TERMINAL I/O =============================
;C EMIT c -- output character to console
head EMIT,4,EMIT,docode
PUSH DE
@ -309,7 +309,7 @@ dodoes: ; -- a-addr
POP DE
pop BC ; PUT TOP OF STACK IN BC
next
;
;
;Z SAVEKEY -- addr temporary storage for KEY?
head savekey,7,SAVEKEY,dovar
SVKY: DW 0
@ -318,7 +318,7 @@ SVKY: DW 0
head querykey,4,KEY?,docode
PUSH BC ; SAVE TOP OF STACK
PUSH DE
PUSH HL ; GET CONSOLE INPUT STATUS VIA HBIOS
PUSH HL ; GET CONSOLE INPUT STATUS VIA HBIOS
LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C
LD B,CIOIST ; HBIOS FUNC: INPUT STATUS
RST 08 ; HBIOS RETURNS STATUS IN A
@ -334,7 +334,7 @@ key3: LD C,0
LD (HL),B
INC HL
LD (HL),C
POP HL
POP HL
POP DE
next
@ -1090,6 +1090,6 @@ ELSE
nop
ENDIF
.DEPHASE
END

1
Source/HBIOS/layout.inc

@ -63,6 +63,7 @@ BNK1_REMAIN .EQU BNKTOP - BNK1_IMGEND ; REMAINING
; ROM BANK 2 LAYOUT (osimg1.bin)
; ==============================
;
; NOTE FOLLOWING ARE COPY/PASTED INTO camel80.azm !!!!!!!!
FTH_LOC .EQU $0200 ; CAMEL FORTH
FTH_SIZ .EQU $1700
FTH_END .EQU FTH_LOC + FTH_SIZ

2
Source/HBIOS/romldr.asm

@ -2646,7 +2646,7 @@ ra_ent(str_fth, 'F', KY_EX, BID_IMG1, FTH_IMGLOC, FTH_LOC, FTH_SIZ, FTH_LO
ra_ent(str_play, 'P', $FF, BID_IMG1, GAM_IMGLOC, GAM_LOC, GAM_SIZ, GAM_LOC)
ra_ent(str_net, 'N', $FF, BID_IMG1, NET_IMGLOC, NET_LOC, NET_SIZ, NET_LOC)
ra_ent(str_upd, 'X', $FF, BID_IMG1, UPD_IMGLOC, UPD_LOC, UPD_SIZ, UPD_LOC)
ra_ent(str_nvr, 'W', $FF, BID_IMG1, NVR_IMGLOC, NVR_LOC, NVR_SIZ, NVR_LOC)
ra_ent(str_nvr, 'W'+$80, $FF, BID_IMG1, NVR_IMGLOC, NVR_LOC, NVR_SIZ, NVR_LOC)
ra_ent(str_user, 'U', $FF, BID_IMG1, USR_IMGLOC, USR_LOC, USR_SIZ, USR_LOC)
#endif
#if (DSKYENABLE)

Loading…
Cancel
Save