apps/macros.inc: add new macro "format" #538
Dismiss Review
Are you sure you want to dismiss this review?
Labels
Clear labels
AI
Eolite
FS
Good First PR
GSoC
HardwareTested
HLL
Influence/Settings
Influence/Text/TYPO
IRCC
Lang/C
Lang/FASM
Pay for the code
Subsystem/API
Subsystem/Audio
Subsystem/Graphics
Subsystem/IPC and events
Subsystem/Memory
Subsystem/Network
Subsystem/Services(daemon)
Subsystem/Taskmanager
Subsystem/VFS
Subsystem/Window
Category
Applications
Category
Drivers
Category
General
Category
Kernel
Category
Libraries
The issue is suitable to beginners
This issue or PR in the Google Source of Code program
Kind
Breaking
Breaking change that won't be backward compatible
Kind
Bug
Something is not working
Kind
Build
Kind
Documentation
Documentation changes
Kind
Enhancement
Improve existing functionality
Kind
Feature
New functionality
Kind
Security
This is security issue
Kind
Testing
Issue or pull request related to testing
Paid task
PR
Conflicts
PR conflicts with main
PR
Dependent
This PR is dependent on another PR
Priority
Critical
1
The priority is critical
Priority
High
2
The priority is high
Priority
Low
4
The priority is low
Priority
Medium
3
The priority is medium
PR
Ready to merge
Pull request is ready for merge
PR
Request changes
Changes requested in pull request
PR
Review required
Reviewed
Confirmed
Issue has been confirmed
Reviewed
Duplicate
This issue or pull request already exists
Reviewed
Invalid
Invalid issue
Reviewed
Won't Fix
This issue won't be fixed
Status
Abandoned
Somebody has started to work on this but abandoned work
Status
Blocked
Something is blocking this issue or pull request
Status
Need More Info
Feedback is required to reproduce issue or to continue work
infinity service, audio drivers, midi, speacker, audio programs
vesa, vga, framebuffer, cursors, blitter, and video drivers
pipes, signals, events, shared memory
virt and phys memory allocators, malloc and other
userspace and kernel(for example: serial) services
process, threads, run apps, scheduler
drivers from filesystem, fs api, blkdev, programs that work with the file system
windows, skins, buttons, mouse and keyboard code for windows (not the base code)
Milestone
No items
No Milestone
Projects
Clear projects
No projects
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: KolibriOS/kolibrios#538
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
A new macro "format" has been added, adding the implementation of MENUET01, MENUET02 and KX formats.
task: #245
App/macros.inc: A new macro "format" has been addedto apps/macros.inc: add new macro "format"Minor hygiene items for the
formatmacro (none block the design, just polish):Bare
errwithout a message in thestackandmain_entryre-declaration branches - give them diagnostics like the others (e.g.err 'ERROR: stack size already set',err 'ERROR: main entry already set').Remove commented-out dead code:
;err 'FORMAT NOT SUPPORTED. This format for gcc toolchain'(in the02branch) and;load __tmp_main dword from meos_header.02.main(inpostpone).Unclear message
'data import defined, format supported before one import table'(appears in both the KX and 02 branches) - reads awkwardly; suggest'import table already defined; only one is supported'.Trailing space in
'ERROR: Re-declaring the entry point '.Inconsistent error-message style - some use an
ERROR:prefix, some don't.Better to use unified DBGBOARD prefixE:.sectionsilently ignores its argument (name/attributes) and only aligns to 16 bytes. Fine for a flat format, but add a short comment so callers know the name/flags are dropped.data fixupsis accepted but records nothing** (sets the "good" flag and returns), whereasdata exporterrors out. Clarify the intent with a comment (deliberate no-op?).Re-declaration guards bypassable at the default value:entry/stackcompare against the default, so setting the entry toentry_ptr's address, orstack 2048, leaves the guard unlocked and allows a second call. Minor edge case.data fixups / end data используется для многих форматов для автоматической генерации таблицы релокации. В данном случае секция представляет собой заглушку на на случай, если всё же предстоит переход на PE или ELF форматы исполняемых файлов
Is there any example how to use it?
This macro is an alternative to the current macros MEOS_APP_START, __header and related ones.
7adc8b5159to8019bd0184@@ -364,0 +376,4 @@org 0stack_size = 2048default_stack_size = stack_sizedefault_entry = entry_ptrRemove extra space