private Point2D recenter;
private Point2D recenter2;
- public ZoomingPanel() {
+ private FtdiBoard ftdiboard;
+
+ public ZoomingPanel(FtdiBoard ftdiboard) {
+ this.ftdiboard = ftdiboard;
setDoubleBuffered(true);
addKeyListener(this);
addMouseMotionListener(this);
}
Gui.Cell cell = whichCell(mousex, mousey);
Fpslic.Cell c = cell == null ? null : cell.cell;
- if ((k.getModifiers() & k.ALT_MASK) != 0)
+ if ((k.getModifiers() & k.ALT_MASK) != 0 || (k.getModifiers() & k.META_MASK) != 0)
switch(k.getKeyCode()) {
case VK_S:
writeMode4();
break;
+ /*
case VK_O:
readMode4();
break;
+ */
case VK_0: {
c.xlut(0x00);
c.ylut(0x00);
repaint();
return;
}
+ case VK_F: {
+ int save1y = c.fpslic().cell(19,22).ylut();
+ int save1x = c.fpslic().cell(19,22).xlut();
+ int save2y = c.fpslic().cell(20,22).ylut();
+ int save2x = c.fpslic().cell(20,22).xlut();
+ c.fpslic().cell(19,22).ylut(0xff);
+ c.fpslic().cell(19,22).xlut(0xff);
+ for(int i=0; i<800; i++) {
+ c.fpslic().cell(20,22).ylut(0xff);
+ c.fpslic().cell(20,22).xlut(0xff);
+ c.fpslic().flush();
+ c.fpslic().cell(20,22).ylut(0x00);
+ c.fpslic().cell(20,22).xlut(0x00);
+ c.fpslic().flush();
+ }
+ c.fpslic().cell(19,22).ylut(save1y);
+ c.fpslic().cell(19,22).xlut(save1x);
+ c.fpslic().cell(20,22).ylut(save2y);
+ c.fpslic().cell(20,22).xlut(save2x);
+ System.out.println("done");
+ repaint();
+ return;
+ }
+ case VK_BACK_QUOTE: {
+ c.xlut(0xff);
+ c.ylut(0xff);
+ repaint();
+ return;
+ }
+ case VK_A: {
+ c.xlut(LUT_SELF & LUT_OTHER);
+ c.ylut(LUT_SELF & LUT_OTHER);
+ repaint();
+ return;
+ }
+ case VK_2:
+ case VK_G:
+ {
+ c.c(YLUT);
+ c.ylut(0x00);
+ c.xlut(0x00);
+ c.wi(L0);
+ c.t(TMUX_W_AND_FB);
+ c.ylut((LUT_SELF & ~LUT_OTHER) |
+ (LUT_Z & ~LUT_OTHER) |
+ (LUT_Z & LUT_SELF));
+ c.fpslic().flush();
+ c.xlut(LUT_Z);
+ c.fpslic().flush();
+ c.wi(NONE);
+ c.fpslic().flush();
+ repaint();
+ return;
+ }
+ case VK_3: {
+
+ c.c(XLUT);
+ c.xlut(0x00);
+ c.ylut(0x00);
+ c.wi(L0);
+ c.t(TMUX_W_AND_FB);
+ c.xlut((LUT_SELF & ~LUT_OTHER) |
+ (LUT_Z & ~LUT_OTHER) |
+ (LUT_Z & LUT_SELF));
+ c.fpslic().flush();
+ c.ylut(LUT_Z);
+ c.fpslic().flush();
+ c.wi(NONE);
+ c.fpslic().flush();
+ repaint();
+ return;
+ }
+ case VK_Z: {
+ c.xlut(LUT_Z);
+ c.ylut(LUT_Z);
+ repaint();
+ return;
+ }
+ case VK_W: {
+ c.xlut(LUT_Z);
+ c.ylut(LUT_SELF);
+ c.t(TMUX_W);
+ repaint();
+ return;
+ }
+ case VK_T: {
+ //c.t(;
+ repaint();
+ return;
+ }
+ case VK_O: {
+ c.xlut(LUT_SELF | LUT_OTHER);
+ c.ylut(LUT_SELF | LUT_OTHER);
+ repaint();
+ return;
+ }
+ case VK_X: {
+ c.xlut(LUT_SELF);
+ c.ylut(LUT_OTHER);
+ repaint();
+ return;
+ }
+ case VK_Y: {
+ c.xlut(LUT_OTHER);
+ c.ylut(LUT_SELF);
+ repaint();
+ return;
+ }
+ case VK_I: {
+ System.out.println("interrupt count => " + ftdiboard.readCount());
+ repaint();
+ return;
+ }
}
else switch(k.getKeyCode()) {
case VK_ESCAPE: scale = 1.0; recenter = null; repaint(); return;
- case VK_0: case VK_1: case VK_2: case VK_3: case VK_4: {
- int i = L0 + (k.getKeyChar() - '0');
+ case VK_BACK_QUOTE: case VK_0: case VK_1: case VK_2: case VK_3: case VK_4: {
+ int i = k.getKeyCode()==VK_BACK_QUOTE ? NONE : (L0 + (k.getKeyChar() - '0'));
switch(lastChar) {
case 'x': c.xi(i); break;
case 'y': case 'q': c.yi(i); break;
case VK_T:
switch(c.t()) {
- case TMUX_FB: c.t(TMUX_W_AND_FB); break;
- case TMUX_W_AND_FB: c.t(TMUX_W); break;
- case TMUX_W: c.t(TMUX_W_AND_Z); break;
- case TMUX_W_AND_Z: c.t(TMUX_Z); break;
- case TMUX_Z: c.t(TMUX_FB); break;
+ case TMUX_FB:
+ case TMUX_W_AND_FB:
+ c.t(TMUX_W_AND_Z);
+ break;
+
+ case TMUX_Z:
+ case TMUX_W_AND_Z:
+ c.t(TMUX_W);
+ break;
+
+ case TMUX_W:
+ c.t(TMUX_W_AND_FB);
+ break;
}
- System.err.println("set " + c.t());
repaint();
return;