]> sigrok.org Git - sigrok-firmware-fx2lafw.git/blobdiff - fx2lib/fw/fw.c
Drop fx2lib files we don't really need.
[sigrok-firmware-fx2lafw.git] / fx2lib / fw / fw.c
diff --git a/fx2lib/fw/fw.c b/fx2lib/fw/fw.c
deleted file mode 100644 (file)
index ca0d871..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-/**
- * Copyright (C) 2009 Ubixum, Inc. 
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
- **/
-
-#include <fx2macros.h>
-#include <fx2ints.h>
-#include <autovector.h>
-#include <delay.h>
-#include <setupdat.h>
-
-#ifdef DEBUG_FIRMWARE 
-#include <serial.h>
-#include <stdio.h>
-#else
-#define printf(...)
-#endif
-
-
-
-
-volatile bit dosud=FALSE;
-volatile bit dosuspend=FALSE;
-
-// custom functions
-extern void main_loop();
-extern void main_init();
-
-
-void main() {
-
-#ifdef DEBUG_FIRMWARE
- SETCPUFREQ(CLK_48M); // required for sio0_init 
- // main_init can still set this to whatever you want.
- sio0_init(57600); // needed for printf if debug defined 
-#endif
-
- main_init();
-
- // set up interrupts.
- USE_USB_INTS();
- ENABLE_SUDAV();
- ENABLE_USBRESET();
- ENABLE_HISPEED(); 
- ENABLE_SUSPEND();
- ENABLE_RESUME();
-
- EA=1;
-
-// iic files (c2 load) don't need to renumerate/delay
-// trm 3.6
-#ifndef NORENUM
- RENUMERATE();
-#else
- USBCS &= ~bmDISCON;
-#endif
- while(TRUE) {
-
-     main_loop();
-
-     if (dosud) {
-       dosud=FALSE;
-       handle_setupdata();
-     }
-
-     if (dosuspend) {
-        dosuspend=FALSE;
-        do {
-           printf ( "I'm going to Suspend.\n" );
-           WAKEUPCS |= bmWU|bmWU2; // make sure ext wakeups are cleared
-           SUSPEND=1;
-           PCON |= 1;
-           __asm
-           nop
-           nop
-           nop
-           nop
-           nop
-           nop
-           nop
-           __endasm;
-        } while ( !remote_wakeup_allowed && REMOTE_WAKEUP()); 
-        printf ( "I'm going to wake up.\n");
-
-        // resume
-        // trm 6.4
-        if ( REMOTE_WAKEUP() ) {
-            delay(5);
-            USBCS |= bmSIGRESUME;
-            delay(15);
-            USBCS &= ~bmSIGRESUME;
-        }
-
-     }
-
- } // end while
-
-} // end main
-
-void resume_isr() __interrupt RESUME_ISR {
- CLEAR_RESUME();
-}
-  
-void sudav_isr() __interrupt SUDAV_ISR {
- dosud=TRUE;
- CLEAR_SUDAV();
-}
-void usbreset_isr() __interrupt USBRESET_ISR {
- handle_hispeed(FALSE);
- CLEAR_USBRESET();
-}
-void hispeed_isr() __interrupt HISPEED_ISR {
- handle_hispeed(TRUE);
- CLEAR_HISPEED();
-}
-
-void suspend_isr() __interrupt SUSPEND_ISR {
- dosuspend=TRUE;
- CLEAR_SUSPEND();
-}