Beispiel #1
0
Crlp4002::Crlp4002(CPObject *parent):CPObject(parent)
{ //[constructor]
    Q_UNUSED(parent)

    setfrequency( 0);

    BackGroundFname     = P_RES(":/rlh1000/rlp4002.png");
    setcfgfname("rlp4002");

    pTIMER              = new Ctimer(this);
    pKEYB->setMap("rlp4002.map");
    setDXmm(227);
    setDYmm(95);
    setDZmm(31);

 // Ratio = 3,57
    setDX(848);//Pc_DX  = 75;
    setDY(340);//Pc_DY  = 20;
    rotate = false;
    slotChanged = false;
    connected = false;
    rts = false;
    cts = false;

    memsize             = 0x2000;
    InitMemValue        = 0x7f;
    SlotList.clear();
    SlotList.append(CSlot(8 , 0x0000 , P_RES(":/rlh1000/Telecomputing_2.bin")    , "" , CSlot::ROM , "ROM"));

}
Beispiel #2
0
Cfp100::Cfp100(CPObject *parent):Cce515p(this) {
    setfrequency( 4000);
    ioFreq = 0;
    setcfgfname(QString("fp100"));
    BackGroundFname	= P_RES(":/ext/fp100.png");



    delete pKEYB;
    pKEYB		= new Ckeyb(this,"x710.map");

    setDXmm(302);//Pc_DX_mm = 256;
    setDYmm(120);//Pc_DY_mm = 185;
    setDZmm(36);//Pc_DZ_mm = 42;

    setDX(1078);//Pc_DX	= 895;
    setDY(817);//Pc_DY	= 615;



    printerACK = false;
    printerBUSY = false;


    capot = LoadImage(QSize(849,274),P_RES(":/ext/fp100-capot.png"));
    head = LoadImage(QSize(79,161),P_RES(":/ext/fp100head.png"));
    cable = LoadImage(QSize(75,10),P_RES(":/ext/fp100cable.png"));

    margin = 40;
    Paper_DX = 960+2*margin;
    setPaperPos(QRect(154,26,731,300));
}
Beispiel #3
0
Cpc2021::Cpc2021(CPObject *parent):Cprinter(parent)
{								//[constructor]
    setfrequency( 0);
    pc2021buf	= 0;
    pc2021display= 0;
    //bells		= 0;
    charTable = 0;
    margin = 25;
    ToDestroy	= false;
    BackGroundFname	= P_RES(":/ext/pc-2021.png");
    setcfgfname("pc2021");

    settop(10);
    setposX(0);

    pTIMER		= new Ctimer(this);
    KeyMap      = KeyMappc2021;
    KeyMapLenght= KeyMappc2021Lenght;
    pKEYB->setMap("pc2021.map");
    setDXmm(108);
    setDYmm(130);
    setDZmm(43);

    setDX(386);
    setDY(464);

    setPaperPos(QRect(70,-3,275,149));

    ctrl_char = false;
    t = 0;
    c = 0;
    rmtSwitch = false;

    internal_device_code = 0x0f;
}
Beispiel #4
0
Ce500::Ce500(CPObject *parent)	: CpcXXXX(parent)
{								//[constructor]
    setfrequency( (int) 3072000/3);
    setcfgfname(QString("e500"));

    SessionHeader	= "E500PKM";
    Initial_Session_Fname ="e500.pkm";

    BackGroundFname	= P_RES(":/e500/pc-e500.png");
    LcdFname		= P_RES(":/e500/e500lcd.png");
    SymbFname		= P_RES(":/e500/e500symb.png");

    memsize		= 0x100000;
    InitMemValue	= 0xff;
    /* ROM area(c0000-fffff) S3: */
    SlotList.clear();
    SlotList.append(CSlot(256, 0x40000 , ""             , ""            , RAM , "RAM S1"));
    SlotList.append(CSlot(256, 0x80000 , ""             , ""            , RAM , "RAM S2"));
    SlotList.append(CSlot(256, 0xC0000 , P_RES(":/e500/s3.rom"), "e500/s3.rom" , ROM , "ROM S3"));


    PowerSwitch	= 0;
    Pc_Offset_X = Pc_Offset_Y = 0;

    setDXmm(200);
    setDYmm(100);
    setDZmm(14);

    setDX(715);
    setDY(357);

    Lcd_X		= 69;
    Lcd_Y		= 99;
    Lcd_DX		= 240;//168;//144 ;
    Lcd_DY		= 32;
    Lcd_ratio_X	= 348.0/240;
    Lcd_ratio_Y	= 60.0/32;

    Lcd_Symb_X	= 69;//(int) (45 * 1.18);
    Lcd_Symb_Y	= 79;//(int) (35 * 1.18);
    Lcd_Symb_DX	= 348;
    Lcd_Symb_DY	= 20;
    Lcd_Symb_ratio_X	= 1;//1.18;

    pLCDC		= new Clcdc_e500(this);
    pCPU		= new Csc62015(this);
    pTIMER		= new Ctimer(this);
    pKEYB		= new Ckeyb(this,"e500.map");

    pHD61102_1  = new CHD61102(this);
    pHD61102_2  = new CHD61102(this);

//    pRP5C01     = new CRP5C01(this);
    start2khz = 0;
    start4khz = 0;
    Xin=Xout=false;
    tmp_state=0;
    ioFreq=0;

}
Beispiel #5
0
Cce1600f::Cce1600f(CPObject *parent):CPObject(parent)
{
    BackGroundFname	= P_RES(":/ext/ce-1600f.png");

    setcfgfname(QString("ce1600f"));

    setDXmm(95);
    setDYmm(120);
    setDZmm(39);

    setDX(339);
    setDY(428);

    pKEYB->setMap("ce1600f.map",0);

    bus = new CbusPc1500();

    error = false;
    ready = true;
    ChangedDisk = false;
    busy = false;
    ack = false;

    isDisk = true;
    writeProtect = false;
    motorRunning = false;

    sector = 0;
    startMotorState = 0;
    countWrite = 0;

    memset(data,0,sizeof(data));
}
Beispiel #6
0
Crlh1000::Crlh1000(CPObject *parent)	: CpcXXXX(parent)
{								//[constructor]
    setfrequency( (int) 4194300/4);
    setcfgfname(QString("rlh1000"));

    SessionHeader	= "RLH1000PKM";
    Initial_Session_Fname ="rlh1000.pkm";

    BackGroundFname	= P_RES(":/rlh1000/rlh1000.png");

    LeftFname   = P_RES(":/rlh1000/rlh1000Left.png");
//    RightFname  = P_RES(":/rlh1000/rlh1000Right.png");
    BackFname   = P_RES(":/rlh1000/rlh1000BackOpen.png");
    TopFname    = P_RES(":/rlh1000/rlh1000Top.png");
    BottomFname = P_RES(":/rlh1000/rlh1000Bottom.png");
    backDoorImage = new QImage(QString(P_RES(":/rlh1000/trappe.png")));

    memsize		= 0x20000;
    InitMemValue	= 0x7F;

    SlotList.clear();
    SlotList.append(CSlot(8 , 0x0000 ,	""    , ""	, CSlot::RAM , "RAM"));
    SlotList.append(CSlot(8 , 0x2000 ,	""    , ""	, CSlot::ROM , "Ext ROM"));
    SlotList.append(CSlot(16, 0x4000 ,	""    , ""	, CSlot::ROM , "ROM Capsules 1"));
    SlotList.append(CSlot(16, 0x8000 ,	""    , ""	, CSlot::NOT_USED , "Ext RAM"));
    SlotList.append(CSlot(16, 0xC000 ,	P_RES(":/rlh1000/HHC-rom-C000-FFFF.bin"),""	, CSlot::ROM , "ROM"));
    SlotList.append(CSlot(16, 0x10000 ,	""     , ""	, CSlot::ROM , "ROM Capsules 2"));
    SlotList.append(CSlot(16, 0x14000 ,	""    , ""	, CSlot::ROM , "ROM Capsules 3"));

// Ratio = 3,57
    setDXmm(227);
    setDYmm(95);
    setDZmm(31);

    setDX(811);
    setDY(340);

    PowerSwitch = 0;

    pLCDC		= new Clcdc_rlh1000(this,
                                    QRect(205,55,159*2.5,8*3),
                                    QRect());
    pCPU		= new Cm6502(this);    m6502 = (Cm6502*)pCPU;
    pTIMER		= new Ctimer(this);
    pKEYB->setMap("rlh1000.map");
    backdoorKeyIndex=0;
    capsuleKeyIndex=0;


    ioFreq = 0;

    extrinsicRAM = 0xff;
    extrinsicROM = 0xff;

    bus = new CbusPanasonic();
    backdoorOpen = false;
    backdoorFlipping = false;
    m_backdoorAngle = 0;
}
Beispiel #7
0
Cpb1000::Cpb1000(CPObject *parent)	: CpcXXXX(parent)
{								//[constructor]
    setfrequency( (int) 910000/1);
    ioFreq = 0;
    setcfgfname(QString("pb1000"));

    SessionHeader	= "PB1000PKM";
    Initial_Session_Fname ="pb1000.pkm";

    BackGroundFname	= P_RES(":/pb1000/pb-1000.png");

    back = new QImage(P_RES(":/pb1000/pb1000back.png"));

    memsize         = 0x20000;
    InitMemValue	= 0xff;


    SlotList.clear();
    SlotList.append(CSlot(6 , 0x0000 ,	P_RES(":/pb1000/rom0.bin") , ""	, CSlot::ROM , "CPU ROM"));
    SlotList.append(CSlot(8 , 0x6000 ,	""					, ""	, CSlot::RAM , "RAM0"));
    SlotList.append(CSlot(32, 0x8000 ,	P_RES(":/pb1000/rom1.bin")	, ""	, CSlot::ROM , "ROM"));
    SlotList.append(CSlot(32, 0x18000 ,	""					, ""	, CSlot::RAM , "RAM1"));
    SlotList.append(CSlot(1 , 0x1800 ,	""					, ""	, CSlot::ROM , "PORT"));

    PowerSwitch	= 0;

    setDXmm(187);
    setDYmm(177);
    setDZmm(24);

    setDX(668);//715);
    setDY(633);//465);

    PowerSwitch = 0;

    pLCDC		= new Clcdc_pb1000(this,
                                   QRect(90,130,192*2,32*2),
                                   QRect());
    pCPU		= new CHD61700(this);
    pTIMER		= new Ctimer(this);
    pKEYB->setMap("pb1000.map");
    pHD44352    = new CHD44352(this,P_RES(":/pb1000/chr.bin"));

    m_kb_matrix = 0;
//    shift=fct = false;

    closed = false;
    loc_flipping = false;
    loc_m_angle = 180;
    loc_m_zoom = 1;

    writeIO = false;
    adrBus = 0;

}
Beispiel #8
0
Cce127r::Cce127r(CPObject *parent) : Cce152(parent)
{
    BackGroundFname	= P_RES(":/ext/ce-127r.png");
    setcfgfname("ce127r");
    setDXmm(132);//Pc_DX_mm = 135;
    setDYmm(74);//Pc_DY_mm = 70;
    setDZmm(25);//Pc_DZ_mm = 10;
    setDX(472);//Pc_DX		= 483;//409;
    setDY(266);//Pc_DY		= 252;//213;
    pKEYB->fn_KeyMap = "ce127r.map";

}
Beispiel #9
0
Cpc2081::Cpc2081(CPObject *parent) : Cce152(parent)
{
    BackGroundFname	= P_RES(":/ext/pc-2081.png");
    setcfgfname("pc2081");
    setDXmm(184);//Pc_DX_mm = 135;
    setDYmm(114);//Pc_DY_mm = 70;
    setDZmm(31);//Pc_DZ_mm = 10;
    setDX(658);//Pc_DX		= 483;//409;
    setDY(410);//Pc_DY		= 252;//213;
    pKEYB->fn_KeyMap = "pc2081.map";


}
Beispiel #10
0
Crlp6001::Crlp6001(CPObject *parent )	: CPObject(this)
{							//[constructor]


    setfrequency( 0);
    BackGroundFname	= P_RES(":/rlh1000/rlp6001.png");

    setDXmm(85);
    setDYmm(318);
    setDZmm(51);
 // Ratio = 3,57
    setDX(303);//Pc_DX	= 75;
    setDY(1035);//Pc_DY	= 20;

}
Beispiel #11
0
/**
 * @brief
 *
 * @param parent
 */
