1 \ -*- coding: utf-8 -*-
7 \ to see kernel options, download FastForthSpecs.f
8 \ FastForth kernel options: nothing
11 \ MSP_EXP430FR5739 MSP_EXP430FR5969 MSP_EXP430FR5994 MSP_EXP430FR6989
12 \ MSP_EXP430FR4133 MSP_EXP430FR2433 MSP_EXP430FR2355 CHIPSTICK_FR2433
24 1 ABORT" only for 1,4,8,16,24 MHz MCLK!"
28 SPACE ESC ." [7m" \ set reverse video
29 ." with MCLK = " MCLK. 1 ABORT" MHz? don't dream!"
34 : CHNGBAUD \ only for 8, 16, 24 MHz
35 PWR_STATE \ to remove this created word (garbage collector)
37 42 \ number of terminal lines
38 0 DO CR LOOP \ don't erase any line of source
40 ESC ." [1J" \ erase up (42 empty lines)
41 ESC ." [H" \ cursor home
43 FREQ_KHZ @ >R \ r-- target MCLCK frequency in MHz
44 ." target MCLK = " R@ MCLK. ." MHz" CR
45 ." choose your baudrate:" CR
48 ." 2 --> 4 MBds" CR \ linux driver max speed
49 ." 3 --> 2457600 Bds" CR
50 ." 4 --> 921600 Bds" CR
51 ." 5 --> 460800 Bds" CR
52 ." 6 --> 230400 Bds" CR
53 ." 7 --> 115200 Bds" CR
54 ." other --> abort" CR
58 #48 - ?DUP 0= \ select 6MBds ?
59 IF ." 6 MBds" \ add this to the current line
60 R@ #24000 < \ < 24MHz ?
63 R@ #24000 <> \ 24 MHz ?
64 IF BAD_MHz \ no: --> abort
68 ELSE 1 - ?DUP 0= \ select 5MBds ?
70 R@ #16000 < \ < 16MHz ?
71 IF R@ BAD_SPEED \ abort
82 ELSE 1 - ?DUP 0= \ select 4MBds ?
85 IF R@ BAD_SPEED \ abort
96 ELSE 1 - ?DUP 0= \ select 2457600 ?
99 IF R@ BAD_SPEED \ abort
114 ELSE 1 - ?DUP 0= \ select 921600 ?
117 IF R@ BAD_SPEED \ abort
137 ELSE 1 - ?DUP 0= \ select 230400 ?
140 IF R@ BAD_SPEED \ abort
160 ELSE 1 - ?DUP 0= \ select 230400 ?
163 IF R@ BAD_SPEED \ abort
188 ELSE 1 - ?DUP 0= \ select 115200 ?
213 ELSE \ other selected
223 TERMMCTLW_RST ! \ set UCAxMCTLW value in FRAM
224 TERMBRW_RST ! \ set UCAxBRW value in FRAM
225 R> DROP \ clear stacks
226 CR ESC ." [7m" \ escape sequence to set reverse video
227 ." Change baudrate in Teraterm, save its setup then reset target."