Search found 103 matches

by gray
Mon Mar 11, 2019 9:39 am
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Storage.mod Question
Replies: 4
Views: 21840

Storage.mod Question

I am baffled by the following behaviour (Cortex M3, STM32F207 target). Here's a minimal test case, condensed and abstracted from my actual code. MODULE testalloc; IMPORT Main, Out; TYPE P = POINTER TO Pdesc; Pdesc = RECORD i: INTEGER END; VAR p: P; BEGIN NEW(p); p.i := 13; Out.Int(p.i, 0); Out.Ln EN...
by gray
Mon Mar 04, 2019 9:14 pm
Forum: Getting Started
Topic: Forward References
Replies: 1
Views: 19260

Forward References

I need to reference procedures that are defined further down in the program text. It's not possible to re-arrange the code in a way that this can be avoided (use case: a state machine, where each state is represented by a procedure, and certain state changes will require forward refs). (Astrobe) Obe...
by gray
Mon Mar 04, 2019 8:56 pm
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: IDE Terminal Output Behaviour
Replies: 1
Views: 13644

IDE Terminal Output Behaviour

The IDE terminal only shows output, eg. via 'Out.Char()', only after 'Out.Ln'. In comparison, if I connect to the board using PuTTY, each output shows immediately. Is there a way to configure/change this behaviour in Astrobe?
by gray
Wed Feb 27, 2019 2:38 am
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Editor/IDE Questions
Replies: 3
Views: 17158

Re: Editor/IDE Questions

Follow-up question: say, I have a module, let's call it LED.mod, in my project directory. The programme compiles and links fine. Now I move LED.mod to a library directory (which is on the list of dirs to search), but (erroneously) leave LED.sym and LED.arm in the project directory. When I simply com...
by gray
Tue Feb 26, 2019 12:55 pm
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Editor/IDE Questions
Replies: 3
Views: 17158

Editor/IDE Questions

Is there a possibility to make the Astrobe editor "listen" to changes made to open files made with another editor, or a "reload" function without closing and reloading the file? The keyboard shortcuts cannot be changed, right? Can I prevent the terminal window from scrolling to the bottom whenever ...
by gray
Wed Feb 20, 2019 9:25 am
Forum: Cortex-M0, M3, M4 and M7
Topic: ISR Use of Registers; Privileged Mode?
Replies: 5
Views: 28684

Re: ISR Use of Registers; Privileged Mode?

And you don't mark the exception handlers in Traps.mod with square brackets because it does not matter, as you never return to the interrupted code anyway? Sorry for all the nagging, I would like to understand all this... In the same vein -- the nagging and trying to understand :| -- another questio...
by gray
Tue Feb 19, 2019 2:09 pm
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: user traps
Replies: 7
Views: 28410

Re: user traps

ad 1.) true, that's a bad idea. It would result in a Hard fault. The ASSERT needs to be in SVCall: PROCEDURE SVCall*(h: PROCEDURE); VAR currentHandler: PROCEDURE; BEGIN ASSERT(h # NIL, 100); sysHandler := h; ... ad 2.) as sysHandler runs as exception handler, it will result in a Hard fault. But that...
by gray
Tue Feb 19, 2019 1:41 pm
Forum: Cortex-M0, M3, M4 and M7
Topic: ISR Use of Registers; Privileged Mode?
Replies: 5
Views: 28684

Re: ISR Use of Registers; Privileged Mode?

When an interrupt handler is invoked any additional registers that need to be saved are automatically saved. Just to be sure: so all exception handlers, not only ISRs (eg. a handler for the SVC call/exception), need to be marked with the square-bracketed integer, like 'PROCEDURE handler[0]', so the...
by gray
Tue Feb 19, 2019 3:09 am
Forum: Cortex-M0, M3, M4 and M7
Topic: ISR Use of Registers; Privileged Mode?
Replies: 5
Views: 28684

ISR Use of Registers; Privileged Mode?

Two questions: With an interrupt, only R0 to R3 [1] are pushed onto the stack upon entry of the ISR. Does the compiler automatically account for this limitation when compiling ISRs, or is there anything I need to take care of manually? Does all thread mode (ie. not handler) code run privileged? Is t...
by gray
Mon Feb 18, 2019 10:12 am
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: user traps
Replies: 7
Views: 28410

Re: user traps

Here's a version that works without changing Traps.mod, using the vector swapping technique (relevant excerpt from my Kernel.mod module, leaving out the SysTick business). CONST ... SVC_Instruction = 0DF00H; SVC_Vector = 02CH; VAR ... sysHandler: PROCEDURE; svcTrapAddr: INTEGER; PROCEDURE svcHandler...