format the code using uncrustify

migrate uart.[ch] to a BSD style license by reimplementing it
This commit is contained in:
Oliver Lehmann 2013-05-04 21:39:53 +00:00
parent 0900f7795c
commit cecb900c34
2 changed files with 119 additions and 97 deletions

View File

@ -2,8 +2,8 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<SchemaVersion>2.0</SchemaVersion> <SchemaVersion>2.0</SchemaVersion>
<ProjectVersion>6.0</ProjectVersion> <ProjectVersion>6.1</ProjectVersion>
<ToolchainName>com.Atmel.AVRGCC8</ToolchainName> <ToolchainName>com.Atmel.AVRGCC8.C</ToolchainName>
<ProjectGuid>{257c9a83-a686-455c-ac90-d649b30aa14d}</ProjectGuid> <ProjectGuid>{257c9a83-a686-455c-ac90-d649b30aa14d}</ProjectGuid>
<avrdevice>ATmega1284P</avrdevice> <avrdevice>ATmega1284P</avrdevice>
<avrdeviceseries>none</avrdeviceseries> <avrdeviceseries>none</avrdeviceseries>
@ -21,13 +21,26 @@
<OverrideVtorValue /> <OverrideVtorValue />
<eraseonlaunchrule>0</eraseonlaunchrule> <eraseonlaunchrule>0</eraseonlaunchrule>
<AsfVersion>2.11.1</AsfVersion> <AsfVersion>2.11.1</AsfVersion>
<AsfFrameworkConfig>
<framework-data>
<options />
<configurations />
<files />
<documentation help="" />
<offline-documentation help="" />
<dependencies>
<content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.3.0" />
</dependencies>
</framework-data>
</AsfFrameworkConfig>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' "> <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<ToolchainSettings> <ToolchainSettings>
<AvrGcc> <AvrGcc xmlns="">
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex> <avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss> <avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep> <avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
<avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec>
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned> <avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned> <avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcc.compiler.optimization.level>Optimize for size (-Os)</avrgcc.compiler.optimization.level> <avrgcc.compiler.optimization.level>Optimize for size (-Os)</avrgcc.compiler.optimization.level>
@ -36,15 +49,15 @@
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings> <avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
<avrgcc.linker.libraries.Libraries> <avrgcc.linker.libraries.Libraries>
<ListValues> <ListValues>
<Value>m</Value> <Value>libm</Value>
</ListValues> </ListValues>
</avrgcc.linker.libraries.Libraries> </avrgcc.linker.libraries.Libraries>
</AvrGcc> </AvrGcc>
</ToolchainSettings> </ToolchainSettings>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<ToolchainSettings> <ToolchainSettings>
<AvrGcc> <AvrGcc xmlns="">
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex> <avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss> <avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep> <avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
@ -52,7 +65,6 @@
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned> <avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned> <avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcc.compiler.optimization.level>Optimize (-O1)</avrgcc.compiler.optimization.level> <avrgcc.compiler.optimization.level>Optimize (-O1)</avrgcc.compiler.optimization.level>
<avrgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</avrgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers> <avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum> <avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings> <avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
@ -64,10 +76,9 @@
<avrgcc.compiler.miscellaneous.DoNotDeleteTemporaryFiles>True</avrgcc.compiler.miscellaneous.DoNotDeleteTemporaryFiles> <avrgcc.compiler.miscellaneous.DoNotDeleteTemporaryFiles>True</avrgcc.compiler.miscellaneous.DoNotDeleteTemporaryFiles>
<avrgcc.linker.libraries.Libraries> <avrgcc.linker.libraries.Libraries>
<ListValues> <ListValues>
<Value>m</Value> <Value>libm</Value>
</ListValues> </ListValues>
</avrgcc.linker.libraries.Libraries> </avrgcc.linker.libraries.Libraries>
<avrgcc.linker.optimization.GarbageCollectUnusedSections>True</avrgcc.linker.optimization.GarbageCollectUnusedSections>
</AvrGcc> </AvrGcc>
</ToolchainSettings> </ToolchainSettings>
</PropertyGroup> </PropertyGroup>

View File

