00:00:00 --- log: started forth/20.03.10 00:19:54 --- quit: MrMobius (Ping timeout: 265 seconds) 00:22:25 --- join: MrMobius joined #forth 00:32:50 --- join: [1]MrMobius joined #forth 00:35:36 --- quit: MrMobius (Ping timeout: 268 seconds) 00:35:37 --- nick: [1]MrMobius -> MrMobius 00:57:35 --- join: xek_ joined #forth 01:23:27 --- quit: dddddd (Ping timeout: 258 seconds) 01:33:02 --- join: mtsd joined #forth 01:57:52 --- join: [1]MrMobius joined #forth 02:00:53 --- quit: MrMobius (Ping timeout: 260 seconds) 02:00:53 --- nick: [1]MrMobius -> MrMobius 02:11:10 --- join: [1]MrMobius joined #forth 02:12:56 --- quit: MrMobius (Ping timeout: 255 seconds) 02:12:56 --- nick: [1]MrMobius -> MrMobius 02:32:36 --- nick: jedb_ -> jedb 02:39:29 --- quit: mtsd (Ping timeout: 255 seconds) 02:50:26 proteusguy: saw you did a first release of ActorForth. 02:50:38 I will check it out later today 02:51:23 --- join: mtsd joined #forth 03:06:11 --- quit: MrMobius (Ping timeout: 258 seconds) 03:06:38 --- join: MrMobius joined #forth 03:10:20 --- join: [2]MrMobius joined #forth 03:11:50 --- quit: MrMobius (Ping timeout: 256 seconds) 03:51:00 --- quit: WickedShell (Remote host closed the connection) 03:58:03 --- join: MrMobius joined #forth 04:00:37 --- quit: [2]MrMobius (Ping timeout: 258 seconds) 04:04:00 --- join: [1]MrMobius joined #forth 04:06:20 --- quit: MrMobius (Ping timeout: 255 seconds) 04:06:41 --- join: [2]MrMobius joined #forth 04:08:15 --- join: MrMobius joined #forth 04:09:04 --- quit: [1]MrMobius (Ping timeout: 256 seconds) 04:11:33 --- quit: [2]MrMobius (Ping timeout: 260 seconds) 04:27:24 --- quit: _whitelogger (Remote host closed the connection) 04:30:28 --- join: _whitelogger joined #forth 04:39:05 --- quit: mtsd (Ping timeout: 260 seconds) 05:08:05 --- quit: jsoft (Ping timeout: 258 seconds) 05:16:36 --- join: [1]MrMobius joined #forth 05:19:13 --- quit: MrMobius (Ping timeout: 260 seconds) 05:19:14 --- nick: [1]MrMobius -> MrMobius 05:56:46 --- quit: MrMobius (Ping timeout: 258 seconds) 06:01:26 --- nick: xek_ -> xek 06:05:03 --- join: MrMobius joined #forth 07:12:59 --- join: dddddd joined #forth 07:15:50 --- join: [1]MrMobius joined #forth 07:18:28 --- quit: MrMobius (Ping timeout: 265 seconds) 07:18:28 --- nick: [1]MrMobius -> MrMobius 07:28:49 --- quit: tabemann (Ping timeout: 240 seconds) 07:48:37 --- join: Zarutian_wc joined #forth 08:01:40 --- join: [1]MrMobius joined #forth 08:03:56 --- quit: MrMobius (Ping timeout: 255 seconds) 08:03:56 --- nick: [1]MrMobius -> MrMobius 08:17:39 --- join: X-Scale` joined #forth 08:20:31 --- quit: X-Scale (Ping timeout: 258 seconds) 08:20:32 --- nick: X-Scale` -> X-Scale 08:32:48 --- join: X-Scale` joined #forth 08:34:17 --- quit: X-Scale (Ping timeout: 260 seconds) 08:34:17 --- nick: X-Scale` -> X-Scale 08:34:51 --- quit: dave0 (Quit: dave's not here) 08:45:56 --- join: [1]MrMobius joined #forth 08:46:55 --- quit: MrMobius (Ping timeout: 265 seconds) 08:46:58 --- nick: [1]MrMobius -> MrMobius 08:59:48 --- quit: jpsamaroo (Ping timeout: 240 seconds) 09:02:49 --- join: [1]MrMobius joined #forth 09:05:05 --- quit: MrMobius (Ping timeout: 260 seconds) 09:06:00 --- join: MrMobius joined #forth 09:08:17 --- quit: [1]MrMobius (Ping timeout: 256 seconds) 09:08:20 --- join: [2]MrMobius joined #forth 09:10:59 --- quit: MrMobius (Ping timeout: 255 seconds) 10:24:00 --- quit: Zarutian_wc (Remote host closed the connection) 10:58:36 --- join: dys joined #forth 11:35:10 --- join: [1]MrMobius joined #forth 11:36:20 --- quit: [2]MrMobius (Ping timeout: 255 seconds) 11:41:17 --- quit: [1]MrMobius (Ping timeout: 256 seconds) 11:41:19 --- join: MrMobius joined #forth 12:03:15 --- join: WickedShell joined #forth 12:12:59 --- quit: rprimus (Remote host closed the connection) 12:14:16 --- quit: C-Keen (Quit: WeeChat 2.6) 12:14:37 --- join: rprimus joined #forth 13:14:53 --- quit: reepca (Ping timeout: 255 seconds) 13:24:32 --- join: jsoft joined #forth 13:36:20 --- join: [1]MrMobius joined #forth 13:38:17 --- quit: MrMobius (Ping timeout: 255 seconds) 13:38:17 --- nick: [1]MrMobius -> MrMobius 13:40:59 --- quit: jsoft (Ping timeout: 255 seconds) 14:02:21 --- quit: gravicappa (Ping timeout: 260 seconds) 14:07:29 --- quit: xek (Ping timeout: 260 seconds) 14:18:41 --- join: [1]MrMobius joined #forth 14:20:30 --- quit: MrMobius (Ping timeout: 256 seconds) 14:23:37 --- quit: [1]MrMobius (Ping timeout: 240 seconds) 14:25:40 --- join: MrMobius joined #forth 14:32:59 --- quit: MrMobius (Ping timeout: 265 seconds) 14:34:06 --- join: MrMobius joined #forth 15:01:51 --- join: [1]MrMobius joined #forth 15:03:17 --- join: dave0 joined #forth 15:03:20 --- quit: MrMobius (Ping timeout: 255 seconds) 15:05:38 --- join: MrMobius joined #forth 15:07:18 --- quit: [1]MrMobius (Ping timeout: 265 seconds) 16:16:39 --- quit: a3f (Ping timeout: 272 seconds) 16:20:54 --- join: a3f joined #forth 16:31:41 --- quit: jfe` (Ping timeout: 260 seconds) 16:34:49 --- join: jsoft joined #forth 17:01:18 --- join: jfe` joined #forth 17:06:23 --- join: tabemann joined #forth 17:13:27 hey guys 17:16:25 --- quit: MrMobius (Ping timeout: 240 seconds) 17:16:39 --- join: [1]MrMobius joined #forth 17:20:55 --- join: MrMobius joined #forth 17:21:17 --- quit: [1]MrMobius (Ping timeout: 256 seconds) 17:39:24 --- quit: jfe` (Ping timeout: 256 seconds) 18:12:25 --- quit: tabemann (Ping timeout: 265 seconds) 18:35:47 --- join: reepca joined #forth 18:57:15 --- join: [1]MrMobius joined #forth 19:00:41 --- quit: MrMobius (Ping timeout: 272 seconds) 19:00:41 --- nick: [1]MrMobius -> MrMobius 19:00:49 --- join: jfe` joined #forth 19:03:33 --- join: boru` joined #forth 19:03:36 --- quit: boru (Disconnected by services) 19:03:38 --- nick: boru` -> boru 19:04:17 --- quit: jsoft (Ping timeout: 260 seconds) 19:13:13 --- join: jsoft joined #forth 19:20:09 --- quit: jfe` (Ping timeout: 260 seconds) 19:22:06 --- join: tabemann joined #forth 19:46:23 tabemann, hey 19:46:34 --- quit: dave0 (Quit: dave's not here) 19:46:42 tabemann, I fixed my little scheduler bug, all working nicely now :) 19:49:42 nice 19:50:17 I'm dealing with a stupid bug where begin-structure ... end-structure doesn't work in compile-to-flash mode 19:50:49 I don't need or want the complexity and resource use of a multitasker but Ive been needing a simple scheduler for a while 19:52:21 the multitasker I'm writing is pretty small 19:52:41 'small' is a relative term ") 19:53:01 if you don't need much stack space, a task can be very small with it 19:53:07 --- join: jfe` joined #forth 19:54:05 the Mecrisp-Stellaris tasker uses 800 bytes of ram per task, I think ram usage per task is a metric that can be used to describe one ? 19:54:50 well I've allocated 256 to each main stack in zeptoforth 19:55:38 my current project is a stm32f051 64kB flash/8kB ram Touch Sensor peripheral evaluator 'kit' and when loaded into flash, and running the scheduler has these stats 19:56:01 Total Flash:65536 Free:17408 Used:48128 19:56:01 Total Ram:8192 Free:2148 Used:6044 19:56:08 oops 19:56:14 thats in ram 19:57:05 when flashed, it comes up like this after a cold boot 19:57:08 ------------- 19:57:08 Main Menu '?' 19:57:08 ------------- 19:57:08 s - Scan every 100ms: led lit on touch, print touch counter values. Exit: Press 'm' 19:57:08 i - print technical Information. 19:57:08 m - Menu. 19:57:12 e - Extra menu, memory stats, credits, license. 19:57:14 q - Quit to Forth OS terminal. 19:57:16 Please select a Menu Option : 19:57:48 this is the memory usage when running from flash 19:57:49 Memory stats in bytes: 19:57:50 Total Flash:65536 Free:12920 Used:52616 19:57:50 Total Ram:8192 Free:7096 Used:1096 19:59:41 the asterisks represent the sensor being touched 19:59:43 5129 19:59:43 5130 19:59:43 795 * 19:59:43 771 * 19:59:43 762 * 19:59:44 762 * 19:59:46 3621 * 19:59:48 5142 20:00:20 I've set it to a high sensitivity level and it's triggered with my hand 1/2 inch above the sensor plate 20:01:28 which is about 1/2" x 1" copper on fibreglass pcb 20:03:10 nice 20:03:48 --- join: [1]MrMobius joined #forth 20:04:39 a coin with a wire attached would work fine provided it's under some plastic 20:05:40 I was sceptical about the stability of this peripheral when I started the project but it's 100% solid and reliable 20:06:21 especially as it's running on a Disco board which is not made for low noise or specially designed for any peripheral 20:06:29 --- quit: MrMobius (Ping timeout: 265 seconds) 20:08:49 --- quit: [1]MrMobius (Ping timeout: 240 seconds) 20:09:03 --- join: MrMobius joined #forth 20:20:35 now the question is what are its applications... 20:21:10 plenty 20:21:21 the most obvious is a 'button' 20:21:39 touch the pad with a finger to activate something 20:22:12 ill have one on my development system MCU reset for instance 20:22:36 because I literally wear out push button switches 20:23:16 mainly the black one on the Disco which is the reset button. Ive worn out a couple of Discos that way so far 20:23:56 this is why a *fast* upload is *vital* to a embedded Forth development system 20:25:29 say you're developing code that has 1000 lines in ram at this present moment, you upload and get the usual 10 errors because of some typo for worse 20:25:52 the only way to proceed is to hit the mcu reset button 20:26:17 and then fix the source, re upload ... 20:27:16 I keep my ram loads small by moving tested Words to Flash, and do this 'housekeeping' regularly 20:28:22 with my board what I do is use st-flash, which automatically reboots the board when I reflash 20:28:30 of course I'm wearing out the flash this way... 20:28:45 also I made a REBOOT word 20:28:56 which reboots the board without having to touch the reset switch 20:29:16 yeah, Im just developing Forth applications, youre developing a Forth which is far harder 20:31:02 a hardware reset is essential for me, bad source can (and does) raise a exception which results in a frozen MCU after the calltrace has been dumped 20:31:18 the only way out is a hardware reset 20:31:49 I've never found a situation that reflashing the board doesn't fix 20:31:55 --- quit: jfe` (Ping timeout: 258 seconds) 20:31:58 when I upload new code the mcu is always reset via software first 20:32:05 mind you often what happens is that I wedge the board so it won't even software boot 20:32:35 heh, yeh 20:32:53 e.g. if the init routine causes a crash, as has been happening with my multitasker 20:32:55 assembly code and flash is the biggest challenge 20:33:31 because when the result is nothing obvious it's back to the drawing board 20:34:15 --- join: [1]MrMobius joined #forth 20:34:23 Forth is like the living dead in that respect because a running Forth will always tell you what went wrong, unlike assembly 20:34:52 which is why I use Forth 20:35:38 I like assembler also, but only 6800 or msp430, just not cortex-m assembler 20:35:53 whereas I find assembly easier to debug because gdb will work with assembler 20:36:01 --- quit: MrMobius (Ping timeout: 240 seconds) 20:36:01 --- nick: [1]MrMobius -> MrMobius 20:36:12 whereas if Forth crashes, well, there's no debugger 20:36:23 gdb mostly works with assembler :) 20:37:05 when I first started doing cortex-m assy my blinky program didn't as is very common 20:37:42 gdb doesn't work with disassembled code well, only code that has assembly sources available 20:37:45 which sucks 20:38:17 so when I set up the GDB stuff in that tarball I put on my site for you, I was sure that GDB would tell me what was wrong, but all that happened was the PC flew to the end of memory and everything stopped 20:38:19 as tehre have been a number of occasions here I wanted to use gdb on Forth code but couldn't 20:39:49 unlike Cutter which takes a binary and 'runs' it, kinda 20:40:03 I had very little luck with Cutter 20:40:22 it didn't provide a sufficient emulation of the STM32L476 20:40:52 in the old days I has a really nice simulator made by Avocet for the 68hc11. I could run assembled binary without source and step thru etc 20:41:15 it showed the registers etc, all the stuff one wants 20:41:39 that what I hoped Cutter would be for me, and it does work, but is a pain to set up 20:42:08 tabemann, have you seen the 'thumbulator' ? 20:42:30 thats a cli cortex-m emulator for the pc 20:43:46 and it works well enough that matthias uses it in his releases 20:44:52 I have heard of it, never used it 20:45:11 might be worth checking out 20:48:59 Thumbulator is a Thumb (16 bit ARM) instruction set simulator by dwelch67 https://github.com/dwelch67/thumbulator 20:48:59 Thumbulator is a simple alternative to QEMU/KVM etc. 20:48:59 Note 20:48:59 A modified Thumbulator is supplied and used with Mecrisp-Stellaris 20:49:12 oh, it may not work for the M4 ! 20:53:39 oops, sorry I have given you incorrect info, the thumbulator doesnt seem to have a M4 version 20:54:13 matthias has modified the basic Thumbulator to work with some chips, but not the M4 20:56:08 i was surprised recently, a Mecrisp-Stellaris user submitted a ported version for the stm32wb55 (stm32 mcu with inbuilt wireless) and he used my forth2svd stuff for his package 21:00:11 back 21:02:13 bit late in Wisconsin ? 21:06:55 yeah; it's 11:06 pm here 21:16:38 okay, now it attempts to multitask, but fails 21:19:13 WilhelmVonWeiner, let me know what you think. It's "something completely different" I suspect. 21:23:30 okay, I figured out my problem 21:23:45 the stack was exploding quickly with every PAUSE cycle 21:24:11 heh 21:39:31 --- join: gravicappa joined #forth 21:48:44 --- quit: jsoft (Ping timeout: 256 seconds) 21:53:14 --- join: jsoft joined #forth 22:25:46 --- quit: reepca (Ping timeout: 258 seconds) 22:26:48 --- join: reepca joined #forth 22:31:49 --- quit: reepca (Ping timeout: 256 seconds) 22:42:28 tabemann, you should read this :) https://www.radare.org/get/r2snow.pdf 22:42:38 it's a cli tutorial on radare2 22:44:27 and https://r2wiki.readthedocs.io/en/latest/tools/radare2/ 22:46:19 --- join: reepca joined #forth 22:51:35 --- join: [1]MrMobius joined #forth 22:51:47 --- quit: MrMobius (Ping timeout: 265 seconds) 22:51:56 --- nick: [1]MrMobius -> MrMobius 22:53:20 --- join: [1]MrMobius joined #forth 22:56:17 --- quit: MrMobius (Ping timeout: 255 seconds) 22:56:17 --- nick: [1]MrMobius -> MrMobius 23:35:50 --- join: rdrop-exit joined #forth 23:59:59 --- log: ended forth/20.03.10