|
|
1.1 ! root 1: \ 7.5 Firmware Debugging command group ! 2: ! 3: ! 4: \ 7.5.1 Automatic stack display ! 5: ! 6: : (.s ! 7: depth 0 ?do ! 8: depth i - 1- pick . ! 9: loop ! 10: depth 0<> if ascii < emit space then ! 11: ; ! 12: ! 13: : showstack ( -- ) ! 14: ['] (.s to status ! 15: ; ! 16: ! 17: : noshowstack ( -- ) ! 18: ['] noop to status ! 19: ; ! 20: ! 21: \ 7.5.2 Serial download ! 22: ! 23: : dl ( -- ) ! 24: ; ! 25: ! 26: ! 27: \ 7.5.3 Dictionary ! 28: ! 29: \ 7.5.3.1 Dictionary search ! 30: : .calls ( xt -- ) ! 31: ; ! 32: ! 33: : $sift ( text-addr text-len -- ) ! 34: ; ! 35: ! 36: : sifting ( "text< >" -- ) ! 37: ; ! 38: ! 39: \ : words ( -- ) ! 40: \ \ Implemented in forth bootstrap. ! 41: \ ; ! 42: ! 43: ! 44: \ 7.5.3.2 Decompiler ! 45: ! 46: \ implemented in see.fs ! 47: ! 48: \ : see ( "old-name< >" -- ) ! 49: \ ; ! 50: ! 51: \ : (see) ( xt -- ) ! 52: \ ; ! 53: ! 54: ! 55: \ 7.5.3.3 Patch ! 56: ! 57: : patch ( "new-name< >old-name< >word-to-patch< >" -- ) ! 58: ; ! 59: ! 60: : (patch) ( new-n1 num1? old-n2 num2? xt -- ) ! 61: ; ! 62: ! 63: ! 64: \ 7.5.3.4 Forth source-level debugger ! 65: ! 66: : debug ( "old-name< >" -- ) ! 67: parse-word \ Look up word CFA in dictionary ! 68: $find ! 69: 0 = if ! 70: ." could not locate word for debugging" ! 71: 2drop ! 72: else ! 73: (debug ! 74: then ! 75: ; ! 76: ! 77: : stepping ( -- ) ! 78: ; ! 79: ! 80: : tracing ( -- ) ! 81: ; ! 82: ! 83: : debug-off ( -- ) ! 84: (debug-off) ! 85: ; ! 86: ! 87: : resume ( -- ) ! 88: \ Set interpreter termination flag ! 89: 1 to terminate? ! 90: ;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.