OpenCores
URL https://opencores.org/ocsvn/tv80/tv80/trunk

Subversion Repositories tv80

[/] [tv80/] [trunk/] [sc_env/] [z80_decoder.h] - Blame information for rev 96

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 96 ghutchis
#ifndef Z80_DECODER_H_
2
#define Z80_DECODER_H_
3
 
4
#include "systemc.h"
5
 
6
typedef enum { UNPRE, PRE_CB, PRE_DD, PRE_ED, PRE_FD, DISP, IMM1, IMM2, IMM2B } dec_state;
7
 
8
SC_MODULE(z80_decoder)
9
{
10
private:
11
        dec_state state;
12
        sc_uint<8> opcode;
13
        char *op_name;
14
        char op_buf[80];
15
        uint16_t imm, op_addr;
16
 
17
        void decode_unpre();
18
        void op_print();
19
 
20
public:
21
        sc_in<bool>   clk;
22
        sc_in<uint32_t> addr;
23
        sc_in<bool>   m1_n;
24
        sc_in<bool>   mreq_n;
25
        sc_in<bool>   rd_n;
26
        sc_in<bool>   wait_n;
27
        sc_in<uint32_t> di;
28
        sc_in<bool>   reset_n;
29
        bool en_decode;
30
 
31
        void event();
32
 
33
        SC_CTOR(z80_decoder) {
34
                SC_METHOD (event);
35
                sensitive << clk.pos();
36
                en_decode = false;
37
        }
38
};
39
 
40
#endif /*Z80_DECODER_H_*/

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.