-
Notifications
You must be signed in to change notification settings - Fork 77
AdamNet Timing Analysis
Thomas Cherryhomes edited this page Sep 8, 2025
·
21 revisions
Internal notes describing observations of AdamNet timings with other peripherals.
A Block is 1K of data from a disk or data pack.
stateDiagram-v2
[*] --> Adam_asks_for_Status
%% --- Transaction 1: MN_STATUS ---
state MN_Status_Exchange {
[*] --> Adam_Sends_MN_STATUS
state "Adam sends MN_STATUS (0x14)" as Adam_Sends_MN_STATUS
Adam_Sends_MN_STATUS --> Peripheral_Responds_NM_STATUS
state "Peripheral responds NM_STATUS (0x84, 0x00, 0x04, 0x01, 0x40, 0x45)" as Peripheral_Responds_NM_STATUS
Peripheral_Responds_NM_STATUS --> Adam_Responds_NM_ACK
state "Adam responds NM_ACK (0x24)" as Adam_Responds_NM_ACK
Adam_Responds_NM_ACK --> [*]
}
MN_Status_Exchange --> MN_Other_Exchange
%% --- Transaction 2: Example other exchange ---
state MN_Other_Exchange {
[*] --> Adam_Sends_MN_OTHER
state "Adam sends MN_OTHER (0x33)" as Adam_Sends_MN_OTHER
Adam_Sends_MN_OTHER --> Peripheral_Responds_NM_OTHER
state "Peripheral responds NM_OTHER (...payload...)" as Peripheral_Responds_NM_OTHER
Peripheral_Responds_NM_OTHER --> Adam_Responds_NM_ACK2
state "Adam responds NM_ACK (0x24)" as Adam_Responds_NM_ACK2
Adam_Responds_NM_ACK2 --> [*]
}
MN_Other_Exchange --> [*]
Each of the three packet states:
TAPEUTL always reads blocks cleanly from the FujiNet. Are we messing up status timing?
Multiple units: The DCB has a unit number, which can specify the unit number for a drive. This gets reflected in the very last data byte of the requested block number. (This is why the send block command has 5 bytes).
- Time between D8 and 98: 164 microseconds
- Time between 98 and 68: 124 microseconds
Copyright 2024 Contributors to the FujiNetWIFI project.
Join us on Discord: https://discord.gg/7MfFTvD
- Home
- What is FujiNet?
- The Definition of Done
- Board bring up for FujiNet Platform.IO code
- The Complete Linux CLI Guide
- The Complete macOS CLI Guide
- Development Env for Apps
- FujiNet-Development-Guidelines
- System Quickstarts
- FujiNet Flasher
- Setting up a TNFS Server
- FujiNet Configuration File: fnconfig.ini
- AppKey Registry - SIO Command $DC Open App Key
- CP-M Support
- BBS
- Official Hardware Versions
- Prototype Board Revisions
- FujiNet Development Guidelines
- Atari Programming
- Apple Programming
- C64 Programming
- ADAM Programming
- Testing Plan
- Hacker List
- FujiNet VirtualMachine