mirror of
https://github.com/wfjm/w11.git
synced 2026-03-06 11:34:31 +00:00
minor updates
- tools - asm-11/lib/defs_xu.mac: add xt.* and xr.* definitions - oskit/211bsd_rk/211bsd_rk_boot.ecmd: add tt1: mode: definition - tcl/rw11/shell.tcl: update '.h' and '.ha' text output - tcode/cpu_basics.mac: A4.4: change exemptions, e11 now like 11/70 and w11
This commit is contained in:
@@ -50,6 +50,6 @@ acceptable deviation from 11/70 behavior.
|
||||
The w11 correctly implements the 11/70 behavior.
|
||||
This is verified in a [tcode](../tools/tcode/README.md), the test is
|
||||
modified when executed on SimH
|
||||
(see [cpu_details](../tools/tcode/cpu_basics.mac) tests A4.4).
|
||||
(see [cpu_basics](../tools/tcode/cpu_basics.mac) tests A4.4).
|
||||
|
||||
Tested with SimH V3.12-3.
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
; $Id: defs_xu.mac 1376 2023-02-20 15:05:03Z mueller $
|
||||
; $Id: defs_xu.mac 1387 2023-03-27 07:29:02Z mueller $
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; Copyright 2017-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
||||
;
|
||||
; definitions for DEUNA controler
|
||||
; uses also xf,.... name prefixes for clarity
|
||||
; uses also xf,xm,xr,xs,xt,r2,r3,t2,t3 name prefixes for clarity
|
||||
;
|
||||
; vector address/priority definition
|
||||
;
|
||||
@@ -91,7 +91,14 @@
|
||||
xs.rco=000100 ; RRAM: RAM code operational
|
||||
xs.rev=000077 ; RREV: ROM revisions (field mask)
|
||||
;
|
||||
; transmit descriptor word 2 and word 3
|
||||
; transmit descriptor offsets
|
||||
;
|
||||
xt.len=0 ; SLEN[15:00] segment length
|
||||
xt.buf=2 ; SEGB[15:00] segment base MDB
|
||||
xt.fl2=4 ; flags and SEGB[17:16]
|
||||
xt.fl3=6 ; flags
|
||||
;
|
||||
; transmit descriptor word 2 (xt.fl2) and word 3 (xt.fl3)
|
||||
;
|
||||
t2.own=100000 ; OWN: if 1 owned by DEUNA
|
||||
t2.ers=040000 ; ERRS: error summary
|
||||
@@ -107,6 +114,13 @@
|
||||
t3.lca=004000 ; LCAR: loss of carrier
|
||||
t3.rle=002000 ; RTRY: retry limit exceeded
|
||||
;
|
||||
; receive descriptor offsets
|
||||
;
|
||||
xr.len=0 ; SLEN[15:01] segment length
|
||||
xr.buf=2 ; SEGB[15:00] segment base MDB
|
||||
xr.fl2=4 ; flags and SEGB[17:16]
|
||||
xr.fl3=6 ; flags and MLEN
|
||||
;
|
||||
; receive descriptor word 2 and word 3
|
||||
;
|
||||
r2.own=100000 ; OWN: if 1 owned by DEUNA
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
; $Id: 211bsd_rk_boot.ecmd 1381 2023-03-12 12:16:45Z mueller $
|
||||
; $Id: 211bsd_rk_boot.ecmd 1388 2023-05-19 15:18:42Z mueller $
|
||||
;
|
||||
; Setup file for 2.11BSD RK based system
|
||||
;
|
||||
@@ -7,6 +7,7 @@
|
||||
;
|
||||
@../../e11/setup_w11a_max.ecmd
|
||||
set tt0: mode=9600,N,7,1
|
||||
set tt1: mode=9600,N,7,1
|
||||
;
|
||||
mount dk0: 211bsd_rk_root.dsk /RK05
|
||||
mount dk1: 211bsd_rk_swap.dsk /RK05
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Rw11CntlDEUNA.cpp 1379 2023-02-24 09:17:23Z mueller $
|
||||
// $Id: Rw11CntlDEUNA.cpp 1380 2023-02-25 13:07:07Z mueller $
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
// Copyright 2014-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
||||
//
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: Rw11CntlDEUNA.hpp 1379 2023-02-24 09:17:23Z mueller $
|
||||
// $Id: Rw11CntlDEUNA.hpp 1380 2023-02-25 13:07:07Z mueller $
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
// Copyright 2014-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
||||
//
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// $Id: RtclRw11CntlDEUNA.cpp 1379 2023-02-24 09:17:23Z mueller $
|
||||
// $Id: RtclRw11CntlDEUNA.cpp 1380 2023-02-25 13:07:07Z mueller $
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
// Copyright 2014-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
||||
//
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
# $Id: shell.tcl 1374 2023-02-18 10:30:46Z mueller $
|
||||
# $Id: shell.tcl 1387 2023-03-27 07:29:02Z mueller $
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
# Copyright 2015-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
||||
#
|
||||
# Revision History:
|
||||
# Date Rev Version Comment
|
||||
# 2023-02-17 1374 2.2.7 update '.ha' text output
|
||||
# 2023-03-26 1387 2.2.7 update '.h' and '.ha' text output
|
||||
# 2023-01-31 1362 2.2.6 add rw11::shell_attnmuted to mute CPU attn messages
|
||||
# 2018-10-21 1058 2.2.5 add after#\d+ scrubber (a real HACK, sorry)
|
||||
# 2017-04-23 885 2.2.4 adopt .cm* to new interface
|
||||
@@ -581,7 +581,7 @@ namespace eval rw11 {
|
||||
append rval "\n .d aspec vals ; deposit"
|
||||
append rval "\n ; see .ha for help on aspec format"
|
||||
append rval "\nCPU hardware breakpoint:"
|
||||
append rval "\n .bs ind typ lo hi ; set bpt"
|
||||
append rval "\n .bs ind typ lo hi ; set bpt; typ: \[ksu\]?\[rwi\]+"
|
||||
append rval "\n .br ?ind? ; remove bpt"
|
||||
append rval "\n .bl ; list bpt"
|
||||
if {[$shell_cpu get hascmon]} {
|
||||
@@ -592,14 +592,14 @@ namespace eval rw11 {
|
||||
}
|
||||
if {[$shell_cpu get hasibmon]} {
|
||||
append rval "\nibus monitor:"
|
||||
append rval "\n .ime ; ibmon enable; mode: \[lrcnRW\]*"
|
||||
append rval "\n .ime ?mode? ; ibmon enable; mode: \[lrcnRW\]*"
|
||||
append rval "\n .imd ; ibmon disable"
|
||||
append rval "\n .imf ?lo? ?hi? ; ibmon filter"
|
||||
append rval "\n .iml ?nent? ; ibmon list"
|
||||
}
|
||||
if {[rlc get hasrbmon]} {
|
||||
append rval "\nrbus monitor:"
|
||||
append rval "\n .rme ; rbmon enable; mode: \[nRW\]*"
|
||||
append rval "\n .rme ?mode? ; rbmon enable; mode: \[nRW\]*"
|
||||
append rval "\n .rmd ; rbmon disable"
|
||||
append rval "\n .rmf ?lo? ?hi? ; rbmon filter"
|
||||
append rval "\n .rml ?nent? ; rbmon list"
|
||||
@@ -610,6 +610,7 @@ namespace eval rw11 {
|
||||
append rval "\nmiscellaneous:"
|
||||
append rval "\n .hr ?name? ?am? ; list ibus registers; am: \[rl\]\[rw\]"
|
||||
append rval "\n .h ; this help text"
|
||||
append rval "\n .ha ; help text on .e,.g,.d aspec format"
|
||||
append rval "\n .q ; quit shell, return to ti_rri"
|
||||
append rval "\n .qq ; quit ti_rri unconditionally"
|
||||
return $rval
|
||||
@@ -635,9 +636,9 @@ namespace eval rw11 {
|
||||
append rval "\n"
|
||||
append rval "\nopt format (multiple opt's allowed)"
|
||||
append rval "\n nnn - repeat count (decimal, in words)"
|
||||
append rval "\n l - for iopage access: loc (as seen by CPU)"
|
||||
append rval "\n l - for iopage access: loc (as seen by CPU) (default)"
|
||||
append rval "\n r - for iopage access: rem (as seen by rlink)"
|
||||
append rval "\n p - for memory access: physical (16bit)"
|
||||
append rval "\n p - for memory access: physical (16bit) (default)"
|
||||
append rval "\n e - for memory access: extended (22 bit)"
|
||||
append rval "\n u - for memory access via ubmap (22 bit)"
|
||||
append rval "\n MS - for memory access via mmu mode=M and space=S"
|
||||
@@ -657,7 +658,7 @@ namespace eval rw11 {
|
||||
append rval "\n .e rpa.cs1 - register rhrp.cs1"
|
||||
append rval "\n .e rpa.cs1/12/r - 12 regs starting rpa.cs1, rlink view"
|
||||
append rval "\n .e @pc/8/ci/i - use pc, mmu in ci mode, 8 words as instructions"
|
||||
append rval "\n .e @r0/8/cd - use r0. mmu in cd mode, show 8 words"
|
||||
append rval "\n .e @r0/8/cd - use r0, mmu in cd mode, show 8 words"
|
||||
return $rval
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
; $Id: cpu_basics.mac 1358 2023-01-27 10:37:36Z mueller $
|
||||
; $Id: cpu_basics.mac 1388 2023-05-19 15:18:42Z mueller $
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; Copyright 2015-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
||||
;
|
||||
; Revision History:
|
||||
; Date Rev Version Comment
|
||||
; 2023-03-27 1388 1.1.1 A4.4: change exemptions, e11 now like 11/70 and w11
|
||||
; 2023-01-27 1358 1.1 use .mcall and mlib
|
||||
; 2023-01-07 1347 1.0 Initial version
|
||||
; 2015-08-30 710 0.1 First draft
|
||||
@@ -988,12 +989,13 @@ ta0404: hcmpeq sp,#stack ; check stack is default
|
||||
hcmpeq sp,200$ ; check loaded SP
|
||||
mov #stack-2,sp ; restore stack to where jsr pushed it
|
||||
;
|
||||
; w11 saves original sp, like 11/70, SimH,e11 save sp after it was decremented
|
||||
; w11 saves original sp, like 11/70, and e11
|
||||
; SimH saves sp after it was decremented
|
||||
;
|
||||
mov #stack,r1
|
||||
tstb systyp ; check environment
|
||||
bge 210$ ; >=0 is on w11
|
||||
sub #2,r1 ; if not, subtract 2 (now sp-2)
|
||||
cmpb systyp,#sy.sih ; on SimH ?
|
||||
bne 210$
|
||||
sub #2,r1 ; if yes, subtract 2 (now sp-2)
|
||||
210$: hcmpeq (sp)+,r1 ; check jsr stored stack pointer
|
||||
hcmpeq 100$,#123 ; check writes via SP in routine
|
||||
hcmpeq 100$+2,#345 ; check writes via SP in routine
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
; $Id: cpu_mmu.mac 1385 2023-03-23 08:27:44Z mueller $
|
||||
; $Id: cpu_mmu.mac 1386 2023-03-25 18:35:46Z mueller $
|
||||
; SPDX-License-Identifier: GPL-3.0-or-later
|
||||
; Copyright 2022-2023 by Walter F.J. Mueller <W.F.J.Mueller@gsi.de>
|
||||
;
|
||||
@@ -1545,7 +1545,7 @@ tc0206: mov kipdr0,sipdr0 ; super page 0 1-to-1
|
||||
hcmpeq 2(sp),#cp.cms!cp.pr2 ; PS: should be code signature
|
||||
;
|
||||
; check mmr0,mmr1,mmr2 instruction complete (unless on SimH)
|
||||
; Note: w11 has one SP decrements in the case, 11/70 and e11 two.
|
||||
; Note: w11 has one SP decrement in the case, 11/70 and e11 have two.
|
||||
cmpb systyp,#sy.sih
|
||||
beq 490$
|
||||
cmpb systyp,#sy.e11
|
||||
|
||||
Reference in New Issue
Block a user