Skip to content

Commit

Permalink
initial commit with files from Dynamic C 10.72 installer
Browse files Browse the repository at this point in the history
  • Loading branch information
digiinternational authored and tomlogic committed Sep 10, 2015
1 parent a64bf47 commit b061642
Show file tree
Hide file tree
Showing 1,114 changed files with 516,536 additions and 0 deletions.
Binary file added Bios/COLDLOAD.BIN
Binary file not shown.
Binary file added Bios/COLDLOADSERFLASH.BIN
Binary file not shown.
Binary file added Bios/PILOT16bit.bin
Binary file not shown.
Binary file added Bios/RAMonlyColdload.bin
Binary file not shown.
Binary file added Bios/RAMonlypilot.bin
Binary file not shown.
127 changes: 127 additions & 0 deletions Bios/RabbitBios.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
/***********************************************************************
* ******************************************************************** *
* * * *
* * BIOS Selector Shell for Rabbit 4000 CPU based boards. * *
* * * *
* * * *
* * Copyright (c) 1999-2006 Rabbit Semiconductor, Inc. * *
* * * *
* * Assumes ATMEL compatible flash algorithms. * *
* * * *
* ******************************************************************** *
***********************************************************************/

#ifndef __BIOS_ALREADY_COMPILED
#define __BIOS_ALREADY_COMPILED
#else
#fatal "Cannot compile the BIOS as a user program!"
#endif

#use "SYSIODEFS.LIB"
#use "SYSCONFIG.LIB" // All user-defined macros for BIOS configuration
#use "BOARDTYPES.LIB" // board-specific initialization header

// ***** _CLK_DBL_ macro check *****************************************
#if (CPU_ID_MASK(_CPU_ID_) < R4000)
#fatal "This version of Dynamic C is only supported for RCM4XXX or newer core modules."
#endif

enum OriginType { UNKNOWN_ORG = 0, RCODORG, XCODORG, WCODORG, RVARORG, XVARORG,
WVARORG, RCONORG, RESVORG };

typedef struct {
char type;
char flags; //
unsigned long paddr; // Physical address
unsigned laddr; // Logical address
unsigned long usedbytes; // Actual number of bytes used or reserved
// starting from paddr/laddr
unsigned long totalbytes; // Total space allocated
} _sys_mem_origin_t;

// These are defined by the compiler.
extern int _orgtablesize;
extern _sys_mem_origin_t _orgtable[];

#define _cexpr(X) 0+(X)

#use "stdBIOS.c"

#flushlib
#flushlib

#pragma CompileProgram

#flushcompile

#flushlib
#flushlib
#flushlib

#asm
StartUserCode::
#if _DK_ENABLE_DEBUGKERNEL_ || defined RFU_BIN_RUN_IMMEDIATELY
/*
When RFU_BIN_RUN_IMMEDIATELY is defined in Dynamic C's Project Options'
Defines tab, a BIN program image successfully loaded by RFU 4.72 or later
will run both BIOS code and user code immediately after loading, with the
programming cable still connected. With the programming cable
disconnected, BIOS code and user code will execute as usual.
This mode of operation is enforced when Dynamic C's debug kernel is
enabled. It can also be useful in test fixture code, for example, where a
test fixture can not or does not control the SMODEx levels and manual
disconnection of the programming cable is inconvenient or undesirable.
*/
#elif defined RFU_BIN_WAIT_FOR_RUN_MODE
/*
When RFU_BIN_WAIT_FOR_RUN_MODE is defined in Dynamic C's Project Options'
Defines tab, a BIN program image successfully loaded by RFU 4.72 or later
will run BIOS code and then pause in an idle loop, waiting for the
programming cable to be disconnected. As soon as the programming cable is
disconnected, user code will begin to execute. With the programming cable
disconnected, BIOS code and user code will execute as usual.
This mode of operation can be useful in test fixture code, for example,
where a test fixture can control at least one of the SMODEx levels and
manual disconnection of the programming cable is inconvenient or
undesirable.
*/
push af
.rfu_wait_for_run_mode:
call bioshitwd
ioi ld a, (SPCR)
and 0x60
cp 0x60 ; are both SMODE0==1 and SMODE1==1?
jr z, .rfu_wait_for_run_mode ; if yes, loop back and check again

