From a48333bfac995ba3b57a8e860c8227dc386b3861 Mon Sep 17 00:00:00 2001
From: Xphalnos <164882787+Xphalnos@users.noreply.github.com>
Date: Tue, 4 Jun 2024 20:55:16 +0200
Subject: [PATCH 1/3] Small update of the readme (again)
---
README.md | 45 +++++++++++++++++++++++++++++++++++++++------
1 file changed, 39 insertions(+), 6 deletions(-)
diff --git a/README.md b/README.md
index f9f931ecd..41b80ac28 100644
--- a/README.md
+++ b/README.md
@@ -3,6 +3,30 @@ SPDX-FileCopyrightText: 2024 shadPS4 Emulator Project
SPDX-License-Identifier: GPL-2.0-or-later
-->
+
+
+
+
+ shadPS4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
# shadPS4
shadPS4 is an early PS4 emulator for Windows and Linux written in C++
@@ -11,7 +35,7 @@ shadPS4 is an early PS4 emulator for Windows and Linux written in C++
To discuss shadPS4 development or suggest ideas, join the [Discord server](https://discord.gg/MyZRaBngxA)
-Check us on [X (twitter)](https://x.com/shadps4)
+Check us on [X (twitter)](https://x.com/shadps4) or on our [website](https://shadps4.net/).
# Status
@@ -25,18 +49,21 @@ The project started as a fun project. Due to limited free time, it will probably
## Windows
-Check building instructions in [Windows build](https://github.com/shadps4-emu/shadPS4/blob/main/documents/building-windows.md)
+Check the build instructions for [Windows](https://github.com/shadps4-emu/shadPS4/blob/main/documents/building-windows.md).
## Linux
-Check building instructions in [Linux build](https://github.com/shadps4-emu/shadPS4/blob/main/documents/linux_building.md)
+Check the build instructions for [Linux](https://github.com/shadps4-emu/shadPS4/blob/main/documents/linux_building.md).
## Build status
-|Platform|Build status|
+|Windows|Build status|
|--------|------------|
|Windows SDL Build|[](https://github.com/shadps4-emu/shadPS4/actions/workflows/windows.yml)
|Windows Qt Build|[](https://github.com/shadps4-emu/shadPS4/actions/workflows/windows-qt.yml)
+
+|Linux|Build status|
+|--------|------------|
|Linux SDL Build|[](https://github.com/shadps4-emu/shadPS4/actions/workflows/linux.yml)
|Linux Qt Build|[](https://github.com/shadps4-emu/shadPS4/actions/workflows/linux-qt.yml)
@@ -62,7 +89,13 @@ Logo is done by [Xphalnos](https://github.com/Xphalnos)
We currently accept any contribution, just open a PR and we will check it :)
+# Contributors
+
+
+
+
+
# Sister Projects
-- [Panda3DS](https://github.com/wheremyfoodat/Panda3DS): An multiplatform 3DS emulator from our co-author wheremyfoodat
-- [hydra](https://github.com/hydra-emu/hydra): An multisystem, multiplatform emulator (chip-8,GB,NES,N64) from Paris
+- [Panda3DS](https://github.com/wheremyfoodat/Panda3DS): A multiplatform 3DS emulator from our co-author wheremyfoodat.
+- [hydra](https://github.com/hydra-emu/hydra): A multisystem, multiplatform emulator (chip-8, GB, NES, N64) from Paris.
From d52f8dbcadd0428a151da8d4eb387013d12578e4 Mon Sep 17 00:00:00 2001
From: Xphalnos <164882787+Xphalnos@users.noreply.github.com>
Date: Tue, 4 Jun 2024 22:43:10 +0200
Subject: [PATCH 2/3] Adding screenshot
---
.reuse/dep5 | 2 +-
README.md | 6 +++---
documents/Screenshots/screenshot.png | Bin 0 -> 863679 bytes
3 files changed, 4 insertions(+), 4 deletions(-)
create mode 100644 documents/Screenshots/screenshot.png
diff --git a/.reuse/dep5 b/.reuse/dep5
index 792b6f60f..69e066f58 100644
--- a/.reuse/dep5
+++ b/.reuse/dep5
@@ -9,8 +9,8 @@ Files: CMakeSettings.json
.github/shadps4.desktop
.github/shadps4.png
.gitmodules
+ documents/Screenshots/screenshot.png
src/images/shadps4.ico
- screenshots/screenshot.png
src/images/controller_icon.png
src/images/exit_icon.png
src/images/file_icon.png
diff --git a/README.md b/README.md
index 41b80ac28..749c69788 100644
--- a/README.md
+++ b/README.md
@@ -31,15 +31,15 @@ SPDX-License-Identifier: GPL-2.0-or-later
shadPS4 is an early PS4 emulator for Windows and Linux written in C++
-[](https://www.youtube.com/watch?v=AAHoNzhHyCU)
-
To discuss shadPS4 development or suggest ideas, join the [Discord server](https://discord.gg/MyZRaBngxA)
Check us on [X (twitter)](https://x.com/shadps4) or on our [website](https://shadps4.net/).
# Status
-Early progress, a small amount of PS4 SDK demos and homebrew games working.
+In development, 2D games are working like [Sonic Mania](https://www.youtube.com/watch?v=AAHoNzhHyCU), Undertale, Momodora and others...
+
+
# Why?
diff --git a/documents/Screenshots/screenshot.png b/documents/Screenshots/screenshot.png
new file mode 100644
index 0000000000000000000000000000000000000000..cfcdb703d4dae0ed2b6d7ab0b2a94ff300bb1f08
GIT binary patch
literal 863679
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