29.1 Revision B (April 2024)

Note: dsPIC30 devices are legacy and not recommended for new designs. Therefore for new features they may not be specified.
  • xmemory and ymemory are no longer device-dependent; supported on all dsPIC devices.
  • Updates throughout related to support for dsPIC33A DSC. Updates of note are:
    • 6.6.1 Options Specific to DSC Devices: Some options are specific to device architecture.
    • 9.2 Integer Data Types: Type definitions may vary based on device architecture.
    • 9.5.2 Bitfields in Structures: Bitfield memory allocation may vary based on device architecture.
    • 9.6.2 Data Pointers, 9.6.3 Function Pointers: Pointers vary by width based on device architecture.
    • 9.9 Compiler-Specific Type Qualifiers: Qualifier support depends on device architecture.
    • 9.10 Variable Attributes: Attribute function or support depends on device architecture; for example: eds, near, far, packed, space.
    • 10. Fixed-Point Arithmetic Support: Support for this feature depends on device architecture.
    • 11.1 Address Spaces, 11.3 Variables in Program Space: Based on device architecture.
    • 11.4 Parallel Master Port Access, 11.6 Extended Data Space Access, 11.7 Dataflash Memory Access, 11.9 Packing Data Stored in Flash: Based on device and device architecture.
    • 13. Register Usage: Register variables available depend on device architecture.
    • 14.1 Writing Functions: Functions available depend on device architecture.
    • 14.7 Function Call Conventions: Different conventions may apply depending on device architecture.
    • 15.2 Writing an Interrupt Service Routine: Allowable arguments depend on device architecture.
    • 15.3 Specifying the Interrupt Vector: The interrupt vector format differs by device architecture.
    • 15.4.2 context Attribute: The context attribute’s function depends on device architecture.
    • 17.2 Using Inline Assembly Language: Constraint letter available depend on device architecture.
    • 20.3.5 Device Features Macros: New macro: __HAS_ISA32__.
    • 21.1 Default Memory Spaces: Spaces auto_psv, psv, eedate and dma depend on device or device architecture.
    • 22.5 Integers: For some integers, size and range depend on device architecture.
    • 22.13 Preprocessing Directives: New pragma: #pragma config Name = Value.
    • 27. Built-in Functions: Modified or added new builtins for new device architecture.
  • 6.6.11.11 -fstack-usage: Option used to specify the maximum amount of stack used.