Skip to content

Commit 5d36fee

Browse files
committed
rt9
1 parent 0a92386 commit 5d36fee

2 files changed

Lines changed: 86 additions & 1 deletion

File tree

changelog/build23rt9.md

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
<div align="center">
2+
<img height="300" src="https://github.com/bracesoftware/newasm/blob/main/readme_resources/newasm_logo.png">
3+
</div>
4+
5+
# `NewASM` Release Notes
6+
Welcome to **`NewASM`**: an interpreted low-level programming language which combines explicit memory and register control, giving it a breeze of assembly-like feel, with high-level functionalities such as objects, threads and more.
7+
8+
* Version: `build 23`
9+
* Version of the runtime: `9`
10+
* Kernel version: `3`
11+
12+
> [!NOTE]
13+
> This is a pre-release which means that this product version doesn't represent the final quality of the product - it may contain bugs and problems that aren't yet discovered.
14+
15+
> [!WARNING]
16+
> Some unstable builds can eventually gain runtime and kernel updates. NewASM Runtime is a back-end collection of runtime engines that let the front-end systems work. We recommend immediatelly updating as soon as the runtime updates for a specific version. Same goes with the kernel.
17+
18+
## What's new or changed?
19+
20+
+ Performance improvements.
21+
22+
## Fixed issues
23+
24+
- No issues were found.
25+
26+
## Important notes
27+
28+
- No important notes.
29+
30+
--------------------------------------------------------------------------------
31+
32+
### Building from source
33+
- Use the following command to compile your own build of `NewASM`; make sure that you have `g++` and `go` installed:
34+
35+
```bash
36+
go build networking.go -buildmode=c-archive -o networking.a
37+
C:\path_to_your_compiler\g++ -static -std=c++23 index.cpp -o index.exe networking.a
38+
```
39+
40+
- If you are using Windows Subsystem for Linux, use the following command:
41+
42+
```bash
43+
wsl go build networking.go -buildmode=c-archive -o networking.a
44+
wsl g++ -m64 -static -std=c++23 index.cpp -o index.out networking.a
45+
```
46+
47+
### Downloading
48+
- Download one of the following archives that suits your system. Once you have downloaded it, extract the archive into a folder of your choice and begin using the application.
49+
50+
### Using the application
51+
- Use the following command to execute your `NewASM` programs on Windows:
52+
53+
```bash
54+
newasm yourfile.asm
55+
```
56+
57+
- If you are on Linux, just add the `./` suffix:
58+
59+
```bash
60+
./newasm yourfile.asm
61+
```
62+
63+
### Writing your first `NewASM` app
64+
65+
- Create the file named `yourfile.asm`, or just name it whatever you like, and edit it with an editor of your choice:
66+
67+
```asm
68+
using "ios"
69+
.data
70+
string text : "Hello world!\n"
71+
intg len : $-text
72+
.start
73+
mov tlr, text
74+
mov bos, len
75+
mov fdx, 1
76+
77+
sysenter "ios" ; entering the kernel
78+
syscall ; calling the system call/host service
79+
ret 0
80+
```
81+
82+
Output:
83+
```
84+
Hello world!
85+
```

src/interpreter_newasm.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ namespace newasm
1515
{
1616
inline void enable_ansi() noexcept;
1717
inline constinit const int BUILD_NUMBER = 23;
18-
inline constinit const int RUNTIME_VERSION = 8;
18+
inline constinit const int RUNTIME_VERSION = 9;
1919
inline constinit const int KERNEL_VERSION = 3;
2020
}
2121

0 commit comments

Comments
 (0)