[<>]
~~TOC wide~~
{{anchor:n27}}
====== 2.7. Структура видеопамяти ======
===== Сорокасимвольный режим SCREEN 0 =====
(для компьютеров серий MSX-1 и MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ │ │ │ PNT (960 байтов) ││
├─────────────────┤ │&h03BF└───────────────────────────────────┘│
1000h│ │ │&h03C0┌───────────────────────────────────┐│
│ Не используется │ │ │ Свободная область (64 байта) ││
│ │ │&h03FF└───────────────────────────────────┘│
│ │ │&h0400┌───────────────────────────────────┐│
└─────────────────┘ │ │ PT (32 байта) ││
20000h │&h041F└───────────────────────────────────┘│
│&h0420┌───────────────────────────────────┐│
│ │ Свободная область (992 байта) ││
│&h07FF└───────────────────────────────────┘│
│&h0800┌───────────────────────────────────┐│
│ │ PGT (2048 байтов) ││
│&h0FFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
===== Восьмидесятисимвольный режим SCREEN 0 =====
(для компьютеров серии MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ │ │ │ PNT (1920 байтов) ││
├─────────────────┤ │&h077F└───────────────────────────────────┘│
1000h│ │ │&h0780┌───────────────────────────────────┐│
│ Не используется │ │ │ Свободная область (128 байтов) ││
│ │ │&h07FF└───────────────────────────────────┘│
│ │ │&h0800┌───────────────────────────────────┐│
└─────────────────┘ │ │ CT (270 байтов) ││
20000h │&h090D└───────────────────────────────────┘│
│&h090E┌───────────────────────────────────┐│
│ │ Свободная область (754 байта) ││
│&h0BFF└───────────────────────────────────┘│
│&h0C00┌───────────────────────────────────┐│
│ │ Свободная область для перемещения ││
│ │ Таблиц VRAM (270 байтов) ││
│&h0D0D└───────────────────────────────────┘│
│&h0D0E┌───────────────────────────────────┐│
│ │ Свободная область (498 байтов) ││
│&h0EFF└───────────────────────────────────┘│
│&h0F00┌───────────────────────────────────┐│
│ │ PT (32 байта) ││
│&h0F1F└───────────────────────────────────┘│
│&h0F20┌───────────────────────────────────┐│
│ │ Свободная область (224 байта) ││
│&h0FFF└───────────────────────────────────┘│
│&h1000┌───────────────────────────────────┐│
│ │ PGT (2048 байтов) ││
│&h17FF└───────────────────────────────────┘│
│&h1800┌───────────────────────────────────┐│
│ │ Свободная область для перемещения ││
│ │ Таблиц VRAM (2048 байтов) ││
│&h1FFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
===== Текстовый режим SCREEN 1 =====
(для компьютеров серий MSX-1 и MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │ │&h0000┌───────────────────────────────────┐│
│ │ │ │ PGT (2048 байтов) ││
├─────────────────┤ │&h07FF└───────────────────────────────────┘│
4000h│ │ │&h0800┌───────────────────────────────────┐│
│ Не используется │ │ │ Свободная область для перемещения ││
│ │ │ │ Таблиц VRAM (4096 байтов) ││
│ │ │&h17FF└───────────────────────────────────┘│
└─────────────────┘ │&h1800┌───────────────────────────────────┐│
20000h │ │ PNT (768 байтов) ││
│&h1AFF└───────────────────────────────────┘│
│&h1B00┌───────────────────────────────────┐│
│ │ SAT (128 байтов) ││
│&h1B7F└───────────────────────────────────┘│
│&h1B80┌───────────────────────────────────┐│
│ │ Свободная область (128 байтов) ││
│&h1BFF└───────────────────────────────────┘│
│&h1C00┌───────────────────────────────────┐│
│ │ Свободная область для перемещения ││
│ │ Таблиц VRAM (768 байтов) ││
│&h1EFF└───────────────────────────────────┘│
│&h1F00┌───────────────────────────────────┐│
│ │ Свободная область (256 байтов) ││
│&h1FFF└───────────────────────────────────┘│
│&h2000┌───────────────────────────────────┐│
│ │ CT (32 байта) ││
│&h201F└───────────────────────────────────┘│
│&h2020┌───────────────────────────────────┐│
│ │ PT (32 байта) ││
│&h203F└───────────────────────────────────┘│
│&h2040┌───────────────────────────────────┐│
│ │ Свободная область (960 байтов) ││
│&h23FF└───────────────────────────────────┘│
│&h2400┌───────────────────────────────────┐│
│ │ Свободная область для перемещения ││
│ │ Таблиц VRAM (5120 байтов) ││
│&h37FF└───────────────────────────────────┘│
│&h3800┌───────────────────────────────────┐│
│ │ SGT (2048 байтов) ││
│&h3FFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
Приведенная ниже таблица одинакова для двух режимов:
* α) режима SCREEN 2 (для компьютеров серий MSX-1 и MSX-2);
* β) "нестандартного" текстово-графического режима SCREEN 1-2
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ │ │ │ PGT (окно-1) (2048 байтов) ││
├─────────────────┤ │&h07FF└───────────────────────────────────┘│
4000h│ │ │&h0800┌───────────────────────────────────┐│
│ Не используется │ │ │ PGT (окно-2) (2048 байтов) ││
│ │ │&h0FFF└───────────────────────────────────┘│
│ │ │&h1000┌───────────────────────────────────┐│
└─────────────────┘ │ │ PGT (окно-3) (2048 байтов) ││
20000h │&h17FF└───────────────────────────────────┘│
│&h1800┌───────────────────────────────────┐│
│ │ PNT (окно-1) (256 байтов) ││
┌─────────────────┐ │&h18FF└───────────────────────────────────┘│
│ 256×192 точек │ │&h1900┌───────────────────────────────────┐│
│ 16 цветов │ │ │ PNT (окно-2) (256 байтов) ││
└─────────────────┘ │&h19FF└───────────────────────────────────┘│
│&h1A00┌───────────────────────────────────┐│
│ │ PNT (окно-3) (256 байтов) ││
│&h1AFF└───────────────────────────────────┘│
│&h1B00┌───────────────────────────────────┐│
│ │ SAT (128 байтов) ││
│&h1B7F└───────────────────────────────────┘│
│&h1B80┌───────────────────────────────────┐│
│ │ PT (32 байта) ││
│&h1B9F└───────────────────────────────────┘│
│&h1BA0┌───────────────────────────────────┐│
│ │ Свободная область (96 байтов) ││
│&h1BFF└───────────────────────────────────┘│
│&h1C00┌───────────────────────────────────┐│
│ │ Свободная область для перемещения ││
│ │ Таблиц VRAM (768 байтов) ││
│&h1EFF└───────────────────────────────────┘│
│&h1F00┌───────────────────────────────────┐│
│ │ Свободная область (256 байтов) ││
│&h1FFF└───────────────────────────────────┘│
│&h2000┌───────────────────────────────────┐│
│ │ CT (окно-1) (2048 байтов) ││
│&h27FF└───────────────────────────────────┘│
│&h2800┌───────────────────────────────────┐│
│ │ CT (окно-2) (2048 байтов) ││
│&h2FFF└───────────────────────────────────┘│
│&h3000┌───────────────────────────────────┐│
│ │ CT (окно-3) (2048 байтов) ││
│&h37FF└───────────────────────────────────┘│
│&h3800┌───────────────────────────────────┐│
│ │ SGT (2048 байтов) ││
│&h3FFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
===== Режим SCREEN 3 =====
(для компьютеров серий MSX-1 и MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ │ │ │ PGT (1536 байтов) ││
├─────────────────┤ │&h05FF└───────────────────────────────────┘│
4000h│ │ │&h0600┌───────────────────────────────────┐│
│ Не используется │ │ │ Свободная область (512 байтов) ││
│ │ │&h07FF└───────────────────────────────────┘│
│ │ │&h0800┌───────────────────────────────────┐│
└─────────────────┘ │ │ PNT (768 байтов) ││
20000h │&h0AFF└───────────────────────────────────┘│
│&h0B00┌───────────────────────────────────┐│
│ │ Свободная область (256 байтов) ││
┌─────────────────┐ │&h0BFF└───────────────────────────────────┘│
│ 64×48 точек │ │&h0C00┌───────────────────────────────────┐│
│ 16 цветов │ │ │ Свободная область для перемещения ││
└─────────────────┘ │ │ Таблиц VRAM (3840 байтов) ││
│&h1AFF└───────────────────────────────────┘│
│&h1B00┌───────────────────────────────────┐│
│ │ SAT (128 байтов) ││
│&h1B7F└───────────────────────────────────┘│
│&h1B80┌───────────────────────────────────┐│
│ │ Свободная область (128 байтов) ││
│&h1BFF└───────────────────────────────────┘│
│&h1C00┌───────────────────────────────────┐│
│ │ Свободная область для перемещения ││
│ │ Таблиц VRAM (768 байтов) ││
│&h1EFF└───────────────────────────────────┘│
│&h2F00┌───────────────────────────────────┐│
│ │ Свободная область (288 байтов) ││
│&h201F└───────────────────────────────────┘│
│&h2020┌───────────────────────────────────┐│
│ │ PT (32 байта) ││
│&h203F└───────────────────────────────────┘│
│&h2040┌───────────────────────────────────┐│
│ │ Свободная область (960 байтов) ││
│&h23FF└───────────────────────────────────┘│
│&h2400┌───────────────────────────────────┐│
│ │ Свободная область для перемещения ││
│ │ Таблиц VRAM (5120 байтов) ││
│&h37FF└───────────────────────────────────┘│
│&h3800┌───────────────────────────────────┐│
│ │ SGT (2048 байтов) ││
│&h3FFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
===== Режим SCREEN 4 =====
(для компьютеров серии MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ │ │ │ PGT (окно-1) (2048 байтов) ││
├─────────────────┤ │&h07FF└───────────────────────────────────┘│
4000h│ │ │&h0800┌───────────────────────────────────┐│
│ Не используется │ │ │ PGT (окно-2) (2048 байтов) ││
│ │ │&h0FFF└───────────────────────────────────┘│
│ │ │&h1000┌───────────────────────────────────┐│
└─────────────────┘ │ │ PGT (окно-3) (2048 байтов) ││
20000h │&h17FF└───────────────────────────────────┘│
│&h1800┌───────────────────────────────────┐│
│ │ PNT (окно-1) (256 байтов) ││
┌─────────────────┐ │&h18FF└───────────────────────────────────┘│
│ 256×192 точек │ │&h1900┌───────────────────────────────────┐│
│ 16 цветов │ │ │ PNT (окно-2) (256 байтов) ││
└─────────────────┘ │&h19FF└───────────────────────────────────┘│
│&h1A00┌───────────────────────────────────┐│
│ │ PNT (окно-3) (256 байтов) ││
│&h1AFF└───────────────────────────────────┘│
│&h1B00┌───────────────────────────────────┐│
│ │ Свободная область (256 байтов) ││
│&h1BFF└───────────────────────────────────┘│
│&h1C00┌───────────────────────────────────┐│
│ │ SCT (512 байтов) ││
│&h1DFF└───────────────────────────────────┘│
│&h1E00┌───────────────────────────────────┐│
│ │ SAT (128 байтов) ││
│&h1E7F└───────────────────────────────────┘│
│&h1E80┌───────────────────────────────────┐│
│ │ PT (32 байта) ││
│&h1E9F└───────────────────────────────────┘│
│&h1EA0┌───────────────────────────────────┐│
│ │ Свободная область (352 байта) ││
│&h1FFF└───────────────────────────────────┘│
│&h2000┌───────────────────────────────────┐│
│ │ CT (окно-1) (2048 байтов) ││
│&h27FF└───────────────────────────────────┘│
│&h2800┌───────────────────────────────────┐│
│ │ CT (окно-2) (2048 байтов) ││
│&h2FFF└───────────────────────────────────┘│
│&h3000┌───────────────────────────────────┐│
│ │ CT (окно-3) (2048 байтов) ││
│&h37FF└───────────────────────────────────┘│
│&h3800┌───────────────────────────────────┐│
│ │ SGT (2048 байтов) ││
│&h3FFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
Приведенная ниже таблица одинакова для двух режимов:
* α) "нестандартного" режима SCREEN 4 (для компьютеров серии MSX-1);
* β) "нестандартного" текстово-графического режима SCREEN 1-4
┌───────────────────────────────────────────┐
│&h0000┌───────────────────────────────────┐│
│ │ PGT (окно-1) (2048 байтов) ││
│&h07FF└───────────────────────────────────┘│
│&h0800┌───────────────────────────────────┐│
│ │ PGT (окно-2) (2048 байтов) ││
│&h0FFF└───────────────────────────────────┘│
│&h1000┌───────────────────────────────────┐│
│ │ PGT (окно-3) (2048 байтов) ││
│&h17FF└───────────────────────────────────┘│
│&h1800┌───────────────────────────────────┐│
│ │ SCT (512 байтов) ││
│&h19FF└───────────────────────────────────┘│
│&h1A00┌───────────────────────────────────┐│
│ │ SAT (128 байтов) ││
│&h1A7F└───────────────────────────────────┘│
│&h1A80┌───────────────────────────────────┐│
│ │ Свободная область (384 байта) ││
│&h1BFF└───────────────────────────────────┘│
│&h1C00┌───────────────────────────────────┐│
│ │ PNT (окно-1) (256 байтов) ││
│&h1CFF└───────────────────────────────────┘│
│&h1D00┌───────────────────────────────────┐│
│ │ PNT (окно-2) (256 байтов) ││
│&h1DFF└───────────────────────────────────┘│
│&h1E00┌───────────────────────────────────┐│
│ │ PNT (окно-3) (256 байтов) ││
│&h1EFF└───────────────────────────────────┘│
│&h1F00┌───────────────────────────────────┐│
│ │ Свободная область (256 байтов) ││
│&h1FFF└───────────────────────────────────┘│
│&h2000┌───────────────────────────────────┐│
│ │ CT (окно-1) (2048 байтов) ││
│&h27FF└───────────────────────────────────┘│
│&h2800┌───────────────────────────────────┐│
│ │ CT (окно-2) (2048 байтов) ││
│&h2FFF└───────────────────────────────────┘│
│&h3000┌───────────────────────────────────┐│
│ │ CT (окно-3) (2048 байтов) ││
│&h37FF└───────────────────────────────────┘│
│&h3800┌───────────────────────────────────┐│
│ │ SGT (2048 байтов) ││
│&h3FFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
===== Режим SCREEN 5 =====
(для компьютеров серии MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ Страница 1 │ │ │ PNT (27136 байтов) ││
│ │ │&h69FF└───────────────────────────────────┘│
├─────────────────┤ │&h6A00┌───────────────────────────────────┐│
8000h│ │ │ │ Свободная область (2560 байтов) ││
│ Страница 2 │ │&h73FF└───────────────────────────────────┘│
│ │ │&h7400┌───────────────────────────────────┐│
├─────────────────┤ │ │ SCT (512 байтов) ││
10000h│ │ │&h75FF└───────────────────────────────────┘│
│ Страница 3 │ │&h7600┌───────────────────────────────────┐│
│ │ │ │ SAT (128 байтов) ││
├─────────────────┤ │&h767F└───────────────────────────────────┘│
18000h│ │ │&h7680┌───────────────────────────────────┐│
│ Страница 4 │ │ │ PT (32 байта) ││
│ │ │&h769F└───────────────────────────────────┘│
└─────────────────┘ │&h76A0┌───────────────────────────────────┐│
20000h │ │ Свободная область (352 байта) ││
│&h77FF└───────────────────────────────────┘│
│&h7800┌───────────────────────────────────┐│
┌─────────────────┐ │ │ SGT (2048 байтов) ││
│ 256×212 точек │ │&h7FFF└───────────────────────────────────┘│
│ 16 цветов │ └───────────────────────────────────────────┘
└─────────────────┘
===== Режим SCREEN 6 =====
(для компьютеров серии MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ Страница 1 │ │ │ PNT (27136 байтов) ││
│ │ │&h69FF└───────────────────────────────────┘│
├─────────────────┤ │&h6A00┌───────────────────────────────────┐│
8000h│ │ │ │ Свободная область (2560 байтов) ││
│ Страница 2 │ │&h73FF└───────────────────────────────────┘│
│ │ │&h7400┌───────────────────────────────────┐│
├─────────────────┤ │ │ SCT (512 байтов) ││
10000h│ │ │&h75FF└───────────────────────────────────┘│
│ Страница 3 │ │&h7600┌───────────────────────────────────┐│
│ │ │ │ SAT (128 байтов) ││
├─────────────────┤ │&h767F└───────────────────────────────────┘│
18000h│ │ │&h7680┌───────────────────────────────────┐│
│ Страница 4 │ │ │ PT (32 байта) ││
│ │ │&h769F└───────────────────────────────────┘│
└─────────────────┘ │&h76A0┌───────────────────────────────────┐│
20000h │ │ Свободная область (352 байта) ││
│&h77FF└───────────────────────────────────┘│
│&h7800┌───────────────────────────────────┐│
┌─────────────────┐ │ │ SGT (2048 байтов) ││
│ 512×212 точек │ │&h7FFF└───────────────────────────────────┘│
│ 4 цвета │ └───────────────────────────────────────────┘
└─────────────────┘
===== Режим SCREEN 7 =====
(для компьютеров серии MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ Страница 1 │ │ │ PNT (54272 байта) ││
│ │ │&hD3FF└───────────────────────────────────┘│
├─────────────────┤ │&hD400┌───────────────────────────────────┐│
10000h│ │ │ │ Свободная область (7168 байтов) ││
│ Страница 2 │ │&hEFFF└───────────────────────────────────┘│
│ │ │&hF000┌───────────────────────────────────┐│
└─────────────────┘ │ │ SGT (2048 байтов) ││
20000h │&hF7FF└───────────────────────────────────┘│
│&hF800┌───────────────────────────────────┐│
│ │ SCT (512 байтов) ││
┌─────────────────┐ │&hF9FF└───────────────────────────────────┘│
│ 512×212 точек │ │&hFA00┌───────────────────────────────────┐│
│ 16 цветов │ │ │ SAT (128 байтов) ││
└─────────────────┘ │&hFA7F└───────────────────────────────────┘│
│&hFA80┌───────────────────────────────────┐│
│ │ PT (32 байта) ││
│&hFA9F└───────────────────────────────────┘│
│&hFAA0┌───────────────────────────────────┐│
│ │ Свободная область (1376 байтов) ││
│&hFFFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
===== Режим SCREEN 8 =====
(для компьютеров серии MSX-2)
┌─────────────────┐ ┌───────────────────────────────────────────┐
0000h│ │──▶&h0000┌───────────────────────────────────┐│
│ Страница 1 │ │ │ PNT (54272 байта) ││
│ │ │&hD3FF└───────────────────────────────────┘│
├─────────────────┤ │&hD400┌───────────────────────────────────┐│
10000h│ │ │ │ Свободная область (7168 байтов) ││
│ Страница 2 │ │&hEFFF└───────────────────────────────────┘│
│ │ │&hF000┌───────────────────────────────────┐│
└─────────────────┘ │ │ SGT (2048 байтов) ││
20000h │&hF7FF└───────────────────────────────────┘│
│&hF800┌───────────────────────────────────┐│
│ │ SCT (512 байтов) ││
┌─────────────────┐ │&hF9FF└───────────────────────────────────┘│
│ 256×212 точек │ │&hFA00┌───────────────────────────────────┐│
│ 256 цветов │ │ │ SAT (128 байтов) ││
└─────────────────┘ │&hFA7F└───────────────────────────────────┘│
│&hFA80┌───────────────────────────────────┐│
│ │ PT (32 байта) ││
│&hFA9F└───────────────────────────────────┘│
│&hFAA0┌───────────────────────────────────┐│
│ │ Свободная область (1376 байтов) ││
│&hFFFF└───────────────────────────────────┘│
└───────────────────────────────────────────┘
----
[<>]
{{tag>msxbdpl}}