uisp-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Uisp-dev] Use with Futurlec's AT90S8535 Development Board?


From: Theodore A. Roth
Subject: Re: [Uisp-dev] Use with Futurlec's AT90S8535 Development Board?
Date: Sun, 2 Mar 2003 21:37:42 -0800 (PST)

On Wed, 26 Feb 2003, Richard Barrington wrote:

:)Sorry about that. New patch is attached.
:)
:)It did need the usage message added. I forgot about it, because the :)actual -dprog parsing was handled in the TDAPA class.
:)
:)Richard.
:)

Hi Richard,

I was just going over your patch for uisp and saw this hunk from DAPA.C:

@@ -847,6 +874,13 @@
    break;

  case PAT_DT006:
+
+  case PAT_ETT:
+    par_ctrl = ETT_DOUT;
+    par_data = ETT_SCK | ETT_RESET;
+    mosi_invert = 1;
+    break;
+
  case PAT_MAXI:
    par_ctrl = 0;
    par_data = 0xFF;


I think originally the DT006 case was falling through to the MAXI case. With you patch it now falls into the ETT case.

It seems to me that hunk should look like this:

@@ -846,6 +873,12 @@
    par_data = FBPRG_POW | FBPRG_RESET;
    break;

+  case PAT_ETT:
+    par_ctrl = ETT_DOUT;
+    par_data = ETT_SCK | ETT_RESET;
+    mosi_invert = 1;
+    break;
+
  case PAT_DT006:
  case PAT_MAXI:
    par_ctrl = 0;


Was there any specific reason you decided to put the PAT_ETT between DT006 and MAXI?

If not, I'll go ahead and commit your patch with my version of that hunk.

Ted Roth
diff -ur uisp-20021201/src/DAPA.C uisp-20030226/src/DAPA.C
--- uisp-20021201/src/DAPA.C    Tue Nov 26 18:19:50 2002
+++ uisp-20030226/src/DAPA.C    Mon Feb 24 00:11:40 2003
@@ -280,6 +280,12 @@
 #define DT006_DIN    PARPORT_STATUS_BUSY
 #define DT006_DOUT   0x01
 
+/* ETT-AVR V2.0 Programmer / Futurlec AT90S8535 */ 
+#define ETT_SCK      0x01                   /* DB25 Pin  2: D0 (Base + 0) -> 
SCK      */
+#define ETT_RESET    0x02                   /* DB25 Pin  3: D1 (Base + 0) -> 
RESET    */
+#define ETT_DIN      PARPORT_STATUS_ACK     /* DB25 Pin 10: ACK (Base + 1) -> 
MISO    */
+#define ETT_DOUT     PARPORT_CONTROL_STROBE /* DB25 Pin  1: STROBE (Base + 2) 
-> MOSI */
+
 /* ABC Maxi - just like DT006 with two pins swapped */
 /* all at base, except for MAXI_DIN at base + 1 */
 #define MAXI_SCK    0x02
@@ -456,6 +462,11 @@
     ParportWriteData();
     break;
 
+  case PAT_ETT:
+    if (b) par_data |= ETT_RESET; else par_data &= ~ETT_RESET;
+    ParportWriteData();
+    break;
+
   case PAT_MAXI:
     if (b) par_data |= MAXI_RESET; else par_data &= ~MAXI_RESET;
     ParportWriteData();
@@ -525,6 +536,11 @@
     ParportWriteData();
     break;
 
+  case PAT_ETT:
+    if (b) par_data |= ETT_SCK; else par_data &= ~ETT_SCK;
+    ParportWriteData();
+    break;
+  
   case PAT_MAXI:
     if (b) par_data |= MAXI_SCK; else par_data &= ~MAXI_SCK;
     ParportWriteData();
@@ -559,6 +575,7 @@
   case PAT_DAPA:
   case PAT_FBPRG:
   case PAT_DT006:
+  case PAT_ETT:
   case PAT_MAXI:
     if (b) {
       ParportSetDir(0);
@@ -678,6 +695,7 @@
   case PAT_BSD:
   case PAT_FBPRG:
   case PAT_DT006:
+  case PAT_ETT:
   case PAT_MAXI:
   case PAT_XIL:
   case PAT_DASA:
@@ -748,6 +766,11 @@
     ParportWriteData();
     break;
 
+  case PAT_ETT:
+    if (b) par_ctrl |= ETT_DOUT; else par_ctrl &= ~ETT_DOUT;
+    ParportWriteCtrl();
+    break;
+
   case PAT_MAXI:
     if (b) par_data |= MAXI_DOUT; else par_data &= ~MAXI_DOUT;
     ParportWriteData();
@@ -783,6 +806,10 @@
     ParportReadStatus();
     b = (~par_status & PARPORT_STATUS_BUSY);
     break;
+  case PAT_ETT:
+    ParportReadStatus();
+    b = (par_status & ETT_DIN);
+    break;
   case PAT_STK200:
   case PAT_AVRISP:
   case PAT_BSD:
@@ -847,6 +874,13 @@
     break;
 
   case PAT_DT006:
+
+  case PAT_ETT:
+    par_ctrl = ETT_DOUT;
+    par_data = ETT_SCK | ETT_RESET;
+    mosi_invert = 1;
+    break;
+
   case PAT_MAXI:
     par_ctrl = 0;
     par_data = 0xFF;
@@ -955,6 +989,8 @@
     pa_type = PAT_FBPRG;
   else if (val && strcmp(val, "dt006") == 0)
     pa_type = PAT_DT006;
+  else if (val && strcmp(val, "ett") == 0)
+    pa_type = PAT_ETT;
   else if (val && strcmp(val, "maxi") == 0)
     pa_type = PAT_MAXI;
   else if (val && strcmp(val, "xil") == 0)
diff -ur uisp-20021201/src/DAPA.h uisp-20030226/src/DAPA.h
--- uisp-20021201/src/DAPA.h    Tue Aug 20 16:50:30 2002
+++ uisp-20030226/src/DAPA.h    Fri Feb 21 01:52:38 2003
@@ -44,7 +44,7 @@
 class TDAPA {
 public:
   enum TPaType{        PAT_DAPA, PAT_STK200, PAT_ABB, PAT_AVRISP, PAT_BSD,
-               PAT_FBPRG, PAT_DT006, PAT_MAXI, PAT_XIL,
+               PAT_FBPRG, PAT_DT006, PAT_ETT, PAT_MAXI, PAT_XIL,
                PAT_DASA, PAT_DASA2 };
 
 private:
diff -ur uisp-20021201/src/Main.C uisp-20030226/src/Main.C
--- uisp-20021201/src/Main.C    Mon Dec  2 16:36:53 2002
+++ uisp-20030226/src/Main.C    Wed Feb 26 17:56:28 2003
@@ -96,6 +96,7 @@
 "         dt006     http://www.dontronics.com/dt006.html (parallel)\n"
 "         maxi      Investment Technologies Maxi (parallel)\n"
 "         xil       Xilinx HW-JTAG-PC Cable (parallel)\n"
+"         ett       ETT AVR Programmer V2.0 (parallel)\n"
 "         dasa      serial (RESET=RTS SCK=DTR MOSI=TXD MISO=CTS)\n"
 "         dasa2     serial (RESET=!TXD SCK=RTS MOSI=DTR MISO=CTS)\n"
 "\n"

reply via email to

[Prev in Thread] Current Thread [Next in Thread]