Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .github/workflows/build-ed64-example-rom.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,11 @@ jobs:

- name: Install Libdragon container
run: |
sudo npm install -g libdragon
# TODO: the sample needs updating. This is the last known compatible version!
# Remove the @1.3.15 to run at latest.
# And, this would also involve having a git subtree of the libdragon version.
# which would make it easier to show "custom" changes to source.
sudo npm install -g libdragon@1.3.15
libdragon download

- name: Setup Build environment
Expand Down
19 changes: 10 additions & 9 deletions .github/workflows/build-usb64-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,22 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
dotnet: [ 'netcoreapp3.1', 'net5.0' ]
dotnet: [ 'netcoreapp3.1', 'net6.0' ]
name: Build ${{ matrix.dotnet }} usb64 Linux
steps:
- uses: actions/checkout@v2
name: Checkout Code

- name: Setup .NET Core 3.1
uses: actions/setup-dotnet@v1
if: matrix.dotnet == 'netcoreapp3.1'
uses: actions/setup-dotnet@v2
with:
dotnet-version: 3.1.x
- name: Setup .NET Core 5.0
uses: actions/setup-dotnet@v1
- name: Setup .NET Core 6.0
if: matrix.dotnet == 'net6.0'
uses: actions/setup-dotnet@v2
with:
dotnet-version: 5.0.x
dotnet-version: 6.0.x

- name: Setup NuGet
uses: NuGet/setup-nuget@v1.0.5
Expand All @@ -29,11 +31,10 @@ jobs:

- name: Build App
run: dotnet build ./usb64/usb64.sln --configuration Release --no-restore --framework ${{ matrix.dotnet }}
#- name: Test App
# run: dotnet test

- name: Upload Artifact
uses: actions/upload-artifact@v1.0.0
uses: actions/upload-artifact@v2
with:
name: usb64-${{ matrix.dotnet }}-app-linux
path: ${{ github.workspace }}/usb64/usb64/bin/Release/${{ matrix.dotnet }}/usb64.dll
path: |
${{ github.workspace }}/usb64/usb64/bin/Release/${{ matrix.dotnet }}/usb64.dll
28 changes: 12 additions & 16 deletions .github/workflows/build-usb64-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,40 +6,36 @@ jobs:
runs-on: windows-latest
strategy:
matrix:
dotnet: [ 'net40', 'net45', 'netcoreapp3.1', 'net5.0' ]
dotnet: [ 'net40', 'net45', 'netcoreapp3.1', 'net6.0' ]
name: Build ${{ matrix.dotnet }} usb64 App
steps:
- uses: actions/checkout@v2
name: Checkout Code

- name: Setup .NET Core 3.1
uses: actions/setup-dotnet@v1
if: matrix.dotnet == 'netcoreapp3.1'
uses: actions/setup-dotnet@v2
with:
dotnet-version: 3.1.x
- name: Setup .NET Core 5.0
uses: actions/setup-dotnet@v1
- name: Setup .NET 6.0
if: matrix.dotnet == 'net6.0'
uses: actions/setup-dotnet@v2
with:
dotnet-version: 5.0.x

# - name: Setup MSBuild Path
# uses: microsoft/setup-msbuild@v1.0.2
dotnet-version: 6.0.x

- name: Setup NuGet
uses: NuGet/setup-nuget@v1.0.5

- name: Restore NuGet Packages
run: nuget restore ./usb64/usb64.sln

# - name: Build App
# run: msbuild ./usb64/usb64.sln /p:Configuration=Release /p:framework=${{ matrix.dotnet }}

- name: Build App
run: dotnet build ./usb64/usb64.sln --configuration Release --no-restore --framework ${{ matrix.dotnet }}
#- name: Test App
# run: dotnet test

- name: Upload Artifact
uses: actions/upload-artifact@v1.0.0
uses: actions/upload-artifact@v2
with:
name: usb64-${{ matrix.dotnet }}-app-windows
path: ${{ github.workspace }}\usb64\usb64\bin\Release\${{ matrix.dotnet }}\usb64.exe
path: |
${{ github.workspace }}\usb64\usb64\bin\Release\${{ matrix.dotnet }}\usb64.exe
${{ github.workspace }}\usb64\usb64\bin\Release\${{ matrix.dotnet }}\usb64.dll
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,5 @@ Provides the reference source for USB communication between PC and ED64 developm


### [ED64-XIO](ED64-XIO)
Provides the reference source that can be used by homebrew developers to utilise hardware functions including SD card and USB capabilities from an N64 ROM
Provides the reference source that can be used by homebrew developers to utilise hardware functions including SD card and USB capabilities from an N64 ROM.
Note that the current sample relies on libDragon built earlier than 2021.
27 changes: 18 additions & 9 deletions usb64/usb64/usb64.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -2,28 +2,37 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFrameworks Condition="'$(OS)' == 'Windows_NT'">netcoreapp3.1;net5.0;net45;net40</TargetFrameworks>
<TargetFrameworks Condition="'$(OS)' != 'Windows_NT'">netcoreapp3.1;net5.0</TargetFrameworks>
<Authors>Krikzz / NetworkFusion</Authors>
<Company>Krikzz</Company>
<Copyright>Copyright © Krikzz, NetworkFusion 2020-2021</Copyright>
<TargetFrameworks Condition="'$(OS)' == 'Windows_NT'">netcoreapp3.1;net5.0;net6.0;net45;net40</TargetFrameworks>
<TargetFrameworks Condition="'$(OS)' != 'Windows_NT'">netcoreapp3.1;net5.0;net6.0</TargetFrameworks>
<Authors>I. Golubovskiy, Robin Jones</Authors>
<Company>Krikzz / NetworkFusion</Company>
<Copyright>Copyright © Krikzz, NetworkFusion - 2020</Copyright>
<PackageProjectUrl>https://github.com/krikzz/ED64/</PackageProjectUrl>
<AssemblyVersion>2.0.0.3</AssemblyVersion>
<FileVersion>2.0.0.3</FileVersion>
<AssemblyVersion>2.0.0.4</AssemblyVersion>
<FileVersion>2.0.0.4</FileVersion>
<RootNamespace>ed64usb</RootNamespace>
</PropertyGroup>


<ItemGroup Condition=" '$(TargetFramework)' == 'net6.0' ">
<PackageReference Include="System.IO.Ports" Version="6.0.0" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'net5.0' ">
<PackageReference Include="System.IO.Ports" Version="5.0.0" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.1' ">
<PackageReference Include="System.IO.Ports" Version="5.0.0" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="1.0.2">
<PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference>
</ItemGroup>

<PropertyGroup Condition=" '$(TargetFramework)' == 'net45'">
<DefineConstants>NET45;NETFULL</DefineConstants>
</PropertyGroup>

<PropertyGroup Condition=" '$(TargetFramework)' == 'net40'">
<DefineConstants>NET40;NETFULL</DefineConstants>
</PropertyGroup>
Expand Down