Skip to content
bus-expert logo

Bus Expert - ISA Compatible

bus-expert

Expert on ISA system bus for ES-1841. Provides guidance on bus timing, I/O port addressing, memory mapping, bus signals, and expansion card interface.

SKILL.md

Full skill instructions

Bus Expert - ISA Compatible

Expert knowledge for the ES-1841's system bus.

Key Specifications

PropertyValue
Type8-bit ISA (XT bus)
Clock4.77 MHz
Address20 lines (A0-A19)
Data8 lines (D0-D7)
ES-1841135-pin connector

Bus Signals

Control

SignalDescription
ALEAddress Latch Enable
/​IORI/​O Read
/​IOWI/​O Write
/​MEMRMemory Read
/​MEMWMemory Write

Interrupt/​DMA

  • IRQ0-IRQ7: Interrupt requests
  • DRQ0-DRQ3: DMA requests
  • DACK0-DACK3: DMA acknowledges

Bus Cycle Timing

4 clocks = 838 ns:

T1: Address, ALE high
T2: ALE low, /​RD or /​WR
T3: Data transfer
T4: Deassert control

I/​O Port Map

RangeDevice
000h-00FhDMA Controller
020h-021hPIC
040h-043hPIT
060h-063hPPI
3D0h-3DFhCGA Video
3F0h-3F7hFloppy
320h-327hHard Disk

Memory Regions

RangeType
00000h-9FFFFhRAM
A0000h-BFFFFhVideo
C0000h-DFFFFhROM
F0000h-FFFFFhBIOS

Wait States

Slow peripherals insert wait states (Tw) by controlling the RDY signal.

Peripheral Interfaces

IPeripheral - Fast devices (RAM, ROM):

byte Read(uint offset);
void Write(uint offset, byte value);

IBusAwarePeripheral - Slow devices (FDC, HDD, DMA):

void Initialize(IClock clock);
void BeginBusCycle(uint offset, bool isWrite);  // Called at T1
void OnWaitState();                              // Called each Tw

Wait State Pattern

public void BeginBusCycle(uint offset, bool isWrite)
{
    _clock.SetReady(false);  // Pull RDY LOW
    _readyAtCycle = _clock.TotalCycles + 3 + waitStates;
}

public void OnWaitState()
{
    if (_clock.TotalCycles >= _readyAtCycle)
        _clock.SetReady(true);  // Release RDY HIGH
}

Formula: readyAtCycle = current + 3 + waitStates

  • BeginBusCycle at T1 (cycle 0)
  • +1: T1→T2
  • +2: T2→T3
  • +3: T3→Tw (first wait state)
  • +N: Additional wait states

References

See references/ for detailed ISA bus documentation.

More Other skills

Delegate independent tasks to specialized agents working concurrently with isolated context.

295.4K 206.3K
View

Applies Anthropic's official brand colors and typography to any sort of artifact that may benefit from having Anthropic's look-and-feel. Use it when brand colors or style guidelines, visual formatting, or company design standards apply.

179.7K 100.1K
View

Toolkit for styling artifacts with a theme. These artifacts can be slides, docs, reportings, HTML landing pages, etc. There are 10 pre-set themes with colors/fonts that you can apply to any artifact that has been creating, or can generate a new theme on-the-fly.

179.7K 89.5K
View

A set of resources to help me write all kinds of internal communications, using the formats that my company likes to use. Claude should use this skill whenever asked to write some sort of internal communications (status reports, leadership updates, 3P updates, company newsletters, FAQs, incident reports, project updates, etc.).

179.7K 76.1K
View

Fundamental design principles for writing maintainable, testable Python code.

40.2K 21.9K
View

Modern responsive layouts using container queries, fluid typography, CSS Grid, and mobile-first strategies.

40.2K 20K
View

Generate Playwright tests from scenarios using interactive browser exploration and validation.

39.7K 18.2K
View

Modern React state management with Redux Toolkit, Zustand, Jotai, and React Query for every state category.

40.2K 14.7K
View

GDPR-compliant data handling with consent management, data subject rights, and privacy controls.

40.2K 14.3K
View

Python error handling patterns including input validation, exception hierarchies, and partial failure handling. Use when implementing validation logic, designing exception strategies, handling batch processing failures, or building robust APIs.

40.2K 13.5K
View

Detailed multi-file refactor planning with safety checks and rollback guidance.

39.7K 13K
View