Subversion Repositories Kolibri OS

Compare Revisions

Regard whitespace Rev 4867 → Rev 4868

/programs/develop/SPForth/proc32.inc
File deleted
/programs/develop/SPForth/debug.inc
File deleted
\ No newline at end of file
/programs/develop/SPForth/mbuild.bat
1,0 → 0,0
fasm.exe meforth.ASM
 
pause
/programs/develop/SPForth/meforth.ASM
89,11 → 89,12
;; Main entry points and COLD start data
 
use32
format binary as ""
 
org 0x0
 
db 'MENUET01' ; 8 byte id
dd 0x01 ; header version
db 'MENUET01'
dd 0x01
dd ORIG ; start of code
dd I_END ; size of image
MEMS: dd EM ; memory for app
107,7 → 108,7
 
lang fix ru
include 'MACROS.INC'
include "proc32.inc"
include '..\..\proc32.inc'
 
align 4
proc strncmp stdcall, s1:dword, s2:dword, n:dword
182,8 → 183,9
pusha
mcall 12,1
mov [fRed],ebx
mcall 0, <0,FW_WIDTH>, <0,FW_HEIGHT>, 0x03000000, 0x805080D0, 0x005080D0
mcall 4, <8,8>, 0x10DDEEFF, header, header.size
mcall 0, <0,FW_WIDTH>, <0,FW_HEIGHT>, 0x54000000
; mcall 0,,,COL_WINDOW_BG, ,title ; define window
mcall 71, 1, header
 
mcall 9,pinfo,-1
mov eax,[pinfo.x_size]
202,22 → 204,27
mov [pinfo.y_start],eax
call erase_screen
mcall 12, 2
if ~ SYSTEM eq EMUL
mcall 67,-1,-1,FW_WIDTH,FW_HEIGHT
end if
popa
ret
 
lsz header,\
ru,'”®àâ ¤«ï MenuetOS (SPF)',\
en,'EXAMPLE APPLICATION',\
fr,"L'exemplaire programme"
 
macro GetSkinHeight
{
mov eax,48
mov ebx,4
int 0x40
}
 
erase_screen:
GetSkinHeight
mov ecx,eax
shl ecx,16
add ecx,[pinfo.y_size]
sub ecx,eax
sub ecx,4
mov ebx,[pinfo.x_size]
add ebx,10 shl 16-20
mov ecx,[pinfo.y_size]
add ecx,30 shl 16-35
add ebx,5 shl 16 - 9
mcall 13,,,0;xff
ret
 
464,6 → 471,8
 
include 'amain.asm'
 
header db 'Kolibri Forth v12.1',0
 
FINFO:
.mode dd 0
dd 0
471,17 → 480,9
.buf dd 0
.work dd os_work
.path:
if SYSTEM eq MEOS
; .path db 0
; .path db '/HD/1/FORTH/AUTORUN.DAT',0
; db '/RD/1/AUTOLOAD.F'
else
db '/RD/1/AUTOLOAD.F'
; db '/RD/1/EXAMPLE.F'
; db '/RD/1/PICTURE.F'
; db '/RD/1/AUTORUN.DAT'
; db '/HD/1/FORTH/AUTORUN.DAT'
end if
db 0
.end_path: