mirror of https://github.com/zxdos/zxuno.git
				
				
				
			+ added files `sdk/README.md`, `sdk/README.md.license`, `sdk/setvars.sh`, `sdk/bin/sjasmplus.exe.license`
* renamed file `modflash/addcore.bat` into `modflash/addcores.bat` * renamed file `modflash/addrom.bat` into `modflash/addroms.bat` + added proper licensing information to some files
This commit is contained in:
		
							parent
							
								
									57dc876a0b
								
							
						
					
					
						commit
						72618ae809
					
				| 
						 | 
				
			
			@ -1,3 +1,7 @@
 | 
			
		|||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
#
 | 
			
		||||
# Supported environments:
 | 
			
		||||
#   * GNU/Linux
 | 
			
		||||
#   * Windows NT (using MinGW/MSYS/Cygwin/WSL)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,15 @@
 | 
			
		|||
# Authors
 | 
			
		||||
 | 
			
		||||
2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
 | 
			
		||||
# Contributors
 | 
			
		||||
 | 
			
		||||
No one yet.
 | 
			
		||||
 | 
			
		||||
# License
 | 
			
		||||
 | 
			
		||||
This document is under [GNU FDL-1.3 or later](http://www.gnu.org/licenses/fdl-1.3.html) license.
 | 
			
		||||
 | 
			
		||||
# Target
 | 
			
		||||
 | 
			
		||||
File `FLASH.ZX1`.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
SPDX-FileType: TEXT
 | 
			
		||||
 | 
			
		||||
SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
 | 
			
		||||
SPDX-License-Identifier: GFDL-1.3-or-later
 | 
			
		||||
| 
						 | 
				
			
			@ -1,4 +1,10 @@
 | 
			
		|||
@echo off
 | 
			
		||||
rem SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
rem
 | 
			
		||||
rem SPDX-FileNotice: Based on code by Antonio Villena <_@antoniovillena.es>
 | 
			
		||||
rem
 | 
			
		||||
rem SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
 | 
			
		||||
set /a i=2
 | 
			
		||||
for /f "eol=# tokens=1,2,3 delims=;" %%a in (cores.txt) do call :AddCore %%a %%b %%c
 | 
			
		||||
exit /b
 | 
			
		||||
| 
						 | 
				
			
			@ -15,4 +21,4 @@ exit /b
 | 
			
		|||
 | 
			
		||||
:Error
 | 
			
		||||
echo ERROR: Exit status %ERRORLEVEL%. Stopped.
 | 
			
		||||
exit %ERRORLEVEL% /b
 | 
			
		||||
exit /b %ERRORLEVEL%
 | 
			
		||||
| 
						 | 
				
			
			@ -1,4 +1,10 @@
 | 
			
		|||
#!/bin/bash -e
 | 
			
		||||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-FileNotice: Based on code by Antonio Villena <_@antoniovillena.es>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
 | 
			
		||||
GENROM=./GenRom
 | 
			
		||||
ADDITEM=./AddItem
 | 
			
		||||
i=2
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,10 @@
 | 
			
		|||
@echo off
 | 
			
		||||
rem SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
rem
 | 
			
		||||
rem SPDX-FileNotice: Based on code by Antonio Villena <_@antoniovillena.es>
 | 
			
		||||
rem
 | 
			
		||||
rem SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
 | 
			
		||||
set /a i=0
 | 
			
		||||
for /f "eol=# tokens=1,2,3 delims=;" %%a in (roms.txt) do call :AddROM %%a %%b %%c
 | 
			
		||||
exit /b
 | 
			
		||||
| 
						 | 
				
			
			@ -16,4 +22,4 @@ exit /b
 | 
			
		|||
 | 
			
		||||
:Error
 | 
			
		||||
echo ERROR: Exit status %ERRORLEVEL%. Stopped.
 | 
			
		||||
exit %ERRORLEVEL% /b
 | 
			
		||||
exit /b %ERRORLEVEL%
 | 
			
		||||
| 
						 | 
				
			
			@ -1,4 +1,10 @@
 | 
			
		|||
#!/bin/bash -e
 | 
			
		||||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-FileNotice: Based on code by Antonio Villena <_@antoniovillena.es>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
 | 
			
		||||
GENROM=./GenRom
 | 
			
		||||
ADDITEM=./AddItem
 | 
			
		||||
i=0
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,6 @@
 | 
			
		|||
@rem SPDX-FileCopyrightText: 2019 Antonio Villena <_@antoniovillena.es>
 | 
			
		||||
@rem
 | 
			
		||||
@rem SPDX-FileContributor: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
copy /Y FLASHempty.ZX1 FLASH.ZX1
 | 
			
		||||
call addrom
 | 
			
		||||
call addcore
 | 
			
		||||
call addroms.bat
 | 
			
		||||
call addcores.bat
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,3 +1,7 @@
 | 
			
		|||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
#
 | 
			
		||||
# Supported environments:
 | 
			
		||||
#   * GNU/Linux
 | 
			
		||||
#   * Windows NT (using MinGW/MSYS/Cygwin/WSL)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,137 @@
 | 
			
		|||
# Authors
 | 
			
		||||
 | 
			
		||||
2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
 | 
			
		||||
# Contributors
 | 
			
		||||
 | 
			
		||||
No one yet.
 | 
			
		||||
 | 
			
		||||
# License
 | 
			
		||||
 | 
			
		||||
This document is under [GNU FDL-1.3 or later](http://www.gnu.org/licenses/fdl-1.3.html) license.
 | 
			
		||||
 | 
			
		||||
# 1. General information
 | 
			
		||||
 | 
			
		||||
The source code of all tools is in `src` directory. All compiled binaries are placed in `bin` directory.
 | 
			
		||||
 | 
			
		||||
## 1.1. Copyright and licensing information for files
 | 
			
		||||
 | 
			
		||||
We try to follow [REUSE recommendations](https://reuse.software/tutorial/) on how to easely specify copyright and licensing information to our files.
 | 
			
		||||
So we added this information to each source file we used according to [SPDX specification](https://spdx.dev/specifications/).
 | 
			
		||||
Check it out by using this [reuse-tool](https://github.com/fsfe/reuse-tool).
 | 
			
		||||
 | 
			
		||||
# 2. Using SDK in GNU environment on Linux, FreeBSD etc.
 | 
			
		||||
 | 
			
		||||
## 2.1. Build tools
 | 
			
		||||
 | 
			
		||||
To build all tools type:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
make
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
To build only **sjasmplus** type:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
make bin/sjasmplus
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## 2.2. Clean tools
 | 
			
		||||
 | 
			
		||||
To clean everything type:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
make clean
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## 2.3. Tools usage
 | 
			
		||||
 | 
			
		||||
These tools are supposed to be used mainly in Makefiles and Bash scripts invoked from Makefiles.
 | 
			
		||||
 | 
			
		||||
### 2.3.1. In Makefiles
 | 
			
		||||
 | 
			
		||||
To use these tools in a Makefile just include `common.mk` file at the beginning of one like this:
 | 
			
		||||
 | 
			
		||||
```make
 | 
			
		||||
include ../sdk/common.mk
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Remember to specify correct relative path to it.
 | 
			
		||||
 | 
			
		||||
This will set "ZXUNOSDK" environment variable (on first inclusion only) and update your "PATH" environment variable to point to SDK's tools.
 | 
			
		||||
These changes are actual for current invocation of "make" utility and all child processes.
 | 
			
		||||
 | 
			
		||||
### 2.3.2. In Bash scripts
 | 
			
		||||
 | 
			
		||||
Bash scripts are supposed to be invoked from Makefiles where the correct environment is already prepared by "make" utility so nothing must be done for such scripts.
 | 
			
		||||
 | 
			
		||||
In other cases you must source `setvars.sh` file in a Bash script like this:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
source ../sdk/setvars.sh
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
or
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
. ../sdk/setvars.sh
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Remember to specify correct relative path to it.
 | 
			
		||||
 | 
			
		||||
This has the same behavior as the inclusion of `common.mk` file in a Makefile.
 | 
			
		||||
 | 
			
		||||
# 3. Using SDK in GNU environment on Windows
 | 
			
		||||
 | 
			
		||||
**NOTE**: compilation of the following tools:
 | 
			
		||||
 | 
			
		||||
* sjasmplus
 | 
			
		||||
 | 
			
		||||
on Windows platform is disabled right now because of presence of precompiled binaries of them in repository. They are not deleted when cleaning.
 | 
			
		||||
 | 
			
		||||
## 3.1. Build tools
 | 
			
		||||
 | 
			
		||||
To build all tools type:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
make
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
To build only **sjasmplus** type:
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
make bin/sjasmplus.exe
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## 3.2. Clean tools
 | 
			
		||||
 | 
			
		||||
To clean everything type:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
make clean
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## 3.3. Tools usage
 | 
			
		||||
 | 
			
		||||
### 3.3.1. In Makefiles
 | 
			
		||||
 | 
			
		||||
The usage is similar to one for GNU/Linux, FreeBSD etc. See [2.3.1](#231-in-makefiles).
 | 
			
		||||
 | 
			
		||||
### 3.3.2. In Bash scripts
 | 
			
		||||
 | 
			
		||||
The usage is similar to one for GNU/Linux, FreeBSD etc. See [2.3.2](#232-in-bash-scripts).
 | 
			
		||||
 | 
			
		||||
# 4. Using SDK on Windows without GNU environment
 | 
			
		||||
 | 
			
		||||
## 4.1. In batch scripts
 | 
			
		||||
 | 
			
		||||
To use these tools in a batch script just call `setvars.bat` file at the beginning of one like this:
 | 
			
		||||
 | 
			
		||||
```batch
 | 
			
		||||
call ..\sdk\setvars.bat
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Remember to specify correct relative path to it.
 | 
			
		||||
 | 
			
		||||
This will set "ZXUNOSDK" environment variable (on first call only) and update your "PATH" environment variable to point to SDK's tools.
 | 
			
		||||
These changes are actual for current invocation of command shell and all child processes.
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
SPDX-FileType: TEXT
 | 
			
		||||
 | 
			
		||||
SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
 | 
			
		||||
SPDX-License-Identifier: GFDL-1.3-or-later
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,17 @@
 | 
			
		|||
SPDX-FileName: sjasmplus.exe
 | 
			
		||||
 | 
			
		||||
SPDX-FileType: BINARY
 | 
			
		||||
 | 
			
		||||
SPDX-FileChecksum: SHA1: 0fea7c17d5e83c03466ab99141add32551f16714
 | 
			
		||||
 | 
			
		||||
SPDX-LicenseConcluded: Zlib
 | 
			
		||||
 | 
			
		||||
SPDX-LicenseComments: The concluded license is taken from external sources showed in program's banner after program was started.
 | 
			
		||||
 | 
			
		||||
SPDX-FileCopyrightText: Copyright 2004-2008 by Aprisobal / http://sjasmplus.sf.net / my@aprisobal.by /
 | 
			
		||||
 | 
			
		||||
SPDX-FileComment: SjASMPlus Z80 Cross-Assembler v1.08 (build 07-04-2016)
 | 
			
		||||
 | 
			
		||||
SPDX-FileNotice: based on code of SjASM by Sjoerd Mastijn / http://www.xl2s.tk /
 | 
			
		||||
 | 
			
		||||
SPDX-FileContributor: Modified 2016 AntonioVillena
 | 
			
		||||
| 
						 | 
				
			
			@ -1,5 +1,9 @@
 | 
			
		|||
# Common declarations for Makefiles.
 | 
			
		||||
#
 | 
			
		||||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
#
 | 
			
		||||
# Supported environments:
 | 
			
		||||
#   * GNU/Linux
 | 
			
		||||
#   * Windows NT (using MinGW/MSYS/Cygwin/WSL)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,8 @@
 | 
			
		|||
@echo off
 | 
			
		||||
rem SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
rem
 | 
			
		||||
rem SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
 | 
			
		||||
if not x%ZXUNOSDK% == x exit /b
 | 
			
		||||
set ZXUNOSDK=%~dp0
 | 
			
		||||
set ZXUNOSDK=%ZXUNOSDK:~0,-1%
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -0,0 +1,10 @@
 | 
			
		|||
#!/bin/bash -e
 | 
			
		||||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
 | 
			
		||||
if [[ "x$ZXUNOSDK" == x ]]; then
 | 
			
		||||
	ZXUNOSDK=$(dirname $(realpath "$0"))
 | 
			
		||||
	PATH=$ZXUNOSDK/bin:$PATH
 | 
			
		||||
	export ZXUNOSDK
 | 
			
		||||
fi
 | 
			
		||||
| 
						 | 
				
			
			@ -1,3 +1,7 @@
 | 
			
		|||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
#
 | 
			
		||||
# Supported environments:
 | 
			
		||||
#   * GNU/Linux
 | 
			
		||||
#   * Windows NT (using MinGW/MSYS/Cygwin/WSL)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,11 +1,15 @@
 | 
			
		|||
# Build:
 | 
			
		||||
#   make -w -C sjasmplus -f ../sjasmplus.mk
 | 
			
		||||
# Clean:
 | 
			
		||||
#   make -w -C sjasmplus -f ../sjasmplus.mk clean
 | 
			
		||||
# SPDX-FileCopyrightText: 2021 Ivan Tatarinov <ivan-tat@ya.ru>
 | 
			
		||||
#
 | 
			
		||||
# SPDX-License-Identifier: GPL-3.0-or-later
 | 
			
		||||
#
 | 
			
		||||
# Supported environments:
 | 
			
		||||
#   * GNU/Linux
 | 
			
		||||
#   * Windows NT (using MinGW/MSYS/Cygwin/WSL)
 | 
			
		||||
#
 | 
			
		||||
# Build:
 | 
			
		||||
#   make -w -C sjasmplus -f ../sjasmplus.mk
 | 
			
		||||
# Clean:
 | 
			
		||||
#   make -w -C sjasmplus -f ../sjasmplus.mk clean
 | 
			
		||||
 | 
			
		||||
ifeq ($(OS),Windows_NT)
 | 
			
		||||
SJASMPLUS	:= sjasmplus.exe
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue