TOP Contributors

  1. MIKROE (2663 codes)
  2. Alcides Ramos (358 codes)
  3. Shawon Shahryiar (307 codes)
  4. jm_palomino (112 codes)
  5. Chisanga Mumba (90 codes)
  6. S P (73 codes)
  7. dany (71 codes)
  8. MikroBUS.NET Team (35 codes)
  9. NART SCHINACKOW (34 codes)
  10. Armstrong Subero (27 codes)

Most Downloaded

  1. Timer Calculator (137108 times)
  2. FAT32 Library (70237 times)
  3. Network Ethernet Library (56128 times)
  4. USB Device Library (46434 times)
  5. Network WiFi Library (42079 times)
  6. FT800 Library (41390 times)
  7. GSM click (29118 times)
  8. mikroSDK (26564 times)
  9. PID Library (26503 times)
  10. microSD click (25487 times)
Libstock prefers package manager

Package Manager

We strongly encourage users to use Package manager for sharing their code on Libstock website, because it boosts your efficiency and leaves the end user with no room for error. [more info]

< Back
Project

Misaligned Address Finder

Rating:

1

Author: VCC

Last Updated: 2020-06-05

Package Version: 1.1.0.2

Category: Other Codes

Downloaded: 198 times

Not followed.

License: MIT license  

Misaligned Address Finder is a tool used to generate a report on variables and constants, which are not Word or DWord aligned.
Some variables / constants are required to be allocated at even addresses (16-bit architectures) and at multiple by 4 addresses (32-bit architectures), so users can be notified about that allocation.

No Abuse Reported

Do you want to subscribe in order to receive notifications regarding "Misaligned Address Finder" changes.

Do you want to unsubscribe in order to stop receiving notifications regarding "Misaligned Address Finder" changes.

Do you want to report abuse regarding "Misaligned Address Finder".

  • Information
  • Comments (4)

Project Blog

Misaligned Address Finder is a tool used to generate a report on variables and constants, which are not Word or DWord aligned. Some variables / constants are required to be allocated at even addresses (for 16-bit architectures) and at “multiple by 4” addresses (32-bit architectures), so users can be notified if the compiler doesn’t do that allocation as required. This is to avoid running into address exceptions when working with misaligned pointers. See forum topic

Features:
- It is started from a mikro compiler as a tool
- Uses the compiler generated lst file as input, to get the list of identifiers (variables / constants)
- Keeps track of multiple lst files (added by user)
- Notifies either about all misaligned identifiers or about a user-defined subset of all identifiers
- Notifies through a message dialog or through two different generated report files
- The report verbosity is controlled by various application settings
- The application settings are stored in a separate ini file than the list of lst files
- The two applications settings files can be passed as command line arguments, if desired
- The application can be part of an automation environment

Requirements / Recommendations:
- The application must be run with "%LIST_FILE_NAME" parameter from compiler's IDE, including quotes.
- Be careful of what files are passed as command line arguments, because the second and the third arguments are expected to be ini files and they will be overwritten while closing the application.
- An IDE bug deletes the quotes from LIST_FILE_NAME parameter, so there must be at least two parameters, which are correctly saved: "%LIST_FILE_NAME" dummy The  second one has no quotes and is ignored by the application.


Limitations:
- Neither the list of files nor the lists of identifiers can be sorted.
- No misaligned identifier will be reported by default. Users have to either add them to the list (manually),
or to set the application to report on all misaligned identifiers.
- When configured to autoclose, the application will have to be started without command line arguments to allow UI interaction.

Main window

Main window

Main window

View full image
Settings window

Settings window

Settings window

View full image
mikro IDE tool

mikro IDE tool

mikro IDE tool

View full image

ALSO FROM THIS AUTHOR

DynArrays

0

Dynamic arrays of Byte, Word, DWord and Pointer. Also 2D arrays of Byte and Word, and 3D array of Byte. Can be compiled on desktop (tested with FreePascal) and MCU (for dsPIC and PIC32).

[Learn More]

RTCC_18FxxJ50 library

5

Library for accessing the PIC18FxxJ50 internal RTCC. The library should be compatible with other PICs with same RTCC.

[Learn More]

Build Version Generator

10

Build Version Generator is a tool, which generates code, containing version number and current build date of a mikroPascal / mikroBasic / mikroC project. It is run as a compiler IDE tool.

[Learn More]