pop af
#else // effectively, RFU_BIN_WAIT_FOR_RESET
/*
Default behavior. When neither RFU_BIN_RUN_IMMEDIATELY nor
RFU_BIN_WAIT_FOR_RUN_MODE are defined, a BIN program image successfully
loaded by RFU 4.72 or later will run BIOS code only and then will wait in
an idle loop until a hardware reset occurs. Following a hardware reset and
with the programming cable disconnected, BIOS code and user code will
execute as usual.
This mode of operation most closely emulates the behavior of RFU versions
prior to 4.72. It can also be useful in test fixture code, for example,
where a test fixture can control at least one of the SMODEx levels as well
as the RESET level, and manual disconnection of the programming cable is
inconvenient or undesirable.
*/
push af
ioi ld a, (SPCR)
and 0x60
cp 0x60 ; are both SMODE0==1 and SMODE1==1?
jr nz, .rfu_continue_after_reset ; if no, go execute user code

.rfu_wait_for_reset:
call bioshitwd
jr .rfu_wait_for_reset ; idle loop (until hardware reset)

.rfu_continue_after_reset:
pop af
#endif
#endasm
Binary file added Bios/checkRamCS0.bin
Binary file not shown.
Binary file added Bios/checkcs04mem.bin
Binary file not shown.
Binary file added Bios/coldload16bit.bin
Binary file not shown.
Binary file added Bios/pilot.bin
Binary file not shown.
Binary file added Bios/pilotserflash.bin
Binary file not shown.
Binary file added Bios/precoldload.bin
Binary file not shown.
37 changes: 37 additions & 0 deletions Dynamic C Terms.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
DYNAMIC C� SOFTWARE
END USER LICENSE AGREEMENT


