49
edits
(Add stubs for the Spectranet blocks.) |
(→ZXSTSPECTRANET: Document block) |
||
Line 122: | Line 122: | ||
=== ZXSTSPECTRANET === | === ZXSTSPECTRANET === | ||
''' | '''NB''': Note that the [http://www.spectaculator.com/docs/svn/zx-state/spectranet.shtml draft of the next version of the SZX format] is out of date and does not represent what has been implemented in Fuse. | ||
This block represents Dylan Smith's Spectranet Ethernet interface for the 16K, 48K, 128, +2, +2A and +3 ZX Spectrums. | |||
// Spectranet state | |||
#define ZXSTSNETF_PAGED 0x0001 | |||
#define ZXSTSNETF_PAGED_VIA_IO 0x0002 | |||
#define ZXSTSNETF_PROGRAMMABLE_TRAP_ACTIVE 0x0004 | |||
#define ZXSTSNETF_PROGRAMMABLE_TRAP_MSB 0x0008 | |||
#define ZXSTSNETF_ALL_DISABLED 0x0010 | |||
#define ZXSTSNETF_RST8_DISABLED 0x0020 | |||
#define ZXSTSNETF_DENY_DOWNSTREAM_A15 0x0040 | |||
#define ZXSTSNETF_NMI_FLIPFLOP 0x0080 | |||
typedef struct _tagZXSTSPECTRANET | |||
{ | |||
ZXSTBLOCK blk; | |||
DWORD dwFlags; | |||
BYTE chPageA; | |||
BYTE chPageB; | |||
WORD wTrap; | |||
BYTE chRegisters[0x30]; | |||
} ZXSTSPECTRANET, *LPZXSTSPECTRANET; | |||
==== Members ==== | |||
'''blk'''<br /> The block header. The block id is '''ZXSTBID_SPECTRANET''' ('S', 'N', 'E', 'T').<br /> | |||
'''wFlags'''<br /> Various flags. This can be any combination of: | |||
{|cellspacing="1" cellpadding="1" border="1" width="100%" | |||
|'''Flag''' | |||
|'''Meaning''' | |||
|- | |||
|ZXSTSNETF_PAGED | |||
|The Spectranet is currently paged. | |||
|- | |||
|ZXSTSNETF_PAGED_VIA_IO | |||
|The Spectranet was paged in via I/O port. | |||
|- | |||
|ZXSTSNETF_PROGRAMMABLE_TRAP_ACTIVE | |||
|The Spectranet's programmable trap is currently active. | |||
|- | |||
|ZXSTSNETF_PROGRAMMABLE_TRAP_MSB | |||
|The next write to the Spectranet's programmable trap port will set the MSB of the programmable trap address. | |||
|- | |||
|ZXSTSNETF_ALL_DISABLED | |||
|All the Spectranet's traps are currently disabled. | |||
|- | |||
|ZXSTSNETF_RST8_DISABLED | |||
|The Spectranet's RST 8 trap is currently disabled. | |||
|- | |||
|ZXSTSNETF_DENY_DOWNSTREAM_A15 | |||
|The Spectranet is forcing the A15 line low for any peripherals connecting via its expansion port. | |||
|- | |||
|ZXSTSNETF_NMI_FLIPFLOP | |||
|The Spectranet's "suppress NMI" flipflop is set | |||
|} | |||
'''chPageA'''<br /> The page currently paged into the Spectranet's page A (0x1000-0x1fff).<br /> | |||
'''chPageB'''<br /> The page currently paged into the Spectranet's page B (0x2000-0x2fff).<br /> | |||
'''wTrap'''<br /> The current value of the Spectranet's programmable trap.<br /> | |||
'''chRegisters'''<br /> The values of the core W5100 registers. | |||
==== Remarks ==== | |||
The contents of the W5100's socket registers are not saved - whatever was listening on the other end will have gone away when the snapshot is restored. | |||
=== ZXSTSPECTRANETFLASHPAGE === | === ZXSTSPECTRANETFLASHPAGE === |
edits