flat assembler
Message board for the users of flat assembler.
![]() Goto page Previous 1, 2 |
Author |
|
soul_master 12 Jan 2025, 13:51
Multiple Compiler Package: https://starpow3r.net/compiler.zip
Includes TinyC, GCC, FASM and FASMG with library, examples, graphics and fonts. Visual interface (or "front end") for FASM/G. One click to run *.C or *.ASM from a page. Reduced GCC/MingW to under 50mb. ![]() |
|||
![]() |
|
soul_master 12 Jan 2025, 14:00
New Example Pages: https://starpow3r.net/pages.zip For the latest version of Miracle Browser: https://starpow3r.net/miracle.zip
![]() Code: * /agenda/ - Miracle Browser 2-DO list. 18 pages worth. Ideas that haven't been implemented * /tutorial/ - Example tutorial: Programming in C. 15 pages that reuse the same menu. * /theme/ - Custom themes: browser.theme=blue. * image - Miracle .IMAGE file format * /food/ - Example site template with food recipes * /animal/ - Example page of animals with audio: play 'my.wav' * /games/, /videos/ - How to create a custom launcher, or an image gallery, or a page that reviews or sells games, movies, or any products * /media/ - Some outline fonts ending with 'o'. Example: 'radio/64o', 'block/64o', 'cartoon/80o'. .FONT opens with miracle.exe. Last edited by soul_master on 12 Jan 2025, 14:38; edited 1 time in total |
|||
![]() |
|
soul_master 12 Jan 2025, 14:37
Updates:
Code: * Inclusion: use 'file'. Now, a title and/or menu can be created once for an entire site, and it's reusable by all pages. * Themes. Pages can customize interface colors: browser.theme=name * Cursors: Set page.cursor='my.cur' or .ani/mated * Audio: play 'my.wav', or: play loop 'my.wav' * Link text boxes: t.link='name'. For buttons * Link multiple images in a gallery with image.link and image.search * Drag and drop filename from explorer. Minimize browser first * "Open With..." .FONT, .IMAGE, .SOUL, .USE, .CODE. Languages: .C/H, .CPP/HPP, .ASM/INC, .BAT, .PY (Python), .HTML/CSS/JS * code.language='bat' for batch files. Recognizes both comment styles, "rem comment" and "::comment". Drag any BAT onto miracle.exe to open with. load_font(text name) (t.font='name/n') searches these locations: /name/, /font/ or /media/font/, or up 1-2 directories: /site/page1 or /sites/site1/page1. Code: @miracle/media/font/name/n @page/name/n @page/font/name/n @page/../font/name/n @page/../../font/name/n @page/media/font/name/n @page/../media/font/name/n @page/../../media/font/name/n Edit: Update (1-15-25): https://www.starpow3r.net/miracle.zip Finally solved the problem with fonts. Before, t.font='name/32' would cause a crash if the font didn't support a fade or gradient applied to it, or if text.graphics=fade was set previously, and the font was changed to an incompatible one. Now, any font should be usable, and pages/fonts demonstration should not crash. Fixed another issue: "Open With..." source (*.ASM) would reset the global code_language to 's' if it encountered <> (if a<>b in FASM/G), causing only SS (Soulscript) keywords to be highlighted. |
|||
![]() |
|
soul_master 30 Jan 2025, 07:44
Update (1-30-25): https://starpow3r.net/
Internet started. Views online pages with text and code files (.C/H/ASM/INC/BAT/x). Uses Winsock. No images or links yet. Example addresses. Copy, then click [>] by the address bar to "paste and go". Code: www.starpow3r.net www.starpow3r.net/fasm.soul www.starpow3r.net/text.soul www.starpow3r.net/loop.soul www.starpow3r.net/text.h www.starpow3r.net/text.inc ![]() ![]() ![]() ![]() |
|||
![]() |
|
soul_master 05 Feb 2025, 14:10
Update (2-5-25): https://starpow3r.net/ Miracle Browser is the solution to all the problems of the internet caused by HTML browsers.
![]() Soulscript can display code in 22+ programming languages on a single page: Soulscript, C, C++, C#, Python, HTML, CSS, Javascript, Java, Rust, Ruby, Swift, SQL, BASIC... ![]() |
|||
![]() |
|
soul_master 23 Feb 2025, 20:37
UPDATES (2-22-25)
https://starpow3r.net * Online pages with links. From now on, link='http/s:' prefix is needed to open in HTML browser - example t.link='https://disney.com' - and Soulscript uses "www.". HTML links (http/s:) pasted into the address bar will view the source code. * Online pages with images. Creates local directories in /browser/cache/ to match server structure. Example: "www.my.com/a/b/c/name.txt" creates 4 directories: /my.com/, /my.com/a/, /my.com/a/b/, /my.com/a/b/c/ Then downloads "name.txt" to /my.com/a/b/c/ * Links to code online. "Open With..." any code language .ext/ension, online or offline. 25+ languages supported. New code.language='pearl'. Example: www.starpow3r.net/text.inc (ASM) * Save screenshot as /browser/screen/name_000.bmp. Plays camera flash sound. Press Alt+1-2 keys: 1=100%/1920x1080, 2=50%/960x540 (1/2W). One image takes about 6mb in HD, and about 1.5mb in 960x540. Links. To view in MB, copy and then click the arrow icon by the address bar to "paste and go". Use www. prefix to open in MB, and http/s: to open in HTML browser. Code: www.starpow3r.net/links.soul www.starpow3r.net/languages.soul www.starpow3r.net/solutions.soul Message forum/board designs. Non-functional. Code: www.starpow3r.net/forum.soul www.starpow3r.net/message.soul ![]() ![]() Random: Winsock definitions for TinyC: Code: // WinSock definitions for TinyC typedef struct { uintw wVersion, wHighVersion; byte szDescription[256+1], szSystemStatus[128+1]; uint iMaxSockets, iMaxUdpDg; byte align[2]; uint lpVendorInfo; } WSADATA; struct hostent { char *h_name, **h_aliases; intw h_addrtype, h_length; char **h_addr_list; #define h_addr h_addr_list[0] }; struct sockaddr { uintw sa_family; byte sa_data[14]; }; struct sockaddr_in { uintw sin_family, sin_port; char *sin_addr; byte sin_zero[8]; }; struct addrinfo { int ai_flags; int ai_family; int ai_socktype; int ai_protocol; struct socklen_t ai_addrlen; struct sockaddr *ai_addr; char *ai_canonname; struct addrinfo *ai_next; }; typedef struct { uint socket; text address; int port; struct sockaddr_in socketa; } SOCKET; struct hostent *hoste; struct sockaddr_in socketa; enum { SOCK_STREAM=1, SOCK_DGRAM=2, SOCK_RAW=3, SOCK_RDM=4, SOCK_CONN_DGRAM=5, SOCK_PACKET=10, AF_INET=2, AF_INET6=4, INVALID_SOCKET=-1, SOCKET_ERROR=-1, TCP=6, UDP=17, IPPROTO_TCP=6, IPPROTO_UDP=17, IPPORT_FTP=21, IPPORT_SMTP=25, IPPORT_NAMESERVER=42, IPPORT_WHOIS=43, IPPORT_MTP=57, IPPORT_TFTP=69 }; #define HTONS(n) (((n>>8)&0xFF)|((n<<8)&0xFF00)) // WinSock functions HMODULE wsock32_dll; typedef int (*IMPORTiup)(uint,void*); typedef int (*IMPORTi)(); IMPORTiup WSAStartup; IMPORTi WSACleanup, WSAGetLastError; typedef int (*IMPORTiti)(text,int); typedef void *(*IMPORTpt)(text); typedef void *(*IMPORTptii)(text,int,int); typedef uintw (*IMPORTww)(uintw); IMPORTiti gethostname; IMPORTpt gethostbyname; IMPORTptii gethostbyaddr; IMPORTww htons; typedef uint (*IMPORTuiii)(int,int,int); typedef int (*IMPORTiupi)(uint,void*,int); typedef uint (*IMPORTuupi)(uint,void*,int); typedef int (*IMPORTiupi)(uint,void*,int); typedef int (*IMPORTiui)(uint,int); typedef int (*IMPORTiutii)(uint,text,int,int); typedef int (*IMPORTiu)(uint); IMPORTuiii socket; IMPORTiupi connect; IMPORTiui listen; IMPORTiupi bind; IMPORTuupi accept; IMPORTiutii send, recv; IMPORTiu closesocket; // import functions... #define load_library(name) \ (name##_dll=LoadLibraryA(#name)) #define import_function(module, type, name) \ (name=(IMPORT##type) GetProcAddress(module##_dll, #name)) #define free_library(name) FreeLibrary(name##_dll) int import_winsock() { if (!load_library(wsock32)) return 0; if (!import_function(wsock32, iup, WSAStartup)) return 0; if (!import_function(wsock32, i, WSACleanup)) return 0; if (!import_function(wsock32, i, WSAGetLastError)) return 0; if (!import_function(wsock32, iti, gethostname)) return 0; if (!import_function(wsock32, pt, gethostbyname)) return 0; if (!import_function(wsock32, ptii, gethostbyaddr)) return 0; if (!import_function(wsock32, ww, htons)) return 0; if (!import_function(wsock32, uiii, socket)) return 0; if (!import_function(wsock32, iupi, connect)) return 0; if (!import_function(wsock32, iutii, send)) return 0; if (!import_function(wsock32, iutii, recv)) return 0; if (!import_function(wsock32, iui, listen)) return 0; if (!import_function(wsock32, iupi, bind)) return 0; if (!import_function(wsock32, uupi, accept)) return 0; if (!import_function(wsock32, iu, closesocket)) return 0; return 1; } int end_winsock() { free_library(wsock32); return 1; } |
|||
![]() |
|
Goto page Previous 1, 2 < Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.