ctrl+shift+p filters: :st2 :st3 :win :osx :linux
Browse

P3 Assembly

by rgcv ST3

A Sublime Text 3 assembly language syntax

Details

Installs

  • Total 5K
  • Win 3K
  • Mac 992
  • Linux 2K
Jul 29 Jul 28 Jul 27 Jul 26 Jul 25 Jul 24 Jul 23 Jul 22 Jul 21 Jul 20 Jul 19 Jul 18 Jul 17 Jul 16 Jul 15 Jul 14 Jul 13 Jul 12 Jul 11 Jul 10 Jul 9 Jul 8 Jul 7 Jul 6 Jul 5 Jul 4 Jul 3 Jul 2 Jul 1 Jun 30 Jun 29 Jun 28 Jun 27 Jun 26 Jun 25 Jun 24 Jun 23 Jun 22 Jun 21 Jun 20 Jun 19 Jun 18 Jun 17 Jun 16 Jun 15 Jun 14
Windows 1 2 0 2 1 0 0 1 2 0 1 0 1 3 2 3 1 1 0 3 2 1 0 2 0 0 0 1 1 0 3 0 2 3 2 2 0 1 1 2 1 1 0 0 2 0
Mac 0 0 1 0 1 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 0 0 1
Linux 1 0 2 0 2 2 1 0 1 0 1 2 3 1 0 0 1 1 0 1 0 1 0 0 1 1 0 0 0 3 1 2 0 2 1 0 0 0 0 1 0 0 0 4 1 0

Readme

Source
raw.​githubusercontent.​com

P3 Assembly

A Sublime Text 3 assembly language syntax

Sidenote: Designed to accomodate the syntax of the P3 processor's assembly language, this theme is in no way a finished product. Feel free to contribute to the project or submit an issue detailing a problem with the project or what have you.

Still on a tangent, a color theme is not supplied with this package. It is purely a syntax for the P3 assembly language.

The P3 Processor

The P3 is a 16-bit word architecture processor used at Lisbon University's Superior Technical Institute (Instituto Superior Técnico da Universidade de Lisboa, IST@UL) in the Introduction to Computer Architecture subject of the Computer Science and Engineering BSc degree.

In practice, during the course's subject, a project is tailored for the first year's first semester students (freshmen, hopefully). Usually, or at least thus far, the project consists of creating a well-known game (or should I say recreating) using the P3 processor simulator, a Java application capable of simulating the assembled code to be loaded onto the processor itself on a later stage, during a demo or for testing purposes, since the simulator's.. not very feasible or reliable, if I may.

Some specifications

A few of the processor's specifications are listed below.

1. Registers

  • R0 - R7 - General use registers (R0 holds the constant 0)
  • PC - The program counter
  • SP - The stack pointer
  • RE - State register with 5 state bits, EZCNO, where
    • E: Enable interrupts
    • Z: Zero
    • C: Carry
    • N: Negative
    • O: Overflow

2. Memory

  • Address space: 64K words
  • Word size: 16 bits

3. I/O

  • I/O Addresses: Memory Mapped I/O from FF00h upward
  • Text Window: FFFCh - FFFFh
  • Interruptors (or switches): FFF9h
  • LEDs: FFF8h
  • LCD: FFF4h - FFF5h
  • 7-Segment display: FFF0h - FFF3h
  • Timer: FFF6h - FFF7h

4. Interrupts

  • Interrupt mask: FFFAh
  • Interrupt vector base: FE00h

More information can be found in the P3 processor simulator manual here (in portuguese).

Example Screenshot (using Monokai)

p3assembly-monokai