2 \ MSP_EXP430FR5739 MSP_EXP430FR5969 MSP_EXP430FR5994 MSP_EXP430FR6989
3 \ MSP_EXP430FR4133 MSP_EXP430FR2433 MSP_EXP430FR2355 CHIPSTICK_FR2433
10 \ how to test SD_CARD driver on your launchpad:
13 \ remove the jumpers RX, TX of programming port (don't remove GND, TST, RST and VCC)
14 \ wire PL2303TA/HXD: GND <-> GND, RX <-- TX, TX --> RX
15 \ connect it to your PC on a free USB port
16 \ connect the PL2303TA/HXD cable to your PC on another free USB port
17 \ configure TERATERM as indicated in forthMSP430FR.asm
20 \ if you have a MSP-EXP430FR5994 launchpad, program it with MSP_EXP430FR5994_3Mbds_SD_CARD.txt
21 \ to do, drag and drop this file onto prog.bat
25 \ else edit forthMSP430FR.asm with scite editor
26 \ uncomment your target, copy it
27 \ paste it into (SHIFT+F8) param1
31 \ TERMINALBAUDRATE .equ 3000000
38 \ compile for your target (CTRL+0)
40 \ program your target via TI interface (CTRL+1)
42 \ then wire your SD_Card module as described in your MSP430-FORTH\target.pat file
46 \ format FAT16 or FAT32 a SD_CARD memory (max 64GB) with "FRxxxx" in the disk name
47 \ drag and drop \MSP430_COND\MISC folder on the root of this SD_CARD memory (FastForth doesn't do yet)
48 \ put it in your target SD slot
49 \ if no reset, type COLD from the console input (teraterm) to reset FAST FORTH
51 \ with MSP430FR5xxx or MSP430FR6xxx targets, you can first set RTC:
52 \ by downloading RTC.f with SendSourceFileToTarget.bat
53 \ then terminal input asks you to type (with spaces) (DMY), then (HMS),
54 \ So, subsequent copied files will be dated:
56 \ with CopySourceFileToTarget_SD_Card.bat (or better, from scite editor, menu tools):
58 \ copy TESTASM.4TH to \MISC\TESTASM.4TH (add path \MISC in the window opened by TERATERM)
59 \ copy TSTWORDS.4TH to \TSTWORDS.4TH
60 \ copy CORETEST_xMPY.4TH to \CORETEST.4TH (x=S for FR4133, else x=H; suppr _xMPY in the window opened by TERATERM)
61 \ copy SD_TOOLS.f to \SD_TOOLS.4TH
62 \ copy SD_TEST.f to \SD_TEST.4TH
63 \ copy PROG100k.f to \PROG100k.4TH
64 \ copy RTC.f to \RTC.4TH ( doesn't work with if FR2xxx or FR4xxx)
68 [DEFINED] {SD_TEST} [IF] {SD_TEST} [THEN] \ remove {SD_TEST}
70 [DEFINED] ASM [DEFINED] TERM2SD" AND [IF] \ requirements test
74 [UNDEFINED] MAX [IF] \ MAX and MIN are defined in {ANS_COMP}
75 CODE MAX \ n1 n2 -- n3 signed maximum
82 CODE MIN \ n1 n2 -- n3 signed minimum
90 [UNDEFINED] U.R [IF] \ defined in {UTILITY}
91 : U.R \ u n -- display u unsigned in n width (n >= 2)
93 R> OVER - 0 MAX SPACES TYPE
97 [UNDEFINED] DUMP [IF] \ defined in {UTILITY}
98 \ https://forth-standard.org/standard/tools/DUMP
99 CODE DUMP \ adr n -- dump memory
101 PUSH &BASE \ save current base
102 MOV #$10,&BASE \ HEX base
103 ADD @PSP,TOS \ -- ORG END
105 SWAP OVER OVER \ -- END ORG END ORG
106 U. 1 - U. \ -- END ORG display org end-1
107 $FFF0 AND \ -- END ORG_modulo_16
108 DO CR \ generate line
109 I 7 U.R SPACE \ generate address
110 I $10 + I \ display 16 bytes
113 I $10 + I \ display 16 chars
114 DO I C@ $7E MIN BL MAX EMIT LOOP
116 R> BASE ! \ restore current base
123 ." 0 Set date and time" CR
124 ." 1 Load {UTILITY} words" CR
125 ." 2 Load {SD_TOOLS} words" CR
126 ." 3 Load {ANS_COMP} words" CR
127 ." 4 Load ANS core tests" CR
128 ." 5 Load a 100k program " CR
129 ." 6 Read only this source file" CR
130 ." 7 Write a dump of FORTH to YOURFILE.TXT" CR
131 ." 8 append a dump of FORTH to YOURFILE.TXT" CR
132 ." 9 Load TST_WORDS" CR
150 PWR_STATE \ remove words
155 PWR_STATE \ remove words
161 READ \ sequentially read 512 bytes
162 UNTIL \ prog10k.4TH is closed
168 PROGRAMSTART HERE OVER - DUMP
169 ['] EMIT >BODY IS EMIT
176 PROGRAMSTART HERE OVER - DUMP
177 ['] EMIT >BODY IS EMIT
196 \ AGAIN \ LOAD" don't work with loop tests.......
199 PWR_HERE \ to don't forget, otherwise SD_TEST destroys itself by downloading files comprising "PWR_HERE" command...