/68kcounter

68000 ASM source code cycle counter

Primary LanguageAssemblyMIT LicenseMIT

Logo

68k Counter

Analyses 68000 assembly source to profile resource and size data. For each instruction it will tell you.

  • CPU cycles
  • Bus read cycles
  • Bus write cycles
  • Size in bytes

Usage:

Web app

You can try out the tool in a web-based version.

CLI

To analyse a source file run:

npx 68kcounter mysource.s

This will output each line prefixed with profile data in the following format:

[cycles]([reads]/[writes]) [size]

VS Code extension

Available as VS Code extension to provide live annotations and totals.

Output window screenshot

Limitations:

  • Because it analyses your pre-assembled source, it can't take into account optimisations made by your assembler.
  • Total timings for a whole file are pretty meaningless as it doesn't take into account branching etc, but it can be useful for smaller blocks.
  • While it adds profile information inside any macro definitions, it doesn't currently process macro invocations
  • Where timings are based on an 'n' multiplier from an immediate value, it will parse simple expressions but doesn't currently substitute constants defined elsewhere.