@ -27,13 +27,12 @@
/* /*
* P8000 WDC Emulator * $Id: wdc_main.c,v 1.33 2013/05/04 21:39:53 olivleh1 Exp $
* *
* $Id: wdc_main.c,v 1.32 2013/04/21 00:40:52 olivleh1 Exp $
*
* TODO: - right now, BTT entries are not taken into account
*/ */
/* TODO: - right now, BTT entries are not taken into account */
#include <avr/io.h> #include <avr/io.h>
#include <avr/interrupt.h> #include <avr/interrupt.h>
@ -58,7 +57,7 @@ uint8_t data_buffer[4096];
uint8_t cmd_buffer[9]; uint8_t cmd_buffer[9];
#ifdef MEASURE_DISK_PERFORMANCE #ifdef MEASURE_DISK_PERFORMANCE
extern void measure_performance(); extern void measure_performance ();
#else #else
/* switched from local to global for keeping an eye on memory usage */ /* switched from local to global for keeping an eye on memory usage */
@ -66,7 +65,7 @@ extern uint8_t valid_disk;
#endif #endif
int __attribute__ ( ( OS_main ) ) int __attribute__( ( OS_main ) )
main ( void ) main ( void )
{ {
#ifndef MEASURE_DISK_PERFORMANCE #ifndef MEASURE_DISK_PERFORMANCE
@ -78,7 +77,7 @@ main ( void )
#endif #endif
atmega_setup(); atmega_setup();
uart_puts_p ( PSTR ( "P8000 WDC Emulator 0.91\n" ) ); uart_putstring ( PSTR ( "=== P8000 WDC Emulator 0.92 ===" ), true );
#ifdef MEASURE_DISK_PERFORMANCE #ifdef MEASURE_DISK_PERFORMANCE
measure_performance(); measure_performance();
@ -97,10 +96,12 @@ main ( void )
data_buffer[5] == '.' && data_buffer[5] == '.' &&
data_buffer[6] == '2' ) { data_buffer[6] == '2' ) {
wdc_write_par_table ( data_buffer, data_counter ); wdc_write_par_table ( data_buffer, data_counter );
uart_putstring ( PSTR ( "INFO: Disk found and ready to use." ), true );
wdc_set_disk_valid(); wdc_set_disk_valid();
} else { } else {
uart_putstring ( PSTR ( "INFO: Disk found but Sector 0 is invalid, please execute sa.format to initialize this disk properly." ), true );
wdc_set_disk_invalid(); wdc_set_disk_invalid();
}; }
} }
while ( 1 ) { while ( 1 ) {
@ -113,7 +114,7 @@ main ( void )
#if DEBUG >= 2 #if DEBUG >= 2
#if DEBUG >= 3 #if DEBUG >= 3
uart_puts_p ( PSTR ( " CMD:" ) ); uart_putstring ( PSTR ( "DEBUG: received command is:" ), false );
#endif #endif
uart_putc_hex ( cmd_buffer[0] ); uart_putc_hex ( cmd_buffer[0] );
#if DEBUG >= 3 #if DEBUG >= 3
@ -125,8 +126,8 @@ main ( void )
uart_putc_hex ( cmd_buffer[6] ); uart_putc_hex ( cmd_buffer[6] );
uart_putc_hex ( cmd_buffer[7] ); uart_putc_hex ( cmd_buffer[7] );
uart_putc_hex ( cmd_buffer[8] ); uart_putc_hex ( cmd_buffer[8] );
uart_putc ( '\n' );
#endif #endif
uart_putnl();
#endif #endif
/* no drive attached */ /* no drive attached */
@ -140,12 +141,12 @@ main ( void )
} }
/* WDC freshly initialized after RESET, the disk is not valid */ /* WDC freshly initialized after RESET, the disk is not valid */
} else if ( wdc_get_initialized() } else if ( wdc_get_initialized()
&& ! wdc_get_disk_valid() && !wdc_get_disk_valid()
&& ( cmd_buffer[0] == CMD_WR_WDC_RAM || cmd_buffer[0] == CMD_RD_BLOCK ) ) { && ( cmd_buffer[0] == CMD_WR_WDC_RAM || cmd_buffer[0] == CMD_RD_BLOCK ) ) {
wdc_send_errorcode ( ERR_CYL0_NOT_READABLE ); wdc_send_errorcode ( ERR_CYL0_NOT_READABLE );
wdc_set_initialized ( 0 ); wdc_set_initialized ( 0 );
/* if the disk is not valid, only maintenance commands are allowed */ /* if the disk is not valid, only maintenance commands are allowed */
} else if ( ! wdc_get_disk_valid() } else if ( !wdc_get_disk_valid()
&& cmd_buffer[0] != CMD_RD_WDC_RAM && cmd_buffer[0] != CMD_RD_WDC_RAM
&& cmd_buffer[0] != CMD_FMTRD_TRACK && cmd_buffer[0] != CMD_FMTRD_TRACK
&& cmd_buffer[0] != CMD_WR_WDC_RAM && cmd_buffer[0] != CMD_WR_WDC_RAM
@ -159,17 +160,18 @@ main ( void )
&& cmd_buffer[0] != CMD_WR_PARTAB && cmd_buffer[0] != CMD_WR_PARTAB
&& cmd_buffer[0] != CMD_ST_PARBTT && cmd_buffer[0] != CMD_ST_PARBTT
) { ) {
if ( cmd_buffer[0] == CMD_RD_BLOCK ) if ( cmd_buffer[0] == CMD_RD_BLOCK ) {
wdc_send_errorcode ( ERR_SECT_N_ON_SURFACE ); wdc_send_errorcode ( ERR_SECT_N_ON_SURFACE );
else } else {
wdc_send_error(); wdc_send_error();
}
} else { } else {
switch ( cmd_buffer[0] ) { switch ( cmd_buffer[0] ) {
case CMD_WR_BLOCK: case CMD_WR_BLOCK:
data_counter = ( cmd_buffer[7] << 8 ) | cmd_buffer[6]; data_counter = ( cmd_buffer[7] << 8 ) | cmd_buffer[6];
blockno = wdc_p8kblock2diskblock ( ( ( uint32_t ) cmd_buffer[5] << 24 ) | ( ( uint32_t ) cmd_buffer[4] << 16 ) | ( ( uint16_t ) cmd_buffer[3] << 8 ) | cmd_buffer[2] ); blockno = wdc_p8kblock2diskblock ( ( (uint32_t)cmd_buffer[5] << 24 ) | ( (uint32_t)cmd_buffer[4] << 16 ) | ( (uint16_t)cmd_buffer[3] << 8 ) | cmd_buffer[2] );
wdc_receive_data ( data_buffer wdc_receive_data ( data_buffer
, data_counter , data_counter
); );
@ -180,14 +182,15 @@ main ( void )
errorcode = wdc_write_multiblock ( blockno, data_buffer, data_counter / WDC_BLOCKLEN ); errorcode = wdc_write_multiblock ( blockno, data_buffer, data_counter / WDC_BLOCKLEN );
} }
if ( errorcode ) if ( errorcode ) {
wdc_send_error(); wdc_send_error();
}
break; break;
case CMD_RD_BLOCK: case CMD_RD_BLOCK:
data_counter = ( cmd_buffer[7] << 8 ) | cmd_buffer[6]; data_counter = ( cmd_buffer[7] << 8 ) | cmd_buffer[6];
blockno = wdc_p8kblock2diskblock ( ( ( uint32_t ) cmd_buffer[5] << 24 ) | ( ( uint32_t ) cmd_buffer[4] << 16 ) | ( ( uint16_t ) cmd_buffer[3] << 8 ) | cmd_buffer[2] ); blockno = wdc_p8kblock2diskblock ( ( (uint32_t)cmd_buffer[5] << 24 ) | ( (uint32_t)cmd_buffer[4] << 16 ) | ( (uint16_t)cmd_buffer[3] << 8 ) | cmd_buffer[2] );
errorcode = 1; errorcode = 1;
if ( data_counter == WDC_BLOCKLEN ) { if ( data_counter == WDC_BLOCKLEN ) {
@ -253,7 +256,6 @@ main ( void )
wdc_write_wdc_par ( data_buffer wdc_write_wdc_par ( data_buffer
, data_counter ); , data_counter );
break; break;
case CMD_DL_BTTAB: case CMD_DL_BTTAB:
@ -286,8 +288,9 @@ main ( void )
case CMD_FMTBTT_TRACK: case CMD_FMTBTT_TRACK:
/* no cylinder 0 formatting if command is CMD_FMTBTT_TRACK */ /* no cylinder 0 formatting if command is CMD_FMTBTT_TRACK */
if ( cmd_buffer[0] == CMD_FMTBTT_TRACK && ( cmd_buffer[2] | ( cmd_buffer[3] << 8 ) ) == 0 ) if ( cmd_buffer[0] == CMD_FMTBTT_TRACK && ( cmd_buffer[2] | ( cmd_buffer[3] << 8 ) ) == 0 ) {
break; break;
}
data_counter = WDC_BLOCKLEN; data_counter = WDC_BLOCKLEN;
@ -300,7 +303,9 @@ main ( void )
errorcode = 1; errorcode = 1;
for ( i8 = 0; i8 < wdc_get_hdd_sectors(); i8++ ) { for ( i8 = 0; i8 < wdc_get_hdd_sectors(); i8++ ) {
errorcode = wdc_write_sector ( blockno, data_buffer ); errorcode = wdc_write_sector ( blockno, data_buffer );
if ( errorcode ) break; if ( errorcode ) {
break;
}
blockno++; blockno++;
} }
@ -333,9 +338,9 @@ main ( void )
, data_counter ); , data_counter );
errorcode = wdc_write_sector ( blockno, data_buffer ); errorcode = wdc_write_sector ( blockno, data_buffer );
if ( errorcode ) if ( errorcode ) {
wdc_send_error(); wdc_send_error();
}
break; break;
case CMD_RD_WDCERR: case CMD_RD_WDCERR:
@ -357,11 +362,14 @@ main ( void )
errorcode = 1; errorcode = 1;
for ( i8 = 0; i8 < wdc_get_hdd_sectors(); i8++ ) { for ( i8 = 0; i8 < wdc_get_hdd_sectors(); i8++ ) {
errorcode = wdc_read_sector ( blockno, data_buffer ); errorcode = wdc_read_sector ( blockno, data_buffer );
if ( errorcode ) break; if ( errorcode ) {
break;
}
blockno++; blockno++;
} }
if ( errorcode ) if ( errorcode ) {
wdc_send_error(); wdc_send_error();
}
break; break;
case CMD_RD_SECTOR: case CMD_RD_SECTOR:
@ -379,13 +387,14 @@ main ( void )
errorcode = wdc_write_multiblock ( blockno, data_buffer, data_counter / WDC_BLOCKLEN ); errorcode = wdc_write_multiblock ( blockno, data_buffer, data_counter / WDC_BLOCKLEN );
} }
if ( errorcode ) if ( errorcode ) {
wdc_send_error(); wdc_send_error();
}
break; break;
default: default:
#if DEBUG >= 1 #if DEBUG >= 1
uart_puts_p ( PSTR ( " Unknown command:" ) ); uart_putstring ( PSTR ( "ERROR: Unknown command received from the P8000:" ), false );
uart_putc_hex ( cmd_buffer[0] ); uart_putc_hex ( cmd_buffer[0] );
uart_putc_hex ( cmd_buffer[1] ); uart_putc_hex ( cmd_buffer[1] );
uart_putc_hex ( cmd_buffer[2] ); uart_putc_hex ( cmd_buffer[2] );
@ -395,7 +404,7 @@ main ( void )
uart_putc_hex ( cmd_buffer[6] ); uart_putc_hex ( cmd_buffer[6] );
uart_putc_hex ( cmd_buffer[7] ); uart_putc_hex ( cmd_buffer[7] );
uart_putc_hex ( cmd_buffer[8] ); uart_putc_hex ( cmd_buffer[8] );
uart_putc ( '\n' ); uart_put_nl();
#endif #endif
wdc_send_error(); wdc_send_error();
break; break;
@ -413,7 +422,9 @@ void atmega_setup ( void )
uart_init(); uart_init();
wdc_init_avr(); wdc_init_avr();
wdc_get_sysconf(); wdc_get_sysconf();
if ( wdc_init_disk() ) { if ( wdc_init_disk() ) {
uart_putstring ( PSTR ( "ERROR: No disk found!" ), true );
wdc_set_no_disk(); wdc_set_no_disk();
} }
} }