diff --git a/programs/system/beep/beep.asm b/programs/system/beep/beep.asm new file mode 100644 index 0000000000..3e96b020d4 --- /dev/null +++ b/programs/system/beep/beep.asm @@ -0,0 +1,70 @@ +; Beep - Speaker beep you if the video does not work +; and you think that the system died. +; +; Copyright (c) 20012, Marat Zakiyanov aka Mario79, aka Mario +; All rights reserved. +; +; Redistribution and use in source and binary forms, with or without +; modification, are permitted provided that the following conditions are met: +; * Redistributions of source code must retain the above copyright +; notice, this list of conditions and the following disclaimer. +; * Redistributions in binary form must reproduce the above copyright +; notice, this list of conditions and the following disclaimer in the +; documentation and/or other materials provided with the distribution. +; * Neither the name of the nor the +; names of its contributors may be used to endorse or promote products +; derived from this software without specific prior written permission. +; +; THIS SOFTWARE IS PROVIDED BY Marat Zakiyanov ''AS IS'' AND ANY +; EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +; DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY +; DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +; (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +; ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +; (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +;***************************************************************************** +; +; In a capitalist world - you ping to satellite. +; In Soviet Russia - sputnik beep to you! +; Russian folk art +;--------------------------------------------------------------------- + use32 + org 0x0 + + db 'MENUET01' + dd 0x01 + dd START + dd IM_END + dd I_END + dd stacktop + dd 0x0 + dd 0x0 +;------------------------------------------------------------------------------- +include '../../macros.inc' +;------------------------------------------------------------------------------- +START: + mcall 68,1 + mcall 26,9 + cmp [timer],eax + ja START + add eax,150 + mov [timer],eax + mcall 55, eax, , , Music + jmp START +;------------------------------------------------------------------------------- +Music: + db 0x90, 0x37, 0 +IM_END: +;------------------------------------------------------------------------------- +align 4 +timer: + rd 1 +;------------------------------------------------------------------------------- + rb 512 +stacktop: +;------------------------------------------------------------------------------- +I_END: +;------------------------------------------------------------------------------- \ No newline at end of file diff --git a/programs/system/beep/build.bat b/programs/system/beep/build.bat new file mode 100644 index 0000000000..33ba391b87 --- /dev/null +++ b/programs/system/beep/build.bat @@ -0,0 +1,3 @@ +@fasm beep.asm beep +@kpack beep +@pause \ No newline at end of file diff --git a/programs/system/beep/build.sh b/programs/system/beep/build.sh new file mode 100644 index 0000000000..58e9cb95b4 --- /dev/null +++ b/programs/system/beep/build.sh @@ -0,0 +1,10 @@ +#!/bin/bash +# This script does for linux the same as build.bat for DOS, +# it compiles the KoOS kernel, hopefully ;-) + + echo "lang fix en" + echo "lang fix en" > lang.inc + mkdir bin + fasm -m 65536 beep.asm ./bin/beep + rm -f lang.inc + exit 0