-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
*.iml | ||
.gradle | ||
/local.properties | ||
/.idea/caches | ||
/.idea/libraries | ||
/.idea/modules.xml | ||
/.idea/workspace.xml | ||
/.idea/navEditor.xml | ||
/.idea/assetWizardSettings.xml | ||
.DS_Store | ||
/build | ||
/captures | ||
.externalNativeBuild | ||
.cxx | ||
local.properties |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
====================================================================== | ||
|
||
Worldwide PUBLIC DOMAIN dedication | ||
|
||
The authors disclaim copyright to this software. | ||
|
||
Anyone is free to copy, modify, publish, use, compile, sell, or | ||
distribute this software, either in source code form or as a | ||
compiled binary, for any purpose, commercial or non-commercial, | ||
and by any means. | ||
|
||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
NONINFRINGEMENT OF ANY PATENT, COPYRIGHT, TRADE SECRET OR OTHER | ||
PROPRIETARY RIGHT. | ||
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES | ||
OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR | ||
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE | ||
OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | ||
|
||
====================================================================== |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
|
||
# Android armeabi-v7a (32bit ARM) apk for [PDOS](https://pdos.org) | ||
|
||
The source code is Public Domain except the gradle directory and gradlew.* | ||
|
||
## The application requires a hardware keyboard attached to your smartphone. | ||
|
||
This app will create 2 files in your "Download/" folder (hi.txt and pcomm.arm) | ||
|
||
## How to use it | ||
|
||
After message "please enter a command" enter: ``pcomm.exe`` | ||
|
||
|
||
 | ||
