Search found 440 matches

by cfbsoftware
Tue Apr 09, 2024 11:56 pm
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: CONST Definition Question
Replies: 1
Views: 1717

Re: CONST Definition Question

Constant expressions are evaluated at compile time. Decimal and hexadecimal INTEGER constants are signed integers and an integer overflow in a constant expression is trapped at compile time. For example: CONST MaxInt = 07FFFFFFFH; (* PosOverflow = MaxInt + 1; Error: integer overflow *) MinInt = 0800...
by cfbsoftware
Mon Apr 01, 2024 9:53 pm
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Copying a Procedure to RAM
Replies: 2
Views: 1468

Re: Copying a Procedure to RAM

I can't think of a general way to copy the executable code of a procedure to RAM that would be both useful and reliable in the current implementation of Astrobe for Cortex-M. Note that Astrobe for RISC5 supports the dynamic loading of modules (but not isolated procedures) into RAM. What is the actua...
by cfbsoftware
Tue Mar 19, 2024 2:02 am
Forum: Bug Reports
Topic: SET Parameter Problem
Replies: 2
Views: 6739

Re: SET Parameter Problem

Thank you for your report. The problem will be fixed in v9.2. In the meantime a workaround is to assign the set to a local variable before passing it as a parameter. See the attached test program which should display the string "OK". Replacing the local variable assignment s := {k}; Check(s, k) with...
by cfbsoftware
Sat Feb 17, 2024 9:26 am
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Free Astrobe for Cortex-M0 Personal Edition has now been released
Replies: 0
Views: 36967

Free Astrobe for Cortex-M0 Personal Edition has now been released

The free v9.1 Astrobe for Cortex-M0 Personal Edition has now been released. You can request the download here:

https://www.astrobe.com/personal.htm
by cfbsoftware
Mon Dec 18, 2023 9:03 pm
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Buffer Address for DMA
Replies: 3
Views: 10321

Re: Buffer Address for DMA

But non-VAR parameters? I would have expected to get a stack address, but for RECORDs and ARRAYs we get the actual address, VAR or not VAR. This is a subtle consequence of Section 10.1 of the Oberon-07 Language Report: A value parameter corresponds to an actual parameter that is an expression, and ...
by cfbsoftware
Mon Dec 18, 2023 11:00 am
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Buffer Address for DMA
Replies: 3
Views: 10321

Re: Buffer Address for DMA

Try:

Code: Select all

DMA.SetMemAddr(chan, SYSTEM.ADR(s)); (* set memory address for  DMA channel *)
by cfbsoftware
Mon Dec 18, 2023 3:40 am
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Planned deprecation of SYSTEM.LNK, SP and PC variables
Replies: 0
Views: 16368

Planned deprecation of SYSTEM.LNK, SP and PC variables

We have discovered some reliability issues while running regression tests on v9.0.4 Astrobe for Cortex-M3, M4 and M7. These are related to the SYSTEM.LNK problem . A number of the instructions generated e.g. TEQ, TST, CMP etc. are documented as, for example: if n == 15 || m IN {13,15} then UNPREDICT...
by cfbsoftware
Fri Nov 17, 2023 4:56 am
Forum: Astrobe for ARM Cortex-M0, M3, M4 and M7
Topic: Interrupt Handlers
Replies: 2
Views: 8827

Re: Interrupt Handlers

Good question! Actually Cortex-M0 is OK but Cortex-M3 could be optimised. Try adding some code to your Cortex-M0 interrupt handlers. You should see some or all of registers r4 - r7 saved if they are allocated by the compiler in the handler. Additionally, all registers r4-r7 are saved if another proc...
by cfbsoftware
Fri Oct 06, 2023 6:28 am
Forum: CPIde and Component Pascal
Topic: GPCP Unhandled Exception
Replies: 3
Views: 20899

Re: GPCP Unhandled Exception

Maybe because you are using two different user names: john and jonro?