IMPORTANT - READ CAREFULLY: BY INSTALLING, COPYING OR OTHERWISE USING THE ENCLOSED DIGI INTERNATIONAL, INC. ("Digi") DYNAMIC C� SOFTWARE (the "Software"), WHICH INCLUDES COMPUTER SOFTWARE AND MAY INCLUDE ASSOCIATED MEDIA, PRINTED MATERIALS, AND "ONLINE" OR ELECTRONIC DOCUMENTATION (collectively, the �Documentation"), YOU (ON BEHALF OF YOURSELF OR AS AN AUTHORIZED REPRESENTATIVE ON BEHALF OF AN ENTITY) AGREE TO ALL THE TERMS OF THIS END USER LICENSE AGREEMENT (the "License") REGARDING YOUR USE OF THE SOFTWARE. IF YOU DO NOT AGREE WITH ALL OF THE TERMS OF THIS LICENSE, DO NOT INSTALL, COPY OR OTHERWISE USE THE SOFTWARE AND IMMEDIATELY CONTACT DIGI FOR RETURN OF THE SOFTWARE AND A REFUND OF THE PURCHASE PRICE FOR THE SOFTWARE.
If You have any questions, write Digi at 11001 Bren Road East, Minnetonka, MN 55343 or call Digi at 1-877-912-3444 (U.S. & Canada) or +1 952-912-3456 (Worldwide).
1. Definitions. In addition to the definitions stated in the first paragraph of this document, capitalized words used in this License shall have the following meanings:
1.1 "Qualified Application" means an application program which links with the development libraries of the Software and which either:
� Has been developed using the Software; and/or
� Has been developed using the Softools WinIDE� program for Digi�s Rabbit�
processors (available from Softools, Inc.) and any library or sample code
provided with the Software except:
o the MicroC/OS-II (uC/OS-II) library and sample code released with any
version of the Software, or
o the Point-to-Point Protocol (PPP) library released prior to version
7.32 of the Software.
1.2 "Qualified Systems" means a microprocessor-based computer system which is either:
� manufactured by, for or under license from Digi, or
� based on the Rabbit� 2000 microprocessor, the Rabbit� 3000
microprocessor, the Rabbit� 4000 microprocessor, the Rabbit� 5000
microprocessor, the Rabbit� 6000 microprocessor, or any other Digi Rabbit�
microprocessor;
but is not either:
� designed or intended to be re-programmable by your customer using the
Software, or
� competitive with Digi products [unless otherwise specifically stated in a
written agreement (which may require payment of run-time royalties to
Digi) between Digi and the system manufacturer].
2. License. Digi grants to You a nonexclusive, nontransferable license to (i) use and reproduce the Software, solely for internal purposes and not for redistribution or resale; (ii) use and reproduce the Software solely to develop the Qualified Applications; and (iii) use, reproduce and distribute the Qualified Applications, in object code only, to end users solely for use on Qualified Systems; provided, however, any agreement entered into between You and such end users with respect to a Qualified Application is no less protective of Digi�s intellectual property rights than the terms and conditions of this License. (iv) use and distribute with Qualified Applications and Qualified Systems those program files (in their unaltered forms) distributed with the Software which are required for field re-programming of Qualified Systems.
3. Restrictions. Except as otherwise stated, You may not, nor permit anyone else to decompile, reverse engineer, disassemble or otherwise attempt to reconstruct or discover the source code of the Software, alter, merge, modify, translate, or adapt in any way the Software, prepare any derivative work based upon the Software, rent, lease network, loan, distribute or otherwise transfer the Software or any copy thereof. You shall not make copies of the copyrighted Software and/or Documentation without the prior written permission of Digi; provided that, You may make one (1) back-up copy of the Software for backup purposes and a reasonable number of copies of the Documentation for Your own archival purposes. You may not use copies of the Software as part of a benchmark or comparison test against other similar products in order to produce results strictly for purposes of comparison. The Software contains copyrighted material, trade secrets and other proprietary material of Digi and/or its licensors and You must reproduce, on each copy of the Software, all copyright notices and any other proprietary legends that appear on or in the original copy of the Software. Except for the limited license granted above, Digi retains all right, title and interest in and to all intellectual property rights embodied in the Software, including but not limited to patents, patent applications, copyrights and trade secrets.
4. Export Law Assurances. You agree and certify that neither the Software nor any other technical data received from Digi, nor the direct product thereof, will be exported outside the United States or re-exported except as authorized and as permitted by the laws and regulations of the United States and/or the laws and regulations of the jurisdiction, (if other than the United States) in which You rightfully obtained the Software. The Software may not be exported (directly, indirectly, or by deemed export) to any countries prohibited by applicable export control laws.
5. Government End Users. If You are acquiring the Software on behalf of any unit or agency of the United States Government, the following provisions apply. The Government agrees: (i) if the Software is supplied to the Department of Defense ("DOD"), the Software is classified as "Commercial Computer Software" and the Government is acquiring only "restricted rights" in the Software and its Documentation as that term is defined in Clause 252.227-7013(c)(1) of the DFARS; and (ii) if the Software is supplied to any unit or agency of the United States Government other than DOD, the Government's rights in the Software and its Documentation will be as defined in Clause 52.227-19(c)(2) of the FAR or, in the case of NASA, in Clause 18-52.227-86(d) of the NASA Supplement to the FAR.
6. Disclaimer of Warranty. You expressly acknowledge and agree that the use of the Software and its Documentation is at Your sole risk. THE SOFTWARE, DOCUMENTATION, AND TECHNICAL SUPPORT ARE PROVIDED ON AN "AS IS" BASIS AND WITHOUT WARRANTY OF ANY KIND. Information regarding any third party services included in this package is provided as a convenience only, without any warranty by Digi, and will be governed solely by the terms agreed upon between You and the third party providing such services. DIGI AND ITS LICENSORS EXPRESSLY DISCLAIM ALL WARRANTIES, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT OF THIRD PARTY RIGHTS. DIGI DOES NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR THAT DEFECTS IN THE SOFTWARE WILL BE CORRECTED. FURTHERMORE, DIGI DOES NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE OR THE RESULTS OF THE SOFTWARE IN TERMS OF ITS CORRECTNESS, ACCURACY, RELIABILITY OR OTHERWISE. NO ORAL OR WRITTEN INFORMATION OR ADVICE GIVEN BY DIGI OR ITS AUTHORIZED REPRESENTATIVES SHALL CREATE A WARRANTY OR IN ANY WAY INCREASE THE SCOPE OF THIS WARRANTY. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE EXCLUSION MAY NOT APPLY TO YOU.
7. Limitation of Liability. YOU AGREE THAT UNDER NO CIRCUMSTANCES, INCLUDING NEGLIGENCE, SHALL DIGI BE LIABLE FOR ANY INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES (INCLUDING DAMAGES FOR LOSS OF BUSINESS
PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION AND THE LIKE) ARISING OUT OF THE USE AND/OR INABILITY TO USE THE SOFTWARE, EVEN IF DIGI OR ITS AUTHORIZED REPRESENTATIVE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME JURISDICTIONS DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY FOR INCIDENTAL OR CONSEQUENTIAL DAMAGES SO THE ABOVE LIMITATION OR EXCLUSION MAY NOT APPLY TO YOU. IN NO EVENT SHALL DIGI�S TOTAL LIABILITY TO YOU FOR ALL DAMAGES, LOSSES, AND CAUSES OF ACTION (WHETHER IN CONTRACT, TORT, INCLUDING NEGLIGENCE, OR OTHERWISE) EXCEED THE AMOUNT PAID BY YOU FOR THE SOFTWARE.
8. Termination. This License is effective for the duration of the copyright in the Software unless terminated. You may terminate this License at any time by destroying all copies of the Software and its Documentation. This License will terminate immediately without notice from Digi if You fail to comply with any provision of this License. Upon termination, You must destroy all copies of the Software and its Documentation. Except for Section 2 ("License"), all Sections of this Agreement shall survive any expiration or termination of this License.
9. General Provisions. No delay or failure to take action under this License will constitute a waiver unless expressly waived in writing, signed by a duly authorized representative of Digi, and no single waiver will constitute a continuing or subsequent waiver. This License may not be assigned, sublicensed or otherwise transferred by You, by operation of law or otherwise, without Digi's prior written consent. This License shall be governed by and construed in accordance with the laws of the United States and the State of California, exclusive of the conflicts of laws principles. The United Nations Convention on Contracts for the International Sale of Goods shall not apply to this License. If for any reason a court of competent jurisdiction finds any provision of this License, or portion thereof, to be unenforceable, that provision of the License shall be enforced to the maximum extent permissible so as to affect the intent of the parties, and the remainder of this License shall continue in full force and effect. This License constitutes the entire agreement between the parties with respect to the use of the Software and its Documentation, and supersedes all prior or contemporaneous understandings or agreements, written or oral, regarding such subject matter. There shall be no contract for purchase or sale of the Software except upon the terms and conditions specified herein. Any additional or different terms or conditions proposed by You or contained in any purchase order are hereby rejected and shall be of no force and effect unless expressly agreed to in writing by Digi. No amendment to or modification of this License will be binding unless in writing and signed by a duly authorized representative of Digi.
15 changes: 15 additions & 0 deletions LIB.DIR
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
// The following two lines exclude all CVS and .svn subdirectories. See the
// lib.dir section in the Dynamic C User's Manual for more information.
>CVS
>.svn
LIB\Rabbit4000
Samples\Rabbit4000\FAR\LinkedList.LIB
SAMPLES\RCM4000\Serial\RCM40_58MHZ_IOCONFIG.LIB
SAMPLES\RCM4100\Serial\RCM41_29MHZ_IOCONFIG.LIB
SAMPLES\RCM4100\Serial\RCM41_58MHZ_IOCONFIG.LIB
SAMPLES\RCM4200\Serial\RCM42_29MHZ_IOCONFIG.LIB
SAMPLES\RCM4200\Serial\RCM42_58MHZ_IOCONFIG.LIB
SAMPLES\RCM4300\Serial\RCM43_58MHZ_IOCONFIG.LIB
SAMPLES\RCM4400W\Serial\RCM4400W_IOCONFIG.LIB
SAMPLES\RCM4500W\Serial\RCM45_29MHZ_IOCONFIG.LIB
SAMPLES\SPI\ADS7870.LIB
Loading

0 comments on commit b061642

Please sign in to comment.