mirror of
https://github.com/una1veritas/mac-floppy-emu.git
synced 2025-03-22 12:33:36 +00:00
floppy-emu organized
This commit is contained in:
parent
de725331e6
commit
f2b82a39c1
BIN
floppy-emu-1.0Q-F13.zip
Normal file
BIN
floppy-emu-1.0Q-F13.zip
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1,24 +0,0 @@
|
||||
To update the Xilinx CPLD firmware:
|
||||
|
||||
1. Copy firmware.xvf to the root directory of your SD card, and insert it into Floppy Emu.
|
||||
2. Hold down the PREV and NEXT buttons.
|
||||
3. Press and release the RESET button.
|
||||
4. Follow the on-screen prompts.
|
||||
|
||||
|
||||
To update the microcontroller application software:
|
||||
|
||||
If you have the SD bootloader already installed:
|
||||
1. Copy femu.bin to the root directory of your SD card, and insert it into Floppy Emu.
|
||||
2. Hold down the PREV and SELECT buttons.
|
||||
3. Press and release the RESET button.
|
||||
4. Follow the on-screen prompts.
|
||||
|
||||
If you don't have the SD bootloader installed:
|
||||
1. Use your AVR ISP programmer to flash floppyemu.hex to the microcontroller.
|
||||
|
||||
If you want to install the SD bootloader:
|
||||
1. Use your AVR ISP programmer to flash merged.hex to the microcontroller.
|
||||
2. Use the ISP programmer to set the BOOTRST fuse to 1 (on), and the BOOTSZ fuse to 2048W_F800. (Fuses should be Extended: 0xFC, High: 0xDA, Low: 0xBF)
|
||||
|
||||
|
BIN
floppy-emu-source-1.0L-F11-2.zip
Normal file
BIN
floppy-emu-source-1.0L-F11-2.zip
Normal file
Binary file not shown.
@ -36,7 +36,7 @@
|
||||
|
||||
|
||||
#include <Sd2Card.h>
|
||||
#include "../millitimer.h"
|
||||
#include "..\millitimer.h"
|
||||
|
||||
//------------------------------------------------------------------------------
|
||||
#ifndef SOFTWARE_SPI
|
@ -181,7 +181,7 @@ class SdBaseFile {
|
||||
/** Create an instance. */
|
||||
SdBaseFile() : writeError(false), type_(FAT_FILE_TYPE_CLOSED) {}
|
||||
SdBaseFile(const char* path, uint8_t oflag);
|
||||
~SdBaseFile() { if(isOpen()) close(); }
|
||||
~SdBaseFile() {if(isOpen()) close();}
|
||||
/**
|
||||
* writeError is set to true if an error occurs during a write().
|
||||
* Set writeError to false before calling print() and/or write() and check
|
@ -48,7 +48,7 @@ init_spi:
|
||||
.global dly_100us
|
||||
.func dly_100us
|
||||
dly_100us:
|
||||
ldi r24, lo8(16000000 / 100000) ;(F_CPU / 100000) /* Loop counter */
|
||||
ldi r24, lo8(F_CPU / 100000) /* Loop counter */
|
||||
1: sbiw r30, 1 /* 10 clocks per loop */
|
||||
sbiw r30, 1
|
||||
sbiw r30, 1
|
@ -7,14 +7,10 @@
|
||||
|
||||
#include <avr/io.h>
|
||||
|
||||
#ifdef USE_BOOTLDR_MAIN
|
||||
|
||||
int main(void)
|
||||
{
|
||||
while(1)
|
||||
{
|
||||
//TODO:: Please write your application code
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
}
|
@ -146,4 +146,4 @@ void LcdInit()
|
||||
|
||||
LcdGoto(0,0);
|
||||
LcdClear();
|
||||
}
|
||||
}
|
@ -30,16 +30,12 @@
|
||||
#include "diskmenu.h"
|
||||
#include "cardtest.h"
|
||||
|
||||
#ifdef ENABLE_ORIGINAL_COMPILER_WORKAROUND
|
||||
|
||||
// work-around for compiler bug
|
||||
#undef PROGMEM
|
||||
#define PROGMEM __attribute__(( section(".progmem.data") ))
|
||||
#undef PSTR
|
||||
#define PSTR(s) (__extension__({static prog_char __c[] PROGMEM = (s); &__c[0];}))
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
#define STATUS_LED_PORT B
|
||||
#define STATUS_LED_PIN 3
|
||||
|
||||
@ -217,4 +213,4 @@ void CardTest()
|
||||
|
||||
|
||||
while(1);
|
||||
}
|
||||
}
|
20
floppy-emu-source-1.0L-F11/AVR/floppyemu.atsln
Executable file
20
floppy-emu-source-1.0L-F11/AVR/floppyemu.atsln
Executable file
@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# AvrStudio Solution File, Format Version 11.00
|
||||
Project("{E66E83B9-2572-4076-B26E-6BE79FF3018A}") = "floppyemu", "floppyemu.cppproj", "{E27520EB-9B21-411F-B8C6-71C8E4B8B1B6}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|AVR = Debug|AVR
|
||||
Release|AVR = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{E27520EB-9B21-411F-B8C6-71C8E4B8B1B6}.Debug|AVR.ActiveCfg = Debug|AVR
|
||||
{E27520EB-9B21-411F-B8C6-71C8E4B8B1B6}.Debug|AVR.Build.0 = Debug|AVR
|
||||
{E27520EB-9B21-411F-B8C6-71C8E4B8B1B6}.Release|AVR.ActiveCfg = Release|AVR
|
||||
{E27520EB-9B21-411F-B8C6-71C8E4B8B1B6}.Release|AVR.Build.0 = Release|AVR
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
BIN
floppy-emu-source-1.0L-F11/AVR/floppyemu.atsuo
Executable file
BIN
floppy-emu-source-1.0L-F11/AVR/floppyemu.atsuo
Executable file
Binary file not shown.
@ -31,16 +31,12 @@
|
||||
#include "ports.h"
|
||||
#include "diskmenu.h"
|
||||
|
||||
#ifdef ENABLE_ORIGINAL_COMPILER_WORKAROUND
|
||||
|
||||
// work-around for compiler bug
|
||||
#undef PROGMEM
|
||||
#define PROGMEM __attribute__(( section(".progmem.data") ))
|
||||
#undef PSTR
|
||||
#define PSTR(s) (__extension__({static prog_char __c[] PROGMEM = (s); &__c[0];}))
|
||||
|
||||
#endif
|
||||
|
||||
// I/O pin assignments
|
||||
#define CPLD_RESET_PORT B
|
||||
#define CPLD_RESET_PIN 0
|
||||
@ -2018,4 +2014,4 @@ restart: ;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
189
floppy-emu-source-1.0L-F11/AVR/floppyemu.cppproj
Executable file
189
floppy-emu-source-1.0L-F11/AVR/floppyemu.cppproj
Executable file
@ -0,0 +1,189 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectVersion>5.1</ProjectVersion>
|
||||
<ProjectGuid>{e27520eb-9b21-411f-b8c6-71c8e4b8b1b6}</ProjectGuid>
|
||||
<avrdevice>ATmega1284P</avrdevice>
|
||||
<avrdeviceseries>none</avrdeviceseries>
|
||||
<OutputType>Executable</OutputType>
|
||||
<Language>CPP</Language>
|
||||
<OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory>
|
||||
<AvrGccProjectExtensions>
|
||||
</AvrGccProjectExtensions>
|
||||
<AssemblyName>floppyemu</AssemblyName>
|
||||
<Name>floppyemu</Name>
|
||||
<RootNamespace>floppyemu</RootNamespace>
|
||||
<avrtool>com.atmel.avrdbg.tool.ispmk2</avrtool>
|
||||
<ToolchainName>com.Atmel.AVRGCC8</ToolchainName>
|
||||
<ToolchainFlavour>Native</ToolchainFlavour>
|
||||
<AsfVersion>2.11.1</AsfVersion>
|
||||
<avrtoolinterface>ISP</avrtoolinterface>
|
||||
<com_atmel_avrdbg_tool_ispmk2>
|
||||
<ToolType xmlns="">com.atmel.avrdbg.tool.ispmk2</ToolType>
|
||||
<ToolName xmlns="">AVRISP mkII</ToolName>
|
||||
<ToolNumber xmlns="">000200006259</ToolNumber>
|
||||
<Channel xmlns="">
|
||||
<host>127.0.0.1</host>
|
||||
<port>49229</port>
|
||||
<ssl>False</ssl>
|
||||
</Channel>
|
||||
<ToolOptions xmlns="">
|
||||
<InterfaceName>JTAG</InterfaceName>
|
||||
<InterfaceProperties>
|
||||
<JtagDbgClock>1000000</JtagDbgClock>
|
||||
<JtagProgClock>1000000</JtagProgClock>
|
||||
<IspClock>150000</IspClock>
|
||||
<JtagInChain>false</JtagInChain>
|
||||
<JtagEnableExtResetOnStartSession>false</JtagEnableExtResetOnStartSession>
|
||||
<JtagDevicesBefore>0</JtagDevicesBefore>
|
||||
<JtagDevicesAfter>0</JtagDevicesAfter>
|
||||
<JtagInstrBitsBefore>0</JtagInstrBitsBefore>
|
||||
<JtagInstrBitsAfter>0</JtagInstrBitsAfter>
|
||||
</InterfaceProperties>
|
||||
</ToolOptions>
|
||||
</com_atmel_avrdbg_tool_ispmk2>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<OutputFileName>floppyemu</OutputFileName>
|
||||
<OutputFileExtension>.elf</OutputFileExtension>
|
||||
<ToolchainSettings>
|
||||
<AvrGccCpp>
|
||||
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</avrgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>
|
||||
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
|
||||
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
|
||||
<avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcccpp.compiler.symbols.DefSymbols>
|
||||
<ListValues>
|
||||
<Value>F_CPU=20000000</Value>
|
||||
</ListValues>
|
||||
</avrgcccpp.compiler.symbols.DefSymbols>
|
||||
<avrgcccpp.compiler.directories.IncludePaths>
|
||||
<ListValues>
|
||||
<Value>../SdFat</Value>
|
||||
<Value>../xsvf</Value>
|
||||
</ListValues>
|
||||
</avrgcccpp.compiler.directories.IncludePaths>
|
||||
<avrgcccpp.compiler.optimization.level>Optimize more (-O2)</avrgcccpp.compiler.optimization.level>
|
||||
<avrgcccpp.compiler.optimization.PrepareFunctionsForGarbageCollection>True</avrgcccpp.compiler.optimization.PrepareFunctionsForGarbageCollection>
|
||||
<avrgcccpp.compiler.optimization.PackStructureMembers>True</avrgcccpp.compiler.optimization.PackStructureMembers>
|
||||
<avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcccpp.compiler.warnings.AllWarnings>True</avrgcccpp.compiler.warnings.AllWarnings>
|
||||
<avrgcccpp.linker.libraries.Libraries>
|
||||
<ListValues>
|
||||
<Value>m</Value>
|
||||
</ListValues>
|
||||
</avrgcccpp.linker.libraries.Libraries>
|
||||
<avrgcccpp.linker.optimization.GarbageCollectUnusedSections>True</avrgcccpp.linker.optimization.GarbageCollectUnusedSections>
|
||||
<avrgcccpp.linker.optimization.RelaxBranches>True</avrgcccpp.linker.optimization.RelaxBranches>
|
||||
<avrgcccpp.linker.memorysettings.Flash>
|
||||
<ListValues>
|
||||
<Value>.bootldrinfo=0xF7FC</Value>
|
||||
</ListValues>
|
||||
</avrgcccpp.linker.memorysettings.Flash>
|
||||
</AvrGccCpp>
|
||||
</ToolchainSettings>
|
||||
<UsesExternalMakeFile>True</UsesExternalMakeFile>
|
||||
<OutputDirectory>C:\Users\chamberlin\Documents\floppyemu\AVR\Release</OutputDirectory>
|
||||
<ExternalMakeFilePath>C:\Users\chamberlin\Documents\floppyemu\AVR\Release\Makefile</ExternalMakeFilePath>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<OutputFileName>floppyemu</OutputFileName>
|
||||
<OutputFileExtension>.elf</OutputFileExtension>
|
||||
<ToolchainSettings>
|
||||
<AvrGccCpp>
|
||||
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
|
||||
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
|
||||
<avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcccpp.compiler.optimization.PackStructureMembers>True</avrgcccpp.compiler.optimization.PackStructureMembers>
|
||||
<avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcccpp.compiler.optimization.DebugLevel>Default (-g2)</avrgcccpp.compiler.optimization.DebugLevel>
|
||||
<avrgcccpp.compiler.warnings.AllWarnings>True</avrgcccpp.compiler.warnings.AllWarnings>
|
||||
<avrgcccpp.linker.libraries.Libraries>
|
||||
<ListValues>
|
||||
<Value>m</Value>
|
||||
</ListValues>
|
||||
</avrgcccpp.linker.libraries.Libraries>
|
||||
<avrgcccpp.assembler.debugging.DebugLevel>Default (-g2)</avrgcccpp.assembler.debugging.DebugLevel>
|
||||
</AvrGccCpp>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="cardtest.cpp">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="cardtest.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="diskmenu.cpp">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="diskmenu.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="floppyemu.cpp">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="millitimer.cpp">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="millitimer.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="noklcd.cpp">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="noklcd.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="SdFat\Sd2Card.cpp">
|
||||
<SubType>compile</SubType>
|
||||
<Link>Sd2Card.cpp</Link>
|
||||
</Compile>
|
||||
<Compile Include="SdFat\SdBaseFile.cpp">
|
||||
<SubType>compile</SubType>
|
||||
<Link>SdBaseFile.cpp</Link>
|
||||
</Compile>
|
||||
<Compile Include="SdFat\SdFat.cpp">
|
||||
<SubType>compile</SubType>
|
||||
<Link>SdFat.cpp</Link>
|
||||
</Compile>
|
||||
<Compile Include="SdFat\SdVolume.cpp">
|
||||
<SubType>compile</SubType>
|
||||
<Link>SdVolume.cpp</Link>
|
||||
</Compile>
|
||||
<Compile Include="xsvf\lenval.cpp">
|
||||
<SubType>compile</SubType>
|
||||
<Link>lenval.cpp</Link>
|
||||
</Compile>
|
||||
<Compile Include="xsvf\lenval.h">
|
||||
<SubType>compile</SubType>
|
||||
<Link>lenval.h</Link>
|
||||
</Compile>
|
||||
<Compile Include="xsvf\micro.cpp">
|
||||
<SubType>compile</SubType>
|
||||
<Link>micro.cpp</Link>
|
||||
</Compile>
|
||||
<Compile Include="xsvf\micro.h">
|
||||
<SubType>compile</SubType>
|
||||
<Link>micro.h</Link>
|
||||
</Compile>
|
||||
<Compile Include="xsvf\ports.cpp">
|
||||
<SubType>compile</SubType>
|
||||
<Link>ports.cpp</Link>
|
||||
</Compile>
|
||||
<Compile Include="xsvf\ports.h">
|
||||
<SubType>compile</SubType>
|
||||
<Link>ports.h</Link>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\AvrGCC.targets" />
|
||||
</Project>
|
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 140 KiB |
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 64 KiB |
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user