Skip to content
Back to skills

Dma Expert

ASecurity

Expert on Intel 8237A DMA Controller for ES-1841. Provides guidance on DMA transfers, floppy/HDD data transfer, DRAM refresh, page registers, and channel configuration.

  • 666 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added February 8, 2026
documentationdocumentation

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill dma-expert --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Dma Expert?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Dma Expert
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-dma-expert/badge)](https://www.skillsdirectory.com/skills/majiayu000-dma-expert)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: dma-expert
description: Expert on Intel 8237A DMA Controller for ES-1841. Provides guidance on DMA transfers, floppy/HDD data transfer, DRAM refresh, page registers, and channel configuration.
---

# DMA Expert - Intel 8237A / KR580VT57

Expert knowledge for the ES-1841's DMA controller.

## Key Specifications

| Property     | Value                      |
| ------------ | -------------------------- |
| Soviet Clone | KR580VT57 / KR1810VT37     |
| Channels     | 4 independent              |
| I/O Ports    | `00h`-`0Fh`                |
| Page Regs    | `81h`, `82h`, `83h`, `87h` |

## I/O Ports

| Port        | Read               | Write                |
| ----------- | ------------------ | -------------------- |
| `00h`-`07h` | Current addr/count | Base addr/count      |
| `08h`       | Status Register    | Command Register     |
| `0Ah`       | -                  | Single Mask Register |
| `0Bh`       | -                  | Mode Register        |
| `0Ch`       | -                  | Clear Flip-Flop      |
| `0Dh`       | Temp Register      | Master Clear         |

## Page Registers (Upper 4 Address Bits)

| Port  | Channel |
| ----- | ------- |
| `87h` | Ch0     |
| `83h` | Ch1     |
| `81h` | Ch2     |
| `82h` | Ch3     |

## Channel Assignments

| Channel | Usage        |
| ------- | ------------ |
| 0       | DRAM Refresh |
| 2       | Floppy Disk  |
| 3       | Hard Disk    |

## Mode Register (Port `0Bh`)

```text
Bits 7-6: Mode (00=demand, 01=single, 10=block)
Bit 5:    Decrement/Increment
Bit 4:    Auto-init
Bits 3-2: Transfer type (01=write, 10=read)
Bits 1-0: Channel select
```

## Programming Sequence

1. Mask channel
2. Clear flip-flop
3. Write address LSB/MSB
4. Write page register
5. Clear flip-flop
6. Write count LSB/MSB (bytes - 1)
7. Set mode
8. Unmask channel

## References

See [references/](references/) for detailed documentation.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.