42 lines
1.2 KiB
Markdown
42 lines
1.2 KiB
Markdown
---
|
|
tag: m0100
|
|
title: Free Memory
|
|
brief: Observe memory used by code
|
|
author: thinkyhead
|
|
|
|
requires: M100_FREE_MEMORY_WATCHER
|
|
group: debug
|
|
|
|
codes: [ M100 ]
|
|
|
|
notes:
|
|
- Requires `M100_FREE_MEMORY_WATCHER`.
|
|
|
|
parameters:
|
|
-
|
|
tag: D
|
|
optional: true
|
|
description: Dump the free memory block from `__brkval` to the stack pointer
|
|
-
|
|
tag: F
|
|
optional: true
|
|
description: Return the number of free bytes in the memory pool along with other vital statistics that define the memory pool
|
|
-
|
|
tag: I
|
|
optional: true
|
|
description: Initialize the free memory pool so it can be watched and print vital statistics that define the free memory pool
|
|
-
|
|
tag: C
|
|
optional: true
|
|
description: Corrupt 'n' locations in the free memory pool and report the locations of the corruption. This is useful to check the correctness of the `M100 D` and `M100 F` commands
|
|
values:
|
|
-
|
|
tag: n
|
|
type: int
|
|
|
|
examples:
|
|
|
|
---
|
|
|
|
Use [`M100`](/docs/gcode/M100.html) for development purposes to observe how much memory (particularly stack) is being used by code. Proper AVR code should avoid use of `new`, `malloc`, etc., and instead use either pre-allocated static variables or stack.
|