command
module
Version:
v0.0.0-...-cca0bdd
Opens a new window with list of versions in this module.
Published: Jun 12, 2026
License: Unlicense
Opens a new window with license information.
Imports: 5
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
¶
Scannotec metro display
Message frame
- 0x82
- 0x00
- address byte
- msg type byte
- length low byte
- length high byte
- data bytes
- checksum
- Just a rolling 8bit sum of all bytes from step 5
The message length is the length of the data bytes payload and the checksum.
message types:
- 0x05 - set addresses
- Payload is 2 bytes with the alternative addresses to listen to
- 0x09 - set RTC
- Payload is 3 bytes, hours, minutes and seconds to set the time to
- 0x55 U - update display
- Loads the payload to a 8000 byte buffer waiting to be processed, can be broken up into multiple messages
- 0x56 V - enable display
- Triggers message processing
- No timeout on the display
- No payload, message processing ends at the msg type byte
- 0x57 W - enable display with timeout
- Triggers message processing
- Clears the display once a longish timeout expires
- No payload, message processing ends at the msg type byte
- 0x81 - Ping?
- Send ACIA flags
- Triggers message processing
- No payload, message processing ends at the msg type byte
- 0x87 - Trigger temperature measurement?
- No payload, message processing ends at the msg type byte
Other messages will raise a error flag, but might still write to the 8000 byte buffer, needs to be verified...
content control characters
- 0x09 scroll text
- two hex chars following, offset to start the scrolling in hex, - 0x4c, in pixels
- 0x0e small font
- 0x0f large font
- 0x11 set blink
- 0x12 reset blink
- 0x13 Enable dynamic content for the row
- Scroller doesn't scroll or timers change unless this is present in the row data
- 0x14 timed messages
- Two hex chars following.
- Need to have multiple sections of different texts
- Can have different content on each of them
- 0x15 4 char string substition
- No idea what the contents are supposed to be, maybe temperature reading?
- 0x16 time of day substitution
- 0x1b set active row
- set_address: return
- V -> process all
- time_set: return
- rtc_something does something: return
- !W -> return
Memory map
- 0x0000 - 0x5fff Sram
- 0x6000 - 0x6020 memory mapped peripherals
- 0x7000 - 0x8000 Display ram
- 0xC000 - 0xFFFF Eprom
Memory mapped peripherals
- 0x6004 - 6821 PIA 1 data A
- 0x6005 - 6821 PIA 1 control A
- 0x6006 - 6821 PIA 1 data B
- 0x6007 - 6821 PIA 1 control B
- 0x6008 - 6821 PIA 2 data A
- 0x6009 - 6821 PIA 2 control A
- 0x600A - 6821 PIA 2 data B
- 0x600B - 6821 PIA 2 control B
- 0x6010 - 6850 ACIA control
- 0x6011 - 6850 ACIA data
Interrupts
- FIRQ: ACIA
- IRQ: PIAs
- PIA 1
- A
- 1 - Unused counter 0-0x50
- 2 - Unused counter, 16bit
- B
- 1 - Unused, does nothing
- 2 - Frame sync, not on every frame...
- PIA 2, only interrupt 1 enabled
- A - Analog read stuff
- B - Reads and stores lines
Bill of Materials
- EF68B09P - 6809 CPU
- HD63B50P - 6350 ACIA serial communications chip, externally clocked
- HD63B21P - 6321 PIA x2
- Memory
- UM62256E-70LL - 32kb SRAM
- GM76C28A-01 - 2k SRAM x4
- 27C128 - 16kb EPROM
- 58321B - RTC
- LT1081CN - RS232 level shifter
- 6N139 - dual opamp
- CNY17-4 - optocoupler
- 74HC series logic; 26 chips
- 74HC00 - quad 2 port NAND
- 74HC01 - quad NAND, open collector
- 74HC08 - quad 2 input AND 2
- 74HC14 - hex inverter 4
- 74HC27 - triple 3 input NOR
- 74HC123 - dual retriggeable monostable multivibrator
- 74HC138 - 3 to 8 decoder, active high
- 74HC139 - 3 to 8 decoder, active low
- 74HC151 - 8 input multiplexer x4
- 74HC157 - quad 2 input multiplexer x3
- 74HC245 - bidirectional bus transcriber x4
- 74HC393 - dual 4 stage binary ripple counter
- 74HC4040 - 12 stage binary ripple counter x2
- ULN2803A - darlington array
- 1.9152 MHz crystal - for ACIA
- 8.000 MHz crystal
- Jumpperit sarjapiirin läheellä valitsevat RX/TX tyypin
Documentation
¶
There is no documentation for this package.
Source Files
¶
Directories
¶
cmd
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Click to show internal directories.
Click to hide internal directories.