Jeśli chcesz wziąć udział w dyskusjach na forum - zaloguj się. Jeżeli nie masz loginu - poproś o członkostwo.
Vanilla 1.1.4 jest produktem Lussumo. Więcej informacji: Dokumentacja, Forum.
if (blockTimer[y][x] = BT_NULL) then blockTimer[y][x] := BT_TRIGGER;
const INDX_0 = 40;
Test(10);
procedure Test(offset : byte);
begin
CRT_Goto(INDX_0 + 123 + 20 + offset);
end;
procedure Test(offset : byte);
begin
CRT_Goto(INDX_0 + 143 + offset);
end;
procedure Test(offset : byte);
begin
CRT_Goto(183 + offset);
end;
procedure CRT_Goto(offset : integer);
begin
CRT_cursor := CRT_vram + offset;
end;
const INDX_0 = 40;
var CRT_cursor, CRT_vram: word;
procedure CRT_Goto(offset : integer);
begin
CRT_cursor := CRT_vram + offset;
end;
procedure Test(offset : byte);
begin
CRT_Goto(INDX_0 + 123 + 20 + offset);
end;
begin
Test(10);
end.
-code:$address adres uruchomienia programu
-data:$address adres pamięci dla zmiennych, tablic
-stack:$address adres pamięci dla stosu programowego (64 bajty)
-zpage:$address adres na stronie zerowej dla zmiennych (24 bajty)
214 lines compiled, 1.01 sec, 5738 tokens, 613 idents, 180 blocks, 7 types
1 warning(s) issued
25 note(s) issued
ZPFREE: $0000..$007F / $00D8..$00FF
RUNLIB: $20CF..$20D3
SYSTEM: $20F2..$20F5
CRT: $20F6..$2109
CODE: $2000..$215B
DATA: $215C..$2220
-stack:address Software stack hex address (size = 64 bytes)
-zpage:address Variables on the zero page hex address (size = 24 bytes)
procedure Pause; assembler; overload;
(*
@description:
Delay program execution (1/50 second).
*)
asm
{ lda:cmp:req :rtclok+2
};
end;
procedure Pause; assembler; overload;
(*
@description:
Delay program execution (1/50 second).
*)
asm
{ lda:cmp:req :rtclok+2
};
end;
program trigger_test_blibs;
{$librarypath ../blibs'}
uses atari, b_system, b_crt, b_pmg, joystick;
//
// START PROGRAM
//
begin
{
Stage Init
}
// store system charset before turning system off
move(pointer($e000),pointer($8000),1024);
SystemOff($fe);//WTF???
// set stored charset back
SetCharset($80);
CRT_Init;
CRT_Clear;
//CursorOff;
repeat
if (strig0 = 0) then
begin
// napis inverse
CRT_writeXY(11,5,'FIRE Pressed '~*);
end
else
begin
CRT_writeXY(11,5,'waiting for FIRE...'~);
end;
pause;
until CRT_KeyPressed;
end.
*---------------------------*
* cmc player v 2.1 *
* by Marcin Lewandowski *
* based on cmc player v 2.0 *
* by Janusz Pelc *
*---------------------------*
1. graj song
A=$00
X numer muzyczki
2. graj song
A=$10
X pozycja songu
3. instrument
A=$20+nr kanału
X wysokość
Y nr instrumentu
4. tempo
A=$30
X tempo
5. skończ grać
A=$40
6. przerwij
A=$50
7. kontynuuj
A=$60
8. inicjuj
A=$70
X <musadr
Y >musadr
tebe:
nie ma takiego bajeru w obecnej wersji, trzeba będzie dopisać