[f40a309] | 1 | /*
|
---|
| 2 | ============================================================================
|
---|
| 3 | hwdefs.h -- Buchla 700 I/O addresses defined in hwdefs.s
|
---|
| 4 | Version 12 -- 1988-08-15 -- D.N. Lynx Crowe
|
---|
| 5 | ============================================================================
|
---|
| 6 | */
|
---|
| 7 |
|
---|
[f7428b1] | 8 | #pragma once
|
---|
[5fa506d] | 9 |
|
---|
[f7428b1] | 10 | #include "stdint.h"
|
---|
[f40a309] | 11 |
|
---|
[f7428b1] | 12 | /* hardware addresses */
|
---|
[f40a309] | 13 |
|
---|
[c59409e] | 14 | extern volatile uint16_t io_fpu[]; /* 0x180000 */
|
---|
| 15 | extern volatile uint8_t io_time[]; /* 0x3a0001 */
|
---|
| 16 | extern volatile uint8_t io_lcd; /* 0x3a4001 */
|
---|
| 17 | extern volatile uint8_t io_ser; /* 0x3a8001 */
|
---|
| 18 | extern volatile uint8_t io_midi; /* 0x3ac001 */
|
---|
| 19 | extern volatile uint8_t io_disk; /* 0x3b0001 */
|
---|
| 20 | extern volatile uint8_t io_tone; /* 0x3b4001 */
|
---|
| 21 | extern volatile uint8_t io_leds; /* 0x3b8001 */
|
---|
| 22 | extern volatile uint8_t io_kbrd; /* 0x3bc001 */
|
---|
| 23 | extern volatile uint8_t lcd_a0; /* io_lcd + 0 */
|
---|
| 24 | extern volatile uint8_t lcd_a1; /* io_lcd + 2 */
|
---|
| 25 |
|
---|
| 26 | extern volatile uint16_t io_vreg[]; /* 0x200000 Video registers after setup */
|
---|
| 27 | extern volatile uint16_t io_vraw[]; /* 0x200400 Video registers after reset */
|
---|
| 28 | extern volatile uint16_t io_vram[]; /* 0x200000 Video RAM */
|
---|
[928d5d9] | 29 |
|
---|
| 30 | /* video memory allocations, bank 0 */
|
---|
| 31 |
|
---|
[c59409e] | 32 | extern volatile uint16_t v_regs[]; /* 0x200000 Video registers */
|
---|
| 33 | extern volatile uint16_t v_odtab[][4]; /* 0x200080 Object Descriptor Table */
|
---|
| 34 | extern volatile uint16_t v_actab[]; /* 0x200100 Access Table */
|
---|
| 35 | extern volatile uint16_t v_ct0[]; /* 0x200400 */
|
---|
| 36 | extern volatile uint16_t v_gt1[]; /* 0x200518 */
|
---|
| 37 | extern volatile uint16_t v_score[]; /* 0x202000 Score */
|
---|
| 38 | extern volatile uint16_t v_cgtab[]; /* 0x21e000 Character Generator */
|
---|
[928d5d9] | 39 |
|
---|
| 40 | /* video memory allocations, bank 1 */
|
---|
| 41 |
|
---|
[c59409e] | 42 | extern volatile uint16_t v_curs0[]; /* 0x200400 ULE cursor */
|
---|
| 43 | extern volatile uint16_t v_curs1[]; /* 0x200480 ULO cursor */
|
---|
| 44 | extern volatile uint16_t v_curs2[]; /* 0x200500 URE cursor */
|
---|
| 45 | extern volatile uint16_t v_curs3[]; /* 0x200580 URO cursor */
|
---|
| 46 | extern volatile uint16_t v_curs4[]; /* 0x200600 LLE cursor */
|
---|
| 47 | extern volatile uint16_t v_curs5[]; /* 0x200680 LLO cursor */
|
---|
| 48 | extern volatile uint16_t v_curs6[]; /* 0x200700 LRE cursor */
|
---|
| 49 | extern volatile uint16_t v_curs7[]; /* 0x200780 LRO cursor */
|
---|
| 50 | extern volatile uint16_t v_tcur[]; /* 0x200800 Typewriter */
|
---|
| 51 | extern volatile uint16_t v_kbobj[]; /* 0x200b40 Keyboard */
|
---|
| 52 | extern volatile uint16_t v_lnobj[]; /* 0x201240 Line */
|
---|
| 53 | extern volatile uint16_t v_cur[]; /* 0x201940 Underline cursor */
|
---|
| 54 | extern volatile uint16_t v_win0[]; /* 0x204000 Window 0 */
|
---|
[f40a309] | 55 |
|
---|
| 56 | /* stuff in the depths of the bios */
|
---|
| 57 |
|
---|
[ad89950] | 58 | extern volatile int16_t fc_sw;
|
---|
| 59 | extern volatile int32_t fc_val;
|
---|