Cjr800::Cjr800(CPObject *parent)	: CpcXXXX(parent)
{								//[constructor]
    setfrequency( (int) 4915200/4);
    setcfgfname(QString("jr800"));

    SessionHeader	= "JR800PKM";
    Initial_Session_Fname ="jr800.pkm";

    BackGroundFname	= P_RES(":/jr800/jr800.png");

    RightFname = P_RES(":/jr800/jr800Right.png");
    LeftFname = P_RES(":/jr800/jr800Left.png");
    TopFname = P_RES(":/jr800/jr800Top.png");
//    BackFname = P_RES(":/jr800/jr800Back.png");

    memsize		= 0xFFFF;
    InitMemValue	= 0xFF;

    SlotList.clear();
    SlotList.append(CSlot(32 ,0x0000 ,	""	, ""	, CSlot::RAM , "RAM"));
    SlotList.append(CSlot(32, 0x8000 ,	P_RES(":/jr800/rom-8000-FFFF.bin"), ""	, CSlot::ROM , "ROM"));

    PowerSwitch	= 0;

    setDXmm(255);
    setDYmm(140);
    setDZmm(32);

    setDX(911);
    setDY(501);

    PowerSwitch = 0;

    pLCDC		= new Clcdc_jr800(this,
                                   QRect(98,94,340,115),
                                   QRect(86,94,364,115));
    pCPU		= new Cmc6800(this);
    for (int i=0;i<8;i++) {
        hd44102[i]  = new CHD44102(this);
        hd44102[i]->setObjectName(QString("%1").arg(i));
        qWarning()<<hd44102[i];
    }
    pTIMER		= new Ctimer(this);
    pKEYB->setMap("jr800.map");

    ioFreq = 9600;
}
Beispiel #12
0
Cce122::Cce122(CPObject *parent):Cce126(parent)
{								//[constructor]
    BackGroundFname	= P_RES(":/ext/ce-122.png");
    setcfgfname("ce122");
    setDX(1002);//Pc_DX	= 282;
    setDY(330);//Pc_DY	= 95;
    setDXmm(282);
    setDYmm(95);

    setPaperPos(QRect(90,0,158,151));

    pKEYB->setMap("ce122.map");

    setPower(true);
    printSwitch = true;

}
Beispiel #13
0
Cx710::Cx710(CPObject *parent):Cce515p(parent) {
    //setfrequency( 0);
    setcfgfname(QString("x710"));
    BackGroundFname	= P_RES(":/x07/x710.png");

    setDXmm(200);
    setDYmm(120);
    setDZmm(36);

    setDX(715);
    setDY(665);

    setPaperPos(QRect(155,46,400,300));

    delete(pKEYB);
    pKEYB->setMap("x710.map",0);

}
Beispiel #14
0
Csio::Csio(CPObject *parent)	: CPObject(parent)
{							//[constructor]
    si=so=0;			//si,so port access?(0:none, 1:access)
    plink=0;			//aplinks using?(0:none, 1:using)
    plinkmode=0;		//select plink client(0:plink, 1:plinkc)
    exportbit=0;
    exportbyte=1;
    convCRLF=1;

    currentBit=oldstate_in=0;
    Start_Bit_Sent = false;
    t=c=0;waitbitstart=1;waitbitstop=waitparity=0;

    baudrate = 9600;

    ToDestroy = false;

    outBitNb = 0;
    Sii_ndx				= 0;
    Sii_wait			= 0;
    Sii_wait_recv       = 0;
    Sii_startbitsent	= false;
    Sii_stopbitsent		= true;
    Sii_TransferStarted = false;
    Sii_TextLength		= 0;
    Sii_Bit_Nb			= 0;
    Sii_LfWait			= 500;

    setfrequency( 0);
    ioFreq = 0;
    BackGroundFname	= P_RES(":/ext/serial.png");

    pTIMER		= new Ctimer(this);
    setDX(195);
    setDY(145);
    setDXmm(50);
    setDYmm(55);
    setDZmm(33);

    dialogconsole = new DialogConsole(this);

}
Beispiel #15
0
Cmd100::Cmd100(CPObject *parent):CPObject(parent)
{								//[constructor]
    setfrequency( 0);

    BackGroundFname	= P_RES(":/md100/md-100.png");
    setcfgfname("md100");



    pTIMER		= new Ctimer(this);

    setDX(1203);//Pc_DX	= 620;//480;
    setDY(779);//Pc_DY	= 488;//420;

    setDXmm(337);
    setDYmm(218);
    setDZmm(46);

    port = 0x08;
    adrBus=prev_adrBus=0;

}
Beispiel #16
0
Crlp9001::Crlp9001(CPObject *parent )	: CPObject(this)
{							//[constructor]


    setfrequency( 0);
    BackGroundFname	= P_RES(":/rlh1000/rlp9002.png");

    setDXmm(113);
    setDYmm(95);
    setDZmm(51);
 // Ratio = 3,57
    setDX(403);//Pc_DX	= 75;
    setDY(340);//Pc_DY	= 20;

    rotate = false;

    memsize			= 0x4000;
    InitMemValue	= 0xff;

    SlotList.clear();
    SlotList.append(CSlot(16 , 0x0000 ,	""                                  , ""	, RAM , "RAM 16Ko"));

}
Beispiel #17
0
Ccl1000::Ccl1000(CPObject *parent):Cce515p(this) {
    setfrequency( 0);
    ioFreq = 0;
    setcfgfname(QString("cl1000"));
    BackGroundFname	= P_RES(":/ext/cl-1000.png");

    delete pKEYB;
    pKEYB		= new Ckeyb(this,"cl1000.map");

    setDXmm(260);//Pc_DX_mm = 256;
    setDYmm(225);//Pc_DY_mm = 185;
    setDZmm(42);//Pc_DZ_mm = 42;

    setDX(928);//Pc_DX	= 895;
    setDY(804);//Pc_DY	= 615;

    printerACK = false;
    printerBUSY = false;

    margin = 20;
    Paper_DX = 240+2*margin;
    setPaperPos(QRect(90,0,214,245));
}
Beispiel #18
0
Cce126::Cce126(CPObject *parent):Cprinter(parent)
{								//[constructor]
    Q_UNUSED(parent)

    setfrequency( 0);
    ce126buf	= 0;
    ce126display= 0;
    
//bells		= 0;
    charTable = 0;
    margin = 25;
    ToDestroy	= false;
    BackGroundFname	= P_RES(":/ext/ce-126p.png");
    setcfgfname("ce126p");

    settop(10);
    setposX(0);
    pTIMER		= new Ctimer(this);
    KeyMap      = KeyMapce126;
    KeyMapLenght= KeyMapce126Lenght;
    pKEYB->setMap("ce126.map");
    setDX(620);
    setDY(488);

    setDXmm(116);
    setDYmm(140);
    setDZmm(23);

    setPaperPos(QRect(150,-3,207,149));

    ctrl_char = false;
    t = 0;
    c = 0;
    rmtSwitch = false;

    internal_device_code = 0x0f;
}
Beispiel #19
0
Chp82143A::Chp82143A(CPObject *parent):Cprinter(parent) {

    setcfgfname(QString("hp82143a"));
    BackGroundFname	= P_RES(":/hp41/hp82143a.png");

    pKEYB->setMap("hp82143a.map");

    setDXmm(180);
    setDYmm(130);
    setDZmm(60);

    setDX(643);
    setDY(464);


    margin = 30;
    paperWidth = 24*7+margin+margin;
    setPaperPos(QRect(355,16,216,250));

    Mode = TRACE_MODE;
    flow = fdwid = fprint = fpadv = fgraph = feol = frjust = fignADV = false;
    isready = false;
    intensity = 0;
}
Beispiel #20
0
Crlp1002::Crlp1002(CPObject *parent):Cce515p(parent)
{ //[constructor]
    Q_UNUSED(parent)

    setfrequency( 0);

    margin = 25;
    BackGroundFname     = P_RES(":/rlh1000/rlp1002.png");
    setcfgfname("rlp1002");


    pTIMER              = new Ctimer(this);
    pKEYB->setMap("rlp1002.map");
    setDXmm(227);
    setDYmm(95);
    setDZmm(31);


    setDX(848);
    setDY(340);

    setPaperPos(QRect(57,-20,318,236));


    rotate = false;
    INTrequest = false;
    printing = false;
    receiveMode = false;
    CRLFPending = false;

    memsize             = 0x2000;
    InitMemValue        = 0x7f;
    SlotList.clear();
    SlotList.append(CSlot(8 , 0x0000 ,  P_RES(":/rlh1000/rlp1002.bin")    , "" , CSlot::ROM , "Printer ROM"));

}
Beispiel #21
0
Ccemem::Ccemem(CPObject *parent ,Models mod):CPObject(parent)
{


    setDXmm(42);
    setDYmm(54);
    setDZmm(3);

    setDX(150);
    setDY(192);

    SlotList.clear();
    InitMemValue = 0x00;

    setDXmm(33);
    setDYmm(40);
    setDZmm(7);

    setDX(115);
    setDY(139);

    model = mod;
    switch(model) {
    case CE151:    // 4KB RAM module
        BackGroundFname	= P_RES(":/cemem/ce151.png");
        setcfgfname(QString("ce151"));
        memsize      = 0x1000;
        SlotList.append(CSlot(4 , 0x0000 , "" , ""        , CSlot::RAM , "RAM 4KB"));
        break;
    case CE155:    // 8KB RAM module
        BackGroundFname	= P_RES(":/cemem/ce155.png");
        setcfgfname(QString("ce155"));
        memsize      = 0x2000;
        SlotList.append(CSlot(8 , 0x0000 , "" , ""        , CSlot::RAM , "RAM 8KB"));
        break;
    case CE160:    // 16KB RAM module
        setDXmm(41);
        setDYmm(48);
        setDZmm(9);

        setDX(143);
        setDY(167);
        BackGroundFname	= P_RES(":/cemem/ce160.png");
        setcfgfname(QString("ce160"));
        memsize      = 0x4000;
        SlotList.append(CSlot(16 , 0x0000 , "" , ""        , CSlot::RAM , "RAM 16KB"));
        break;
    case CE163:    // 32KB RAM module
        setDXmm(41);
        setDYmm(48);
        setDZmm(9);

        setDX(143);
        setDY(167);
        BackGroundFname	= P_RES(":/cemem/ce163.png");
        setcfgfname(QString("ce163"));
        memsize      = 0x8000;
        SlotList.append(CSlot(32 , 0x0000 , "" , ""        , CSlot::RAM , "RAM 32KB"));
        break;
    default: break;
    }

    bus1500 = new CbusPc1500();
}
Beispiel #22
0
Cz1::Cz1(CPObject *parent, Models mod)	: CpcXXXX(parent)
{								//[constructor]
    setfrequency( (int) 3686400);
    model = mod;
    switch (model) {
    case Z1GR:
        setcfgfname(QString("z1gr"));
        setresName("z1");
        SessionHeader	= "Z1GGRPKM";
        Initial_Session_Fname ="z1gr.pkm";
        BackGroundFname	= P_RES(":/z1/z1gr.png");
        break;
    case FX890P:
        setcfgfname(QString("fx890p"));
        setresName("z1");
        SessionHeader	= "FX890PPKM";
        Initial_Session_Fname ="fx890p.pkm";
        BackGroundFname	= P_RES(":/z1/fx-890p.png");
        break;
    default:
        setcfgfname(QString("z1"));
        setresName("z1");
        SessionHeader	= "Z1PKM";
        Initial_Session_Fname ="z1.pkm";
        BackGroundFname	= P_RES(":/z1/z1.png");
    }

    LeftFname       = P_RES(":/z1/z1Left.png");

    memsize		= 0x100000;
    InitMemValue	= 0x00;

    SlotList.clear();
    SlotList.append(CSlot(64 , 0x00000 ,	""                  , ""	, CSlot::RAM , "RAM"));
    SlotList.append(CSlot(64 , 0x10000 ,	""                  , ""	, CSlot::RAM , "RAM"));
    SlotList.append(CSlot(64 , 0x20000 ,	""                  , ""	, CSlot::RAM , "RAM"));
    SlotList.append(CSlot(64 , 0x30000 ,	""                  , ""	, CSlot::RAM , "RAM"));
    SlotList.append(CSlot(32 , 0x40000 ,	""                  , ""	, CSlot::RAM , "RAM"));
    SlotList.append(CSlot(64 , 0xa0000 ,	""                  , ""	, CSlot::RAM , "VIDEO RAM"));

    if (model==Z1GR)
        SlotList.append(CSlot(128 , 0xE0000 ,	P_RES(":/z1/romz1gr.bin")	, ""	, CSlot::ROM , "ROM"));
    else
        SlotList.append(CSlot(128 , 0xE0000 ,	P_RES(":/z1/romz1.bin")	, ""	, CSlot::ROM , "ROM"));


    PowerSwitch	= 0;

    setDXmm(206);
    setDYmm(83);
    setDZmm(25);

    setDX(736);
    setDY(297);

    PowerSwitch = 0;

    pLCDC		= new Clcdc_z1(this,
                               QRect(91,44,370,64),
                               QRect(81,44,89,64));
//                               QRect(77,44,384,64),
//                               QRect(67,44,75,64));
    pCPU		= new Ci80L188EB(this);
    pFPU        = new CCF79107PJ(this);
    pTIMER		= new Ctimer(this);
    pHD66108    = new CHD66108(this);
    pKEYB->setMap("z1.map");
    pCENT       = new Cctronics(this); pCENT->pTIMER = pTIMER;

    lastKeyBufSize = 0;
    newKey = false;

    i80l188ebcpu = (Ci80L188EB*)pCPU;

    ioFreq = 0;

    pCENTflip = true;
}