|
||
|
||
## Developement | ||
|
||
If you want to make change to the APK, you need to sign it before install it : | ||
``` | ||
zip -r app.zip ./app/ | ||
mv app.zip app.apk | ||
keytool -genkey -keyalg RSA -alias mykeystore -keystore mykeystore.jks -storepass 12345678 -validity 360 | ||
apksigner sign --ks release.jks app.apk | ||
``` | ||
|
||
https://docs.oracle.com/en/java/javase/12/tools/keytool.html | ||
|
||
https://developer.android.com/studio/command-line/apksigner | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
/build |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
plugins { | ||
id 'com.android.application' | ||
id 'org.jetbrains.kotlin.android' | ||
} | ||
|
||
android { | ||
namespace 'com.cod5.pdos_pdandro' | ||
compileSdk 33 | ||
|
||
defaultConfig { | ||
applicationId "com.cod5.pdos_pdandro" | ||
minSdk 21 | ||
targetSdk 33 | ||
versionCode 1 | ||
versionName "1.0" | ||
ndk.abiFilters 'armeabi-v7a', 'x86' | ||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" | ||
} | ||
|
||
buildTypes { | ||
release { | ||
minifyEnabled false | ||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' | ||
} | ||
debug { | ||
jniDebuggable true | ||
} | ||
} | ||
compileOptions { | ||
sourceCompatibility JavaVersion.VERSION_1_8 | ||
targetCompatibility JavaVersion.VERSION_1_8 | ||
} | ||
kotlinOptions { | ||
jvmTarget = '1.8' | ||
} | ||
externalNativeBuild { | ||
cmake { | ||
path file('src/main/cpp/CMakeLists.txt') | ||
version '3.18.1' | ||
} | ||
} | ||
buildFeatures { | ||
viewBinding true | ||
} | ||
ndkVersion '23.1.7779620' | ||
} | ||
|
||
dependencies { | ||
|
||
implementation 'androidx.core:core-ktx:1.9.0' | ||
implementation 'androidx.appcompat:appcompat:1.6.1' | ||
implementation 'com.google.android.material:material:1.8.0' | ||
implementation 'androidx.constraintlayout:constraintlayout:2.1.4' | ||
testImplementation 'junit:junit:4.13.2' | ||
androidTestImplementation 'androidx.test.ext:junit:1.1.5' | ||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
# Add project specific ProGuard rules here. | ||
# You can control the set of applied configuration files using the | ||
# proguardFiles setting in build.gradle. | ||
# | ||
# For more details, see | ||
# http://developer.android.com/guide/developing/tools/proguard.html | ||
|
||
# If your project uses WebView with JS, uncomment the following | ||
# and specify the fully qualified class name to the JavaScript interface | ||
# class: | ||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview { | ||
# public *; | ||
#} | ||
|
||
# Uncomment this to preserve the line number information for | ||
# debugging stack traces. | ||
#-keepattributes SourceFile,LineNumberTable | ||
|
||
# If you keep the line number information, uncomment this to | ||
# hide the original source file name. | ||
#-renamesourcefileattribute SourceFile |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" | ||
xmlns:tools="http://schemas.android.com/tools"> | ||
|
||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> | ||
|
||
<!-- Without this folders will be inaccessible in Android-11 and above devices --> | ||
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" /> | ||
|
||
<!-- Without this entry storage-permission entry will not be visible under app-info permissions list Android-10 and below --> | ||
<uses-permission | ||
android:name="android.permission.WRITE_EXTERNAL_STORAGE" | ||
android:maxSdkVersion="28" | ||
tools:ignore="ScopedStorage"/> | ||
|
||
<application | ||
android:allowBackup="true" | ||
android:dataExtractionRules="@xml/data_extraction_rules" | ||
android:fullBackupContent="@xml/backup_rules" | ||
android:icon="@mipmap/ic_launcher" | ||
android:label="@string/app_name" | ||
android:roundIcon="@mipmap/ic_launcher_round" | ||
android:supportsRtl="true" | ||
android:theme="@style/Theme.PdosPdAndro" | ||
android:requestLegacyExternalStorage="true" | ||
tools:targetApi="31"> | ||
|
||
<activity | ||
android:name=".MainActivity" | ||
android:exported="true" | ||
android:screenOrientation="landscape" | ||
|
||
android:windowSoftInputMode="stateAlwaysHidden" | ||
> | ||
<!--android:windowSoftInputMode="stateVisible|adjustResize" --> | ||
|
||
<intent-filter> | ||
<action android:name="android.intent.action.MAIN" /> | ||
|
||
<category android:name="android.intent.category.LAUNCHER" /> | ||
</intent-filter> | ||
|
||
<meta-data | ||
android:name="android.app.lib_name" | ||
android:value="" /> | ||
</activity> | ||
</application> | ||
|
||
</manifest> |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
armeabi-v7a |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
x86 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
cmake_minimum_required(VERSION 3.18.1) | ||
|
||
project("pdos_pdandro") | ||
|
||
if (${ANDROID_ABI} STREQUAL "armeabi-v7a" OR ${ANDROID_ABI} STREQUAL "x86") | ||
#if (${ANDROID_ABI} STREQUAL "x86") | ||
add_subdirectory(${CMAKE_SOURCE_DIR}/pdpclib/${ANDROID_ABI}) | ||
add_subdirectory(${CMAKE_SOURCE_DIR}/bios/${ANDROID_ABI}) | ||
#add_subdirectory(${CMAKE_SOURCE_DIR}/pcomm/${ANDROID_ABI}) | ||
endif() | ||
|
||
add_executable( | ||
libpdos.so | ||
|
||
pdos.c) | ||
|
||
add_executable( | ||
libls.so | ||
|
||
ls.c) | ||
|
||
add_executable(libtest.so | ||
IMPORTED | ||
) | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
cmake_minimum_required(VERSION 3.18.1) | ||
|
||
project("pdos_pdandro") | ||
enable_language(C) | ||
|
||
add_executable( | ||
libbios.so | ||
|
||
${CMAKE_SOURCE_DIR}/pdpclib/${ANDROID_ABI}/linstart.c | ||
bios.c | ||
exeload.c | ||
) | ||
|
||
target_compile_options(libbios.so PRIVATE | ||
$<$<COMPILE_LANGUAGE:C>:-ffreestanding -fno-builtin -fno-stack-protector -nostdinc -nostdlib -O0 -D__UNOPT__ -D__ARM__ -DNEED_AOUT -DNEED_MPROTECT -I${CMAKE_SOURCE_DIR}/pdpclib/${ANDROID_ABI} -I${CMAKE_CURRENT_SOURCE_DIR}> | ||
) | ||
|
||
target_link_options(libbios.so PRIVATE "-Wl,-nostdlib") | ||
target_link_options(libbios.so PRIVATE "-nostdlib") | ||
|
||
target_link_libraries(libbios.so PRIVATE pdpclib) | ||
|