3 == Ports ===========================================================
8 == TeX ==============================================================
10 == Fleeterpreter ====================================================
12 private java.awt.Frame frame = null;
13 public void service() {
14 if (box_inX.dataReadyForShip() &&
15 box_inY.dataReadyForShip() &&
16 box_inData.dataReadyForShip()
18 long x = box_inX.removeDataForShip();
19 long y = box_inY.removeDataForShip();
20 long d = box_inData.removeDataForShip();
23 frame = new java.awt.Frame();
24 java.awt.Dimension dim = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
25 frame.setSize((int)dim.getWidth(),(int)dim.getHeight());
27 frame.setBackground(new java.awt.Color(0,0,0));
29 java.awt.Color c = new java.awt.Color(
30 ((d & (1L<<2))!=0) ? 0xff : 0x00,
31 ((d & (1L<<1))!=0) ? 0xff : 0x00,
32 ((d & (1L<<0))!=0) ? 0xff : 0x00
34 java.awt.Graphics2D g = (java.awt.Graphics2D)frame.getGraphics();
35 g.transform(java.awt.geom.AffineTransform.getScaleInstance(((double)frame.getWidth())/640, ((double)frame.getHeight())/480));
37 g.fillRect((int)x,(int)y,1,1);
42 == FleetSim ==============================================================
44 == FPGA ==============================================================
47 wire [31:0] vga_pixel_addr_;
51 assign vga_pixel_a_ = vga_pixel_a;
56 wire [31:0] vga_pixel_data;
57 assign vga_pixel_data = {
64 assign inAddr = inX_d + (inY_d * 640);
66 vram vram(clk, rst, we, inAddr[18:0], vga_pixel_addr_[20:2], inData_d, , mem_out);
72 .fbwb_adr_o(vga_pixel_addr_),
73 .fbwb_stb_o(vga_pixel_r),
74 .fbwb_ack_i(vga_pixel_a_),
75 .fbwb_dat_i(vga_pixel_data),
79 .vga_psave(vga_psave),
80 .vga_hsync(vga_hsync),
81 .vga_vsync(vga_vsync),
83 .vga_blank(vga_blank),
87 .vga_clkout(vga_clkout)
90 always @(posedge clk) begin
96 vga_pixel_a <= vga_pixel_r;
98 if (!inData_r && inData_a) inData_a <= 0;
99 if (!inX_r && inX_a) inX_a <= 0;
100 if (!inY_r && inY_a) inY_a <= 0;
101 if (inX_r && !inX_a && inY_r && !inY_a && inData_r && !inData_a) begin
113 == Constants ========================================================
115 == Test ==============================================================
117 // can't test much here; just make sure it accepts values
129 send token to debug.in;
133 send token to debug.in;
137 send token to debug.in;
145 == Contributors =========================================================
146 Adam Megacz <megacz@cs.berkeley.edu>