Jump to content

funkheld's Photo

funkheld

Member Since 8 Nov 2011
OFFLINE Last Active Apr 18 2017 11:18 AM

#3312493 VSCROLL with MAD-Pascal-

Posted by funkheld on Tue Sep 1, 2015 1:55 PM

here is the VSCROLL with MAD-Pascal:

var
dlist: array [0..6] of word;
  z: byte;
    
procedure InitDlist(a: word);
begin
  dlist[0]:=$7070; dlist[1]:=$4270; 
  dlist[2]:=$9060;
  dlist[3]:=$2222; dlist[4]:=$0041;
  dlist[5]:=a; 
end;
 
begin
  InitDlist(word(@dlist));
  DPoke(560,word(@dlist));
  
  for z:=0 to 39 do begin
    Poke($9060+z+39,z);
  end;
  
  repeat
    for z:=0 to 7 do begin
      Poke($d405,z);
      delay(2000);
    end;
    
    Poke($d405,0);
     
    for z:=0 to 7 do begin
      Poke($d405,7-z);
      delay(2000);
    end;
  until 0;
 
end.



#3293343 MAD Pascal : ASM File get ?

Posted by funkheld on Wed Aug 5, 2015 10:58 AM

now it's working :

 

lda <file       >>>>>> lda #<file  !!!!!!
sta icbadr
,x
lda
>file      >>>>>> lda #>file  !!!!!!!
sta icbadr
+1,x

 

 

thank you.

greeting




#3288991 MAD Pascal : 4 lines of text a displayList.

Posted by funkheld on Thu Jul 30, 2015 7:26 AM

the poke is to test for the beginning address: 36960 :
 
Poke(36960,129);
Poke(36962,255);
Poke(36964,129);
it works for me with the circle.
 
The photo above is from the MIST and the VGA monitor and one photo from altirra-emu.
 
greeting
 
 
var
dlist: array [0..110] of byte;
  dl_idx: word;
  screen: word;
  z: byte;
    
procedure DLByte(a: byte);
begin
  Poke(dl_idx, a);
  inc(dl_idx);
end;
 
procedure DLWord(a: word);
begin
  DPoke(dl_idx, a);
  inc(dl_idx, 2);
end;  
 
procedure InitDlist(a: word);
begin
  DLByte($70); DLByte($70); DLByte($70); DLByte($4d);
  DLWord(36960);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);DLByte($0d);
  DLbyte($42);DLWord($bc40);
  DLByte($02);DLByte($02);DLByte($02);
  DLByte($41); DLWord(a);
end;
 
begin
  dl_idx:= word(@dlist);
  
  InitDlist(word(@dlist));
  
  InitGraph(7);   
  DPoke(560,word(@dlist));
  DPoke($58,36960);
  
  SetColor(1);
  MoveTo(0,0);
  LineTo(159,95);
  
  SetColor(2);
  MoveTo(159,0);
  LineTo(0,95);
  
  SetColor(3);
  Circle(80,48,45);
  
  SetColor(3);
  Circle(80,48,25);
  
  Poke(36960,129);
  Poke(36962,255);
  Poke(36964,129);
 
  for z:=0 to 140 do begin
    DPoke($bc40+z,z);
  end;
  
  repeat
  until keypressed;
end.
 

Attached Thumbnails

  • altirra.jpg
  • mist.JPG



#3287333 Mad Pascal

Posted by funkheld on Tue Jul 28, 2015 3:01 AM

Hello, this "pasintro" runs with graphics and sound also wonderful on the "MIST"
 
best regards

Attached Thumbnails

  • DSCN3182.JPG
  • DSCN3183.JPG