Advertisement
Guest User

DC GD TOC spoof (OzOnE)

a guest
Nov 21st, 2011
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.         9: begin    // Generate TOC reply.
  2.             if (gd_addr == 3'd0) begin  // If in DATA reg (assuming Double-density TOC for now)...
  3.                 gd_oe <= !gd_rd_n;
  4.                 case (byte_count)
  5.                     0: gd_data_write <= 16'hFFFF;   // Definitely sends 0xFFFF's first? (with DreamOn vol 6 GD-ROM).
  6.                     2: gd_data_write <= 16'hFFFF;
  7.                     4: gd_data_write <= 16'hFFFF;
  8.                     6: gd_data_write <= 16'hFFFF;
  9.                     8: gd_data_write <= 16'h0041;   // Data track (top nibble 4 == DATA track)...
  10.                     10: gd_data_write <= 16'h5EB0;  // FAD 0x00B05E (45150, so LBA 45000).
  11.                                                     // All "0xFFFF's" in between are sent by default case!
  12.                     396: gd_data_write <= 16'h0341; // Start track (3).
  13.                     398: gd_data_write <= 16'h0000;
  14.                     400: gd_data_write <= 16'h0341; // End track (3).
  15.                     402: gd_data_write <= 16'h0000;
  16.                     404: gd_data_write <= 16'h0841; // Lead out.
  17.                     406: gd_data_write <= 16'hB461; // FAD 0x0861B4 (549300, so LBA 549150 decimal)
  18.                
  19.                     default: gd_data_write <= 16'hffff; // All other words are 0xFFFF (important!).
  20.                 endcase
  21.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement