wfjm
65ed443ffc
asm-11 asm-11 BUGFIXes; cpu_mmu.mac fix
...
- tools/bin
- asm-11
- tools/tcode/cpu_(details|mmu).mac: use rt?jmp, hta??? macros
- BUGFIX expressions: allow uop after bop operator
- BUGFIX proper sign handling for '/','*' and .if ge,gt,le,lt
- add 'S' error when code size too large
- tcode/cpu_mmu.mac: remove <../100> expressions for 6 bit right shift
2023-01-29 14:50:14 +01:00
wfjm
82349ddcee
asm-11 .list update; tcode updates
...
- tools/bin
- asm-11
- add minimal .list,.nlist (cnd,me,meb) directive support
- add -(n)list options
- tools/asm-11
- tests(-err): some tuneups
- mlib: some macros added, some tuneups
- tools/tcode/cpu_(details|mmu).mac: use rt?jmp, hta??? macros
2023-01-28 08:35:37 +01:00
wfjm
1627b34e3e
tcode: use .mcall and mlib
2023-01-27 11:39:28 +01:00
wfjm
bc958525b5
asm-11 BUGFIX: support @(R) modifier with omitted offset
...
- tools
- bin/asm-11: BUGFIX: support @(R) modifier with omitted offset
- asm-11/tests/test_0100_op_(g|gg|rg).mac: add @(R) test cases
- tcode/cpu_(basics|details|selftest).mac: use @(R)
2023-01-21 19:15:12 +01:00
wfjm
3318f99276
BUGFIX: handle CPUERR.rsv correctly
...
- rtl/w11a
- pdp11.vhd: vm_stat_type: add err_ser
- pdp11_sequencer.vhd: BUGFIX: handle CPUERR.rsv correctly
- pdp11_vmbox.vhd: use err_ser to indicate fatal stack error
- tools/tcode/cpu_details.mac: update A2.7-10
2023-01-11 17:31:21 +01:00
wfjm
7f2d7f97d0
add tbench test_w11a_cpu_halt; minor changes; cosmetics
...
- tools/src/
- librwxxtpp/RtclRw11Cpu.cpp: fix rust code name
- tools/tbench
- cp/test_cp_cpubasics.tcl: use symbolic names via regbld
- w11a/test_w11a_cdma.tcl: fix attention harvest
- w11a/test_w11a_cpu_halt.tcl: added, verifies fatal CPU halts
- w11a/test_w11a_inst_wait.tcl: check cpu status
- w11a/w11a_all.dat: add test_w11a_cpu_halt.tc
- tools/tcode
- cpu_basics.mac: extend test A4.5
2023-01-07 13:51:33 +01:00
wfjm
ba4aa45c48
update tbench and tcode
...
- tools/bin/tmuconv: add memory system register names
- tools/src
- librw11/Rw11Cpu: add kCPUUBMAP
- librwxxtpp/RtclRw11Cpu.cpp: use kCPUUBMAP
- tools/tbench
- cp/cp_all.dat: add test_cp_ubmap.tcl
- cp/test_cp_cpubasics.tcl: add creset test
- cp/test_cp_gr.tcl: streamline, use longer command chains
- cp/test_cp_membasics.tcl: add 22bit mode tests
- cp/test_cp_ubmap.tcl: added, test access via ubmap
- w11a/test_w11a_dstr_word_flow.tcl: renamed from test_w11a_dstm_word_flow.tcl
- w11a/test_w11a_cdma.tcl: added, test bwm/brm with active CPU
- w11a/test_w11a_inst_traps.tcl: use defs_cpu.mac include
- w11a/test_w11a_inst_wait.tcl: added, tests WAIT instruction
- w11a/w11a_all.dat: add test_w11a_inst_wait.tcl, test_w11a_cdma.tcl
- tools/tcl/rw11/defs.tcl: add A_UBMAP
- tools/tcode
- cpu_details.mac: add A5
- cpu_mmu.mac: add F2
2023-01-06 14:02:45 +01:00
wfjm
fdc3479c14
final round for initial tcode version
...
- tools/tcode
- cpu_basics.mac: add A4.5
- cpu_details.mac: add B1.4, B2.3, B4.1-3
- cpu_mmu.mac: add B3.3
- cpu_selftest.mac: add B1
2023-01-05 09:10:34 +01:00
wfjm
146dc4d56a
docu and comment updates [skip ci]
2023-01-04 08:46:30 +01:00
wfjm
6831d1cda5
conclude cc and abort review, accept s_opg_gen handling
...
- tools/tcode/cpu_details.mac: add B3.4
2023-01-03 09:27:13 +01:00
wfjm
26daa71634
BUGFIX: cc state unchanged after abort - mtp/mfp case
...
- rtl/w11a/
- pdp11_dpath.vhd: use c_dpath_dsrc_src,c_dpath_ddst_dst
- pdp11_sequencer.vhd: BUGFIX: cc state unchanged after abort (mtp/mfp)
- tools/tcode
- cpu_basics.mac: add F4.1-6
- cpu_details.mac: add B3.2-3
2023-01-02 16:27:46 +01:00
wfjm
b59d545956
BUGFIX: cc state unchanged after abort - dstw case
...
- rtl/w11a/
- pdp11_psr.vhd: BUGFIX: inhibit CCWE when PSW being written
- pdp11_sequencer.vhd: BUGFIX: cc state unchanged after abort
- tools
- bin/tmuconv: fix ru header
- gwstart/lib/psr.tcl: added, definitions for psr
- tcode/cpu_details.mac: update A4.1, add B3.1
Closes #37
2023-01-01 11:45:41 +01:00
wfjm
67437bf140
minor cleanups; update vmfset and imfset
...
- Makefile: drop ISE targets except for w11a
- rtl/sys_gen/**/*.*mfset: accomodate recent changes
- rtl/w11a
- pdp11_dpath.vhd: remove PCOUT port
- pdp11_sequencer.vhd: remove PC port
2022-12-27 13:32:12 +01:00
wfjm
c9d447f2be
tbit trap overhaul - part 2
...
- rtl/w11a
- pdp11_sequencer.vhd: tbit logic overhaul 2, now fully 11/70 compatible
- tools/tcode
- cpu_details.mac: add A4.4 part 0,8,9,10
- cpu_mmu.mac: use m*pd
2022-12-26 12:26:51 +01:00
wfjm
dc9005e98a
doc and comment updates [skip ci]
2022-12-25 09:07:26 +01:00
wfjm
0875d4e8fa
docu updates [skip ci]
2022-12-21 12:58:05 +01:00
wfjm
78e033cda7
fix MMU trap after IB access; add vector push abort recovery demonstrator
...
- rtl/w11a
- pdp11_mmu.vhd: some logic cleanup
- pdp11_vmbox.vhd: BUGFIX: request mmu trap also on ib accesses
- tools/tcode/cpu_mmu.mac: add D2.1 (vector abort recovery demo) and E1.5
2022-12-18 13:03:49 +01:00
wfjm
ef5c6b1ee3
pdp11_sequencer: implement MMR0,MMR2 instruction complete
...
- rtl/w11a
- pdp11.vhd: dm_stat_se_type: rename vfetch -> vstart;
mmu_moni_type: drop pc,idone, add vstart,vflow
pdp11_mmu_mmr12: add VADDR port
- pdp11_dmcmon.vhd: dm_stat_se_type: rename vfetch -> vstart
- pdp11_mmu.vhd: implement MMR0 instruction complete
- pdp11_mmu_mmr12.vhd: implement MMR2 instruction complete
- pdp11_sequencer.vhd: implement MMR0,MMR2 instruction complete
- pdp11_sys70.vhd: dm_stat_se_type: rename vfetch -> vstart
- tools
- tbench/w11a_pcnt/test_pcnt_basics.tcl: rename vfetch -> vstart
- tbench/w11a_pcnt/test_pcnt_codes.tcl: rename vfetch -> vstart
- tcl/rw11/dmcmon.tcl: rename vfetch -> vstart
- tcl/rw11/dmpcnt.tcl: rename vfetch -> vstart
- tcode/cpu_mmu.mac: rename C2.7 -> C2.10, add C2.7-9
- xxdp/ekbee1_patch_w11a.tcl: now patch for MMR1, not longer skip
2022-12-16 19:18:50 +01:00
wfjm
2407e662a9
pdp11_sequencer: BUGFIX: get correct PS after vector push abort
...
- rtl/w11a
- pdp11.vhd: add cpustat_type in_vecflow
- pdp11_sequencer.vhd: BUGFIX: get correct PS after vector push abort
- tools
- tcode/cpu_details.mac: add test A3.5
- tcode/cpu_mmu.mac: add test C2.5, C2.6, C2.7
- xxdp/ekbee1_patch_1170.scmd: fix test 122
- xxdp/ekbee1_patch_w11a.tcl: fix test 122
2022-12-12 09:02:34 +01:00
wfjm
a442a225e5
add tools/xxdp; tcode comments [skip ci]
2022-12-10 08:40:42 +01:00
wfjm
44c96ec4ab
tbit trap overhaul; fix RESET wait
...
- rtl/w11a:
- pdp11.vhd: add cpustat_type treq_tbit and resetcnt; use op_rti rather op_rtt
- pdp11_decode.vhd: use op_rti rather op_rtt
- pdp11_sequencer.vhd: tbit logic overhaul; use treq_tbit; cleanups;
use resetcnt for 8 cycle RESET wait
- rtl/sys_gen/w11a/s3board/sys_conf.vhd: disable monitors for timing closure
- rtl/sys_gen/w11a/*/*.vmfset: drop removed signals
- tools
- asm-11/lib/push_pop.mac: add push2
- tbench/w11a/test_w11a_inst_quick.tcl: use creset option to clr pending traps
- tcl/rw11/asm.tcl: asmrun: add creset option (active with ps option)
- tcode/cpu_basics.mac: add F2.3 (reset settling time)
- tcode/cpu_details.mac: add A4.* (PSW + tbit traps)
2022-12-07 15:48:48 +01:00
wfjm
93307c746d
minor edits; add cpu_mmu test
...
- tools/bin/tmuconv: change VFETCH text for MMU(250) and FPP(244)
- tools/tcode/cpu_mmu.mac: add test C2.4: mmu abort vs nxm abort
- doc/w11a_diff_70_mmu_nxm_prio.md: additional known w11 difference
2022-12-02 10:29:03 +01:00
wfjm
2421554d4e
renames, cleanups, SimH V3.12-3 ready
...
- rtl/w11a
- pdp11.vhd: rename cpuerr_type adderr->oddadr etc
- pdp11_mmu.vhd: rename mmu_mmr0_type dspace->page_dspace
- pdp11_sequencer.vhd: rename adderr -> oddadr, don't set after err_mmu
- tools/asm-11/lib/defs_reg70.mac: rename cp.aer -> cp.odd
- tools/dasm-11/lib/defs_reg70.das: rename cp.aer -> cp.odd
- tools/tcl/rw11/defs.tcl: rename adderr -> oddadr (in cpuerr)
- tools/tcode
- cpu_details.mac: minor updates; get SimH V3.12-3 ready
- cpu_mmu.mac: minor updates; get SimH V3.12-3 ready
2022-12-01 09:04:57 +01:00
wfjm
f6ff0fa701
pdp11_sequencer: BUGFIX: correct mmu trap vs interrupt priority
...
- rtl/w11a/pdp11_sequencer: BUGFIX: correct mmu trap vs interrupt priority
- tools/asm-11/lib/halt_checks.mac: add htstge
- tools/tcode
- cpu_details.mac: add test A1.2
- cpu_mmu.mac: add test E2.1
2022-11-29 08:41:18 +01:00
wfjm
85f1854c60
pdp11_sequencer: BUGFIX: correct mmu trap handing in s_idecode
...
- rtl/w11a
- pdp11.vhd: add cpustat_type intpend
- pdp11_sequencer: BUGFIX: correct mmu trap handing in s_idecode
- tools/tbench/rhrp/test_rhrp_int.tcl: increase expected interrupt latency
- tools/tcode/cpu_mmu.mac: add E1.3 and E1.4
Closes #36
2022-11-24 16:19:20 +01:00
wfjm
40608e35fe
pdp11_sequencer: BUGFIX: correct ysv flow implementation
...
- rtl/w11a
- pdp11.vhd: rename, eg srv->ser; drop trap_done; add in_vecysv
- pdp11_sequencer: renames; BUGFIX: correct ysv flow implementation
- pdp11_vmbox.vhd: rename some rsv->ser; remove obsolete trap_done
- tools/tbench/w11a/test_w11a_cpuerr.tcl: removed, all in cpu_details.mac
- tools/tcl/rw11/defs.tcl: renames
- tools/tcode/cpu_details.mac: expand A3.3, add A3.4
2022-11-23 08:46:12 +01:00
wfjm
b5189053d3
pdp11_vmbox: BUGFIX: correct red/yellow zone boundary
2022-11-20 13:14:23 +01:00
wfjm
3542cc5ca2
do STKLIM check for mode 1,2,4,6 in dstr flows
...
- pdp11_sequencer.vhd: BUGFIX: use is_kstackdst1246 also in dstr flow
- tools/asm-11/lib/
- defs_cpu.mac: rename cp.sli -> cp.slr
- halt_checks.mac: add htstne, htsbne
- tools/tcode
- cpu_basics.mac: rename cp.sli -> cp.slr
- cpu_details.mac: add Test A3: STKLIM
- cpu_(eis|mmu).mac,tcode.ecmd: editorial changes
2022-11-18 17:00:06 +01:00
wfjm
2b7b47e169
minor tcode updates
...
- cpu_mmu.mac: make C2.3 test more robust
- tcode.ecmd: use 'set cpu nouwin' to emulate w11 behavior
2022-10-29 15:01:20 +02:00
wfjm
9ca20e39ac
get ready for V0.792
...
- rtl/w11a/tb/
- tbrun.yml: retire last tb_pdp11core_stim.dat based test
- tb_pdp11core_stim.dat: remove file, now unused and obsolete
- tools/tcode/tcode.ecmd: ensure that unibus map window is not memory
- tools/dox/*.Doxyfile: up version
2022-10-25 09:25:36 +02:00
wfjm
22a2eeea9d
tcode: add tests; minor changes
...
- cpu_details.mac: add C1.* tests
- cpu_mmu.mac: B4.1: check stored PC in SimH and w11 case
2022-10-23 09:47:14 +02:00
wfjm
11091f15bc
tcode: add CPU mode 10 tests; minor changes
...
- cpu_details.mac: fix systyp checks;
- cpu_mmu.mac: add MMR0/3 unimplented bit tests; add B4.1 and B4.2 tests
2022-10-22 12:22:07 +02:00
wfjm
6ff9c8e57c
tcode: add CPUERR tests; minor changes
...
- cpu_details.mac: add section A2.* (cpuerr tests)
- tcode_exec.scmd: use 3M config; set STOP_SPA to 0
2022-10-18 09:01:17 +02:00
wfjm
3134c8ac82
finalize fix for I space mode=1 in s_dstr_def
2022-10-06 11:25:15 +02:00
wfjm
278d2e229d
pdp11_sequencer: BUGFIX: use I space for all mode=1,2,3 if reg=pc
...
- tcode/cpu_mmu.mac: add test F1.1 (verify fix)
Closes #35
2022-09-12 11:12:59 +02:00
wfjm
1644863a58
pdp11_mmu.vhd: BUGFIX: correct trap and PDR A logic
...
- tools/asm-11/lib/defs_mmu.mac: rename md.a??, saner names for ACF
- tcode/cpu_mmu.mac: add E1.1, test m0.trp, pdr aia/aiw transitions (verify fix)
Closes #34
Closes #33
Closes #26
Closes #25
2022-09-09 09:01:06 +02:00
wfjm
6820bba0e4
cpu_mmu: add C2.2 and C2.3 tests
2022-09-04 07:57:42 +02:00
wfjm
5a28096eb6
cpu_mmu: add C2.1 test
2022-08-31 08:06:52 +02:00
wfjm
1b4b641d57
cpu_mmu: add D1.1: full mmr2+mmr1 test
2022-08-30 07:56:31 +02:00
wfjm
84d3f181bd
cpu_basics.mac:test jsr sp,dst and rts sp
2022-08-27 09:02:30 +02:00
wfjm
7f9506b201
add systyp checking; add w11 specific tcode tests
...
- tcode_std_start.mac: system type (w11,simh,e11) detection via sysid
- cpu_mmu.mac: add a test done for w11 only
- tcode.ecmd,tcode_exec.scmd: set up sysid
2022-08-25 09:00:53 +02:00
wfjm
48e08a5bcb
ssr->mmr rename: the final cleanup
2022-08-18 09:06:43 +02:00
wfjm
bc0a9907df
tcode: Makefile auto-dependency; tcode_std_start bugfix
2022-08-12 08:01:02 +02:00
wfjm
fc10cc5321
*.mac: ssr->mmr rename
2022-08-09 10:13:07 +02:00
wfjm
e8fc9fa366
tcode: add Makefile [skip ci]
2022-08-08 09:40:44 +02:00
wfjm
063ad4c4c0
updates for cpu_mmu.mac and stktst/data
...
- cpu_mmu.mac: test mmr0,1,3; test m*p* sp access; use call/return;
- stktst/data/2022-08-03: add note on bsd kernel version confusion
2022-08-07 08:05:00 +02:00
wfjm
6d98a17e86
cpu_eis.mac: DIV tests: ignore NZ when V=1
...
- N and Z are unspecified when DIV returns with V=1
- w11 and Simh show indentical behavior, different from a real 11/70
- e11 models the 11/70 closely, and differs thus from w11 and SimH
- since tcodes should run on w11, SimH and e11, the N and Z cc's are ignored
2022-08-03 16:03:20 +02:00
wfjm
c3f36925c2
use call+return+push+pop
...
- tools/tcode/*.mac: use call+return+push+pop
- tools/asm-11
- lib/push_pop.mac: added, contains push/pop macros
- lib/tcode_std_start.mac: include push_pop.mac; ensure PRI=0 at start
- tests/test_0170_misc.mac: added, verifies call,return response
2022-07-30 11:14:57 +02:00
wfjm
d0ca1224e5
tcodes: use hcmpeq macro and friends
2022-07-28 08:23:07 +02:00
wfjm
14877b7aa7
tcodes: cpu_mmu.mac added; use macros
...
- tools/asm-11/lib/halt_checks.mac: added, tcode support macros
- tools/tcode/cpu_mmu.mac: added, with first sections
2022-07-27 08:11:37 +02:00