801 lines
21 KiB
Plaintext
801 lines
21 KiB
Plaintext
ra_menu {
|
|
echo " IMPACT BOARD REPAIR MENU"
|
|
echo ""
|
|
echo "================================================================="
|
|
echo " gioslot mg_reset allsetup ra_menu"
|
|
echo "-----------------------------------------------------------------"
|
|
echo " dactest vc3test cmaptest bkend"
|
|
echo " hq3test tge_test ge0_test"
|
|
echo " re4test repp_test rdram_mem rdram_repair"
|
|
echo " tram_mem tram_repair tex_draw_test"
|
|
echo "-----------------------------------------------------------------"
|
|
echo " hq3_menu dcb_menu cmap_menu vc3_menu"
|
|
echo " dac_menu ge_menu rss_menu dma_menu"
|
|
echo "-----------------------------------------------------------------"
|
|
echo " gfx_quick gfxva_quick "
|
|
echo " rss rss_quick gd_test"
|
|
echo " rss_unix rss_quick_unix gd_test_unix"
|
|
echo " alphablend_test_repair scene_test_repair"
|
|
echo "================================================================="
|
|
echo " Type ra_menu to view this menu again"
|
|
}
|
|
hq3_menu {
|
|
echo "===== HQ3 DIAG CMDS MENU ====="
|
|
echo "mg_hq3 [n] mg_hq3_initcheck mg_hq3_RegWr mg_hq3_RegRd"
|
|
echo "mg_hq3_RegVf "
|
|
}
|
|
|
|
dcb_menu {
|
|
echo ""
|
|
echo "===== DCB MENU ====="
|
|
echo "mg_xmapdcbreg mg_vc3internalreg mg_cmaprev mg_dacmodereg"
|
|
}
|
|
|
|
cmap_menu {
|
|
echo ""
|
|
echo "===== CMAP DIAG CMDS MENU ====="
|
|
echo ""
|
|
echo " CMAP commands require cmapID as an argument, cmapID : 0/1"
|
|
echo ""
|
|
echo "cmaptest - test CMAP "
|
|
echo "mg_cmaprev mg_cmapaddrsbus"
|
|
echo "mg_cmapaddrsuniq mg_cmappatrn"
|
|
echo "mg_cmapdatabus mg_cmapuniqtest"
|
|
echo "mg_pokecmap mg_peekcmap "
|
|
echo "cmapcrc"
|
|
echo ""
|
|
}
|
|
|
|
vc3_menu {
|
|
echo ""
|
|
echo "===== vc3 DIAG CMDS MENU ====="
|
|
echo ""
|
|
echo "vc3test - test vc3 Regs + vc3 Sram - "
|
|
echo "mg_vc3internalreg mg_vc3clearcursor"
|
|
echo "mg_vc3init mg_vc3reset"
|
|
echo "mg_vc3addrsbus mg_vc3databus"
|
|
echo "mg_vc3patrn mg_vc3addrsuniq"
|
|
echo "mg_vc3disabledsply mg_vc3enabledsply"
|
|
echo "mg_vc3cursorenable mg_vc3cursordisable"
|
|
echo "mg_vc3cursormode mg_vc3cursorposition"
|
|
echo "mg_starttiming mg_stoptiming"
|
|
echo "mg_pokevc3 mg_peekvc3"
|
|
echo "mg_peekvc3ram mg_pokevc3ram"
|
|
echo ""
|
|
}
|
|
|
|
dac_menu {
|
|
echo ""
|
|
echo "===== DAC DIAG CMDS MENU ====="
|
|
echo ""
|
|
echo "dactest - test dac Regs + dac Gamma Tables - "
|
|
echo "mg_dacpllinit"
|
|
echo "mg_dacreset mg_dacctrlreg"
|
|
echo "mg_dacmodereg mg_dacaddrreg"
|
|
echo "mg_clrpaletteaddrUniq mg_clrpalettewalkbit mg_clrpalettepatrn"
|
|
echo "mg_peekdacaddr mg_pokedacaddr "
|
|
echo "mg_peekdacaddr16 mg_pokedacaddr16 "
|
|
echo "mg_peekdacmode mg_pokedacmode "
|
|
echo "mg_peekdacctrl mg_pokedacctrl "
|
|
echo "mg_peekclrpalette mg_pokeclrpalette "
|
|
echo ""
|
|
}
|
|
|
|
|
|
ge_menu {
|
|
echo "===== GE11 DIAG CMDS MENU ====="
|
|
echo "mg_set_ge (0|1) mg_ge_ucode_dbus mg_ge_ucode_abus"
|
|
echo "mg_ge_ucode_a mg_ge_ucode_m mg_ge_ucode_w"
|
|
echo "mg_ge_reg_dump mg_ge_reg ge0_ucode ge1_ucode"
|
|
echo "tge_setup tge_test ge0_test ge0_setup"
|
|
echo "ge1_setup ge1_test"
|
|
}
|
|
rss_reg_menu {
|
|
echo "===== RSS Register Tests MENU ====="
|
|
echo ""
|
|
echo "mg_re_status_reg mg_re_rdwr_regs"
|
|
echo "mg_rdram_addrbus mg_rdram_databus"
|
|
echo "mg_rdram_unique mg_re_internal_ram"
|
|
}
|
|
rss_draw_menu {
|
|
echo "===== RSS Drawing Tests MENU ====="
|
|
echo ""
|
|
echo "mg_z_tri mg_lines mg_points"
|
|
echo "mg_stip_tri mg_xblock mg_chars "
|
|
echo "mg_logicop mg_dither mg_color_tri"
|
|
echo "mg_notex_poly mg_notex_line mg_tex_poly"
|
|
echo "mg_tex_1d mg_tex_3d mg_tex_scistri"
|
|
echo "mg_tex_linegl mg_tex_load mg_tex_persp"
|
|
echo "mg_tex_mag mg_tex_detail mg_tex_bordertall "
|
|
echo "mg_tex_mddma mg_tex_lut4d mg_tex_borderwide"
|
|
echo "mg_dispctrl scene_test alphablend_test"
|
|
}
|
|
rss_dma_menu {
|
|
echo "===== RSS DMA Tests MENU ====="
|
|
echo ""
|
|
echo "rdram_mem tram_mem mg_tram_rev_nobuff"
|
|
echo "rdram_color_buffer rdram_z_buffer rdram_ACC_AUX_buffer"
|
|
echo "rdram_DisplayCD_buffer rdram_overlay_buffer rdram_mem_quick"
|
|
}
|
|
rss_utils_menu {
|
|
echo "===== RSS Utilities MENU ====="
|
|
echo ""
|
|
echo "mg_wr_rss_reg mg_rd_rss_reg "
|
|
echo "mg_rss_init mg_rd_rdram_reg mg_wr_rdram_reg "
|
|
echo "mg_wr_rac_reg mg_rd_rac_reg mg0_rect"
|
|
echo "mg_do_indirect mg0_clear_color mg0_tri "
|
|
echo "mg0_point mg0_line mg0_bars"
|
|
echo "mg_rd_rdram_pio mg_wr_rdram_pio mg_xy_to_rdram"
|
|
echo "mg_sync_pprdram mg_sync_repp mg_read_fb"
|
|
echo "mg_rdram_ccsearch vline hline"
|
|
}
|
|
rss_menu {
|
|
echo "===== RSS DIAG CMDS MENU ====="
|
|
echo ""
|
|
echo "rss_reg_menu rss_draw_menu rss_dma_menu rss_utils_menu"
|
|
echo "rdram_repair tram_repair rss rss_quick"
|
|
}
|
|
dma_menu {
|
|
echo "===== DMA DIAG CMDS MENU ====="
|
|
echo ""
|
|
echo "mg_host_hqdma mg_host_hq_cp_dma"
|
|
echo "dmatest"
|
|
}
|
|
rdram_color_buffer {
|
|
echo "Checking color buffer"
|
|
echo "Walking 1/0..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x240 -p0
|
|
wait
|
|
echo "Address in address..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x240 -p1
|
|
wait
|
|
echo "FFFF0000 pattern..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x240 -p2
|
|
wait
|
|
echo "6 pattern test..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x240 -p3
|
|
wait
|
|
}
|
|
rdram_z_buffer {
|
|
echo "Checking Z buffer"
|
|
echo "Walking 1/0..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0 -p0
|
|
wait
|
|
echo "Address in address..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0 -p1
|
|
wait
|
|
echo "FFFF0000 pattern..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0 -p2
|
|
wait
|
|
echo "6 pattern test..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0 -p3
|
|
wait
|
|
}
|
|
rdram_ACC_AUX_buffer {
|
|
echo "Checking ACC36/AUX buffer"
|
|
echo "Walking 1/0..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0e0 -p0
|
|
wait
|
|
echo "Address in address..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0e0 -p1
|
|
wait
|
|
echo "FFFF0000 pattern..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0e0 -p2
|
|
wait
|
|
echo "6 pattern test..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x0e0 -p3
|
|
wait
|
|
}
|
|
rdram_DisplayCD_buffer {
|
|
echo "Checking Display-CD buffer"
|
|
echo "Walking 1/0..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x320 -p0
|
|
wait
|
|
echo "Address in address..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x320 -p1
|
|
wait
|
|
echo "FFFF0000 pattern..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x320 -p2
|
|
wait
|
|
echo "6 pattern test..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x320 -p3
|
|
wait
|
|
}
|
|
rdram_overlay_buffer {
|
|
echo "Checking Overlay buffer"
|
|
echo "Walking 1/0..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x1c0 -p0
|
|
wait
|
|
echo "Address in address..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x1c0 -p1
|
|
wait
|
|
echo "FFFF0000 pattern..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x1c0 -p2
|
|
wait
|
|
echo "6 pattern test..."
|
|
mg_dma_pp -r0 -e0 -w0 -d0 -b 0x1c0 -p3
|
|
wait
|
|
}
|
|
|
|
vline {
|
|
mg0_line -x $1 1023 0 100 100 100 100 -n $1 0 0 100 100 100 100
|
|
}
|
|
|
|
hline {
|
|
mg0_line -x 1279 $1 0 100 100 100 100 -n 0 $1 0 100 100 100 100
|
|
}
|
|
|
|
rdram_repair {
|
|
allsetup;
|
|
mg_rdram_addrbus;
|
|
mg_rdram_databus;
|
|
mg_rdram_unique;
|
|
rdram_color_buffer;
|
|
rdram_z_buffer;
|
|
rdram_overlay_buffer;
|
|
$tmp = mg_setnumre4s -q;
|
|
if ($tmp == 2) {
|
|
rdram_ACC_AUX_buffer;
|
|
rdram_DisplayCD_buffer;
|
|
}
|
|
}
|
|
tram_repair {
|
|
allsetup
|
|
mg_tram_rev_nobuff
|
|
wait
|
|
echo "Walking 1/0..."
|
|
mg_dma_tram -m 0 -e 0
|
|
wait
|
|
echo "Address in address..."
|
|
mg_dma_tram -m 1 -e 0
|
|
wait
|
|
echo "FFFF0000 pattern..."
|
|
mg_dma_tram -m 2 -e 0
|
|
wait
|
|
echo "6 pattern test..."
|
|
mg_dma_tram -m 3 -e 0
|
|
wait
|
|
$foo = mg_setnumre4s -q
|
|
if ($foo == 2) {
|
|
echo "Walking 1/0..."
|
|
mg_dma_tram -m 0 -e 0 -n1
|
|
wait
|
|
echo "Address in address..."
|
|
mg_dma_tram -m 1 -e 0 -n1
|
|
wait
|
|
echo "FFFF0000 pattern..."
|
|
mg_dma_tram -m 2 -e 0 -n1
|
|
wait
|
|
echo "6 pattern test..."
|
|
mg_dma_tram -m 3 -e 0 -n1
|
|
wait
|
|
}
|
|
}
|
|
cmapcrc {
|
|
mg_pon_puts -s "Testing CMAP-A to DAC pixel path with 0xff0000 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 0 -s 0xff0000;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-A to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-A to DAC pixel path with 0x550000 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 0 -s 0x550000;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-A to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-A to DAC pixel path with 0xaa0000 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 0 -s 0xaa0000;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-A to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-A to DAC pixel path with 0x555555 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 0 -s 0x555555;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-A to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-A to DAC pixel path with 0xaaaaaa pattern\n\r";
|
|
$status = mg_crc -r 1 -l 0 -s 0xaaaaaa;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-A to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-A to DAC pixel path with 0xffffff pattern\n\r";
|
|
$status = mg_crc -r 1 -l 0 -s 0xffffff;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-A to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-B to DAC pixel path with 0xff0000 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 1 -s 0xff0000;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-B to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-B to DAC pixel path with 0x550000 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 1 -s 0x550000;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-B to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-B to DAC pixel path with 0xaa0000 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 1 -s 0xaa0000;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-B to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-B to DAC pixel path with 0x555555 pattern\n\r";
|
|
$status = mg_crc -r 1 -l 1 -s 0x555555;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-B to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-B to DAC pixel path with 0xaaaaaa pattern\n\r";
|
|
$status = mg_crc -r 1 -l 1 -s 0xaaaaaa;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-B to DAC pixel path Test Failed\n\r";
|
|
# return;
|
|
}
|
|
mg_pon_puts -s "Testing CMAP-B to DAC pixel path with 0xffffff pattern\n\r";
|
|
$status = mg_crc -r 1 -l 1 -s 0xffffff;
|
|
if ($status) {
|
|
$failed = 1;
|
|
mg_pon_puts -s "CMAP-B to DAC pixel path Test Failed\n\r";
|
|
}
|
|
}
|
|
rss_test {
|
|
$failed = 0;
|
|
report=2;
|
|
ide_delay -s 6;
|
|
gioslot;
|
|
buffon
|
|
if (mg_gfxconsole) {
|
|
$status = mg_reset;
|
|
$solid = mg_issolid;
|
|
ide_delay -s 4;
|
|
resetcons;
|
|
if ($status) {
|
|
$failed = 1;
|
|
return (-1);
|
|
}
|
|
} else {
|
|
allsetup;
|
|
if ($failed) {
|
|
echo "Initializing graphics failed"
|
|
return (-1)
|
|
}
|
|
}
|
|
ide_delay -s 4;
|
|
$status = re4flextest;
|
|
if ($failed) {
|
|
echo "Flex Test FAILED"
|
|
if ($solid == 0) {
|
|
echo "The RA/RB Board may be BAD"
|
|
}
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
resetcons;
|
|
gioslot;
|
|
$status = mg_reset;
|
|
if ($status) {
|
|
$failed = 1;
|
|
return (-1);
|
|
}
|
|
ide_delay -s 4;
|
|
resetcons;
|
|
$status = bkend;
|
|
if ($failed) {
|
|
echo "bkend FAILED"
|
|
if ($vc3fail) {
|
|
echo "The GD Board may be BAD"
|
|
$vc3fail = 0;
|
|
} else {
|
|
echo "The RA Board may be BAD"
|
|
}
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
allsetup;
|
|
if ($failed) {
|
|
resetcons; buffoff;
|
|
return(-1);
|
|
}
|
|
buffon
|
|
$status = re4test;
|
|
if ($failed) {
|
|
echo "re4test FAILED"
|
|
echo "The RA/RB Board may be BAD"
|
|
resetcons; buffoff;
|
|
return(-1);
|
|
}
|
|
if ($oven) {
|
|
boot -f bootp()mg_re.pass;
|
|
}
|
|
$status = dmatest;
|
|
if ($failed) {
|
|
echo "dmatest FAILED"
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
$status = rdram_mem_quick;
|
|
if ($failed) {
|
|
echo "RDRAM QUICK FAILED"
|
|
echo "The RA/RB Board may be BAD"
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
if ($quick == 0) {
|
|
$status = rdram_mem;
|
|
if ($failed) {
|
|
echo "RDRAM FAILED"
|
|
echo "The RA/RB Board may be BAD"
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
}
|
|
$status = repp_test;
|
|
if ($failed) {
|
|
echo "repp_test FAILED"
|
|
echo "The RA/RB Board may be BAD"
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
if ($oven) {
|
|
boot -f bootp()mg_repp.pass;
|
|
}
|
|
delay;
|
|
allsetup;
|
|
if ($failed) {
|
|
resetcons; buffoff;
|
|
return(-1);
|
|
}
|
|
ide_delay -s 4;
|
|
$status = mg_reset;
|
|
if ($status) {
|
|
$failed = 1;
|
|
return (-1);
|
|
}
|
|
delay;
|
|
resetcons; buffoff;
|
|
buffon;
|
|
# perform TRAM memory and TEXTURE draw tests for Max/High Only
|
|
if ($solid) {
|
|
echo "No Texture Subsystem for MG10"
|
|
echo "Tests for Texture Subsystem are skipped..."
|
|
} else {
|
|
if ($quick == 0) {
|
|
echo "Testing TRAM memory"
|
|
ide_delay -s 6;
|
|
$status = tram_mem;
|
|
if ($failed) {
|
|
echo "tram test FAILED"
|
|
echo "The RA/RB Board may be BAD"
|
|
resetcons; buffoff;
|
|
return(-1);
|
|
}
|
|
if ($oven) {
|
|
boot -f bootp()mg_tram.pass;
|
|
}
|
|
}
|
|
$testnum = "_96"
|
|
$status = tex_draw_test
|
|
if ($failed) {
|
|
echo "tex_draw_test FAILED"
|
|
echo "The RA/RB Board may be BAD"
|
|
resetcons; buffoff;
|
|
return(-1);
|
|
}
|
|
if ($oven) {
|
|
boot -f bootp()mg_tex.pass;
|
|
}
|
|
}
|
|
echo ""
|
|
echo " All tests have passed"
|
|
ide_delay -s 4;
|
|
resetcons; buffoff;
|
|
report=4
|
|
|
|
}
|
|
rss {
|
|
$quick = 0;
|
|
rss_test;
|
|
}
|
|
rss_quick {
|
|
$quick = 1;
|
|
rss_test;
|
|
$quick = 0;
|
|
}
|
|
rss_unix {
|
|
$quick = 0;
|
|
rss_test;
|
|
if($gounix) {
|
|
if($failed == 0) {
|
|
unix;
|
|
}
|
|
}
|
|
}
|
|
rss_quick_unix {
|
|
$quick = 1;
|
|
rss_test;
|
|
$quick = 0;
|
|
if($gounix) {
|
|
if($failed == 0) {
|
|
unix;
|
|
}
|
|
}
|
|
}
|
|
gd_test {
|
|
$failed = 0;
|
|
report=2;
|
|
repeat 3 {
|
|
delay;
|
|
}
|
|
gioslot;
|
|
buffon
|
|
if (mg_gfxconsole) {
|
|
$status = mg_reset;
|
|
$solid = mg_issolid;
|
|
delay;
|
|
delay;
|
|
resetcons;
|
|
if ($status) {
|
|
$failed = 1;
|
|
return (-1);
|
|
}
|
|
} else {
|
|
allsetup;
|
|
if ($failed) {
|
|
echo "Initializing graphics failed"
|
|
return (-1)
|
|
}
|
|
}
|
|
ide_delay -s 4;
|
|
$status = hq3test;
|
|
if ($failed) {
|
|
echo "hq3test FAILED"
|
|
echo "The GD Board may be BAD"
|
|
return($status);
|
|
}
|
|
$status = re4flextest;
|
|
if ($failed) {
|
|
echo "Flex Test FAILED"
|
|
if ($solid == 0) {
|
|
echo "The RA/RB Board may be BAD"
|
|
}
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
resetcons;
|
|
gioslot;
|
|
$status = mg_reset;
|
|
if ($status) {
|
|
$failed = 1;
|
|
return (-1);
|
|
}
|
|
ide_delay -s 4;
|
|
resetcons;
|
|
$status = bkend;
|
|
if ($failed) {
|
|
echo "bkend FAILED"
|
|
if ($vc3fail) {
|
|
echo "The GD Board may be BAD"
|
|
$vc3fail = 0;
|
|
} else {
|
|
echo "The RA Board may be BAD"
|
|
}
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
# resetcons;
|
|
$status = mg_reset;
|
|
if ($status) {
|
|
$failed = 1;
|
|
return (-1);
|
|
}
|
|
$ge_no = mg_queryGE;
|
|
if ($ge_no == 2) # 2 GE system
|
|
{
|
|
echo "Testing 2GE system...."
|
|
$testnum = "_41"
|
|
$status = tge_test;
|
|
}
|
|
if ($failed) {
|
|
echo "tge_test FAILED"
|
|
echo "The GD Board may be BAD"
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
if ($ge_no == 1) # 1 ge system
|
|
{
|
|
echo "Testing 1GE system...."
|
|
$testnum = "_44"
|
|
$status = ge0_test;
|
|
}
|
|
if ($failed) {
|
|
echo "ge_test FAILED"
|
|
echo "The GD Board may be BAD"
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
allsetup;
|
|
if ($failed) {
|
|
resetcons; buffoff;
|
|
return(-1);
|
|
}
|
|
buffon
|
|
$status = dmatest;
|
|
if ($failed) {
|
|
echo "dmatest FAILED"
|
|
resetcons; buffoff;
|
|
return($status);
|
|
}
|
|
echo ""
|
|
echo " All tests have passed"
|
|
ide_delay -s 4;
|
|
resetcons; buffoff;
|
|
report=4
|
|
}
|
|
gd_test_unix {
|
|
gd_test;
|
|
if($gounix) {
|
|
if($failed == 0) {
|
|
unix;
|
|
}
|
|
}
|
|
}
|
|
dac_crc_rss0_pp0 {
|
|
mg_dispctrl -o1 -p0 -r0; delay;
|
|
mg_dispctrl -o0 -p1 -r0; delay;
|
|
mg_dispctrl -o0 -p0 -r1; delay;
|
|
mg_dispctrl -o0 -p1 -r1; delay;
|
|
if ($1 == "DEBUG") report=5;
|
|
if ($8 == 2) $status = mg_crc_test -r $5 -g $6 -b $7;
|
|
else $status = mg_crc_test -r $2 -g $3 -b $4;
|
|
if ($1 == "DEBUG") report=4;
|
|
if ($status) {
|
|
$failed = 1;
|
|
echo " -- ERROR";
|
|
echo $1 "RSS-0 PP0 crc FAILED"; wait
|
|
}
|
|
else echo $1 "RSS-0 PP0 crc PASSED";
|
|
}
|
|
dac_crc_rss0_pp1 {
|
|
mg_dispctrl -o1 -p1 -r0; delay;
|
|
mg_dispctrl -o0 -p0 -r0; delay;
|
|
mg_dispctrl -o0 -p0 -r1; delay;
|
|
mg_dispctrl -o0 -p1 -r1; delay;
|
|
if ($1 == "DEBUG") report=5;
|
|
if ($numrss == 2) $status = mg_crc_test -r $5 -g $6 -b $7;
|
|
else $status = mg_crc_test -r $2 -g $3 -b $4;
|
|
if ($1 == "DEBUG") report=4;
|
|
if ($status) {
|
|
$failed = 1;
|
|
echo " -- ERROR";
|
|
echo $1 "RSS-0 PP1 crc FAILED"; wait
|
|
}
|
|
else echo $1 "RSS-0 PP1 crc PASSED";
|
|
}
|
|
dac_crc_rss1_pp0 {
|
|
delay; delay; mg_dispctrl -o1 -p0 -r0; delay;
|
|
mg_dispctrl -o1 -p0 -r1; delay;
|
|
mg_dispctrl -o0 -p1 -r1; delay;
|
|
mg_dispctrl -o0 -p1 -r0; delay;
|
|
if ($1 == "DEBUG") report=5;
|
|
$status = mg_crc_test -r $2 -g $3 -b $4;
|
|
if ($1 == "DEBUG") report=4;
|
|
if ($status) {
|
|
$failed = 1;
|
|
echo " -- ERROR";
|
|
echo $1 "RSS-1 PP0 crc FAILED"; wait
|
|
}
|
|
else echo $1 "RSS-1 PP0 crc PASSED";
|
|
}
|
|
dac_crc_rss1_pp1 {
|
|
mg_dispctrl -o1 -p1 -r0; delay;
|
|
mg_dispctrl -o1 -p1 -r1; delay;
|
|
mg_dispctrl -o0 -p0 -r1; delay;
|
|
mg_dispctrl -o0 -p0 -r0; delay;
|
|
if ($1 == "DEBUG") report=5;
|
|
$status = mg_crc_test -r $2 -g $3 -b $4;
|
|
if ($1 == "DEBUG") report=4;
|
|
if ($status) {
|
|
$failed = 1;
|
|
echo " -- ERROR";
|
|
echo $1 "RSS-1 PP1 crc FAILED"; wait
|
|
}
|
|
else echo $1 "RSS-1 PP1 crc PASSED";
|
|
}
|
|
restore_pps {
|
|
mg_dispctrl -o1 -p1 -r0; delay; mg_dispctrl -o1 -p0 -r0; delay;
|
|
mg_dispctrl -o1 -p0 -r1; delay; mg_dispctrl -o1 -p1 -r1; delay;
|
|
}
|
|
scene_test_repair {
|
|
$failed = 0;
|
|
mg_reset;
|
|
drawsetup
|
|
$numrss = mg_setnumre4s -q
|
|
mg_vc3clearcursor;
|
|
echo "------ Executing Scene Test with CRC ------"
|
|
echo "------ Testing the scene in the display buffer ------"
|
|
scene1
|
|
dac_crc_rss0_pp0 "scene_test display buffer" 0x125 0x256 0x3bf 0x3fc 0xfc 0x1f $numrss;
|
|
if ($failed) return (-1)
|
|
dac_crc_rss0_pp1 "scene_test display buffer" 0x3bd 0xe 0x141 0x1c4 0x6d 0x29f $numrss;
|
|
if ($failed) return (-1)
|
|
if ($numrss == 2) {
|
|
dac_crc_rss1_pp0 "scene_test display buffer" 0x125 0x256 0x3bf;
|
|
if ($failed) return (-1)
|
|
dac_crc_rss1_pp1 "scene_test display buffer" 0x3bd 0xe 0x141;
|
|
if ($failed) return (-1)
|
|
}
|
|
wait;
|
|
echo "------ Testing the scene in the overlay buffer ------"
|
|
allsetup
|
|
scene1;
|
|
delay;
|
|
mg_overlay_on;
|
|
mg0_clear_color -f 0x41;
|
|
mg_enabdisp_overlay;
|
|
scene1_overlay;
|
|
dac_crc_rss0_pp0 "scene_test overlay buffer" 0x3d7 0x64 0x21e 0x51 0x3c6 0x34f $numrss;
|
|
if ($failed) return (-1)
|
|
dac_crc_rss0_pp1 "scene_test overlay buffer" 0x29e 0x34f 0x34d 0x163 0x2a4 0x3fe $numrss;
|
|
if ($failed) return (-1)
|
|
if ($numrss == 2) {
|
|
dac_crc_rss1_pp0 "scene_test overlay buffer" 0x2a1 0x219 0x3d;
|
|
if ($failed) return (-1)
|
|
dac_crc_rss1_pp1 "scene_test overlay buffer" 0x29e 0x34f 0x34d;
|
|
if ($failed) return (-1)
|
|
}
|
|
wait;
|
|
echo "Resetting graphics for you";
|
|
mg_disabdisp_overlay;
|
|
mg_overlay_off;
|
|
allsetup;
|
|
if ($failed) return (-1)
|
|
echo ""; echo "******** Scene Test with DAC CRC PASSED ********"
|
|
}
|
|
alphablend_test_repair {
|
|
$failed = 0;
|
|
mg_reset;
|
|
delay;
|
|
drawsetup;
|
|
mg0_clear_color
|
|
mg_vc3clearcursor
|
|
$numrss = mg_setnumre4s -q
|
|
$status = mg_alphablend
|
|
if ($status) {
|
|
$failed = 1;
|
|
echo " -- ERROR";
|
|
echo "alphablend RDRAM readback FAILED";
|
|
}
|
|
dac_crc_rss0_pp0 "alphablend" 0x167 0x3b2 0x3a0 0x1d2 0x1d 0x2d6 $numrss
|
|
dac_crc_rss0_pp1 "alphablend" 0x254 0x370 0x266 0xf8 0x235 0xc4 $numrss
|
|
if ($numrss == 2) {
|
|
dac_crc_rss1_pp0 "alphablend" 0x167 0x3b2 0x3a0;
|
|
dac_crc_rss1_pp1 "alphablend" 0x254 0x370 0x266;
|
|
}
|
|
restore_pps;
|
|
if ($failed)
|
|
echo "******** Alphablend Test with DAC CRC FAILED ********"
|
|
else
|
|
echo "******** Alphablend Test with DAC CRC PASSED ********"
|
|
}
|
|
$numrss = mg_setnumre4s -q
|
|
report=4;
|
|
ra_menu
|