/[dejagnu]/dejagnu/config/tic80.exp
ViewVC logotype

Diff of /dejagnu/config/tic80.exp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.2 by rsavoye, Mon Mar 17 02:25:07 2003 UTC revision 1.3 by bje, Thu Aug 7 03:42:43 2003 UTC
# Line 26  Line 26 
26  #  #
27    
28  proc tic80_load { dest prog args } {  proc tic80_load { dest prog args } {
29      set dos_box [board_info $dest dos_host];      set dos_box [board_info $dest dos_host]
30    
31      remote_spawn $dos_box [board_info $dest io_program];      remote_spawn $dos_box [board_info $dest io_program]
32    
33      set status [remote_ld $dest $prog];      set status [remote_ld $dest $prog]
34    
35      if { $status != "pass" } {      if { $status != "pass" } {
36          return $status;          return $status
37      }      }
38    
39      set result [remote_wait $dos_box 300];      set result [remote_wait $dos_box 300]
40      set output [lindex $result 1];      set output [lindex $result 1]
41      if { [lindex $result 0] < 0 } {      if { [lindex $result 0] < 0 } {
42          if [board_info $dos_box exists fileid] {          if [board_info $dos_box exists fileid] {
43              dos_interrupt_job $dos_box;              dos_interrupt_job $dos_box
44          } else {          } else {
45              remote_close $dos_box;              remote_close $dos_box
46          }          }
47      }      }
48    
49      set status "fail";      set status "fail"
50      regsub "(\\*\\*\\* EXIT code \[0-9\]+\[\r\n]+).*$" "$output" "\\1" output;      regsub "(\\*\\*\\* EXIT code \[0-9\]+\[\r\n]+).*$" "$output" "\\1" output
51      verbose "board out is $output";      verbose "board out is $output"
52      set bstatus [check_for_board_status output];      set bstatus [check_for_board_status output]
53      if { [lindex $result 0] >= 0 } {      if { [lindex $result 0] >= 0 } {
54          if { $bstatus == 0 } {          if { $bstatus == 0 } {
55              set status "pass";              set status "pass"
56          }          }
57      }      }
58      remote_file build delete "a.fix";      remote_file build delete "a.fix"
59      return [list $status $output];      return [list $status $output]
60  }  }
61    
62  proc tic80_ld { dest prog } {  proc tic80_ld { dest prog } {
63      set dos_box [board_info $dest dos_host];      set dos_box [board_info $dest dos_host]
64      set dopush 0;      set dopush 0
65    
66      if { [remote_swap_conn $dos_box] == "fail" } {      if { [remote_swap_conn $dos_box] == "fail" } {
67          if { [remote_push_conn $dos_box] == "fail" } {          if { [remote_push_conn $dos_box] == "fail" } {
68              set dopush 1;              set dopush 1
69          }          }
70          remote_open $dos_box;          remote_open $dos_box
71      }      }
72      set prog [remote_download $dos_box $prog "a.fix"];      set prog [remote_download $dos_box $prog "a.fix"]
73    
74      remote_spawn $dos_box "[board_info $dest start_program] $prog";      remote_spawn $dos_box "[board_info $dest start_program] $prog"
75      remote_expect $dos_box 10 {      remote_expect $dos_box 10 {
76          -re "file\[(\]s\[)\] copied" {}          -re "file\[(\]s\[)\] copied" {}
77      }      }
78      sleep 3;      sleep 3
79      dos_interrupt_job $dos_box;      dos_interrupt_job $dos_box
80      if { $dopush } {      if { $dopush } {
81          remote_push_conn $dos_box;          remote_push_conn $dos_box
82      } else {      } else {
83          remote_swap_conn $dos_box;          remote_swap_conn $dos_box
84      }      }
85      return "pass";      return "pass"
86  }  }
87  #  #
88  # Close the connection to the DOS box.  # Close the connection to the DOS box.
89  #  #
90  proc tic80_close { host } {  proc tic80_close { host } {
91      set dos_box [board_info $host dos_host];      set dos_box [board_info $host dos_host]
92    
93      return [remote_close $dos_box];      return [remote_close $dos_box]
94  }  }
95    
96  set_board_info protocol "tic80";  set_board_info protocol "tic80"
97  set_board_info gdb,use_standard_load 1;  set_board_info gdb,use_standard_load 1
98  set_board_info gdb,no_push_conn 1;  set_board_info gdb,no_push_conn 1
99  set_board_info gdb,do_reload_on_run 1;  set_board_info gdb,do_reload_on_run 1
100  set_board_info gdb,use_breakpoint_for_stub 1  set_board_info gdb,use_breakpoint_for_stub 1

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26