funkheld Posted April 11, 2021 Share Posted April 11, 2021 hello zbyti, do you have new nice ideas for the Plus4? thanks. Quote Link to comment Share on other sites More sharing options...
zbyti Posted April 11, 2021 Share Posted April 11, 2021 3 hours ago, funkheld said: hello zbyti, do you have new nice ideas for the Plus4? thanks. Only one but this idea fits to A8 too :] Quote Link to comment Share on other sites More sharing options...
funkheld Posted April 12, 2021 Share Posted April 12, 2021 hello, thanks. greeting Quote Link to comment Share on other sites More sharing options...
Atlan_Roland Posted April 13, 2021 Share Posted April 13, 2021 On 3/29/2021 at 12:51 AM, tebe said: new MP, https://github.com/tebe6502/Mad-Pascal - unit ZX0 - block ASM without { } is supported FYI: i guess there's an 'end;' too much in lib\zx0.pas zx0.pas: [..] to_exit ldx #0 @sp equ *-1 end; //end; commented this out, compiles & works great then. end. Quote Link to comment Share on other sites More sharing options...
tebe Posted April 14, 2021 Author Share Posted April 14, 2021 (edited) new unit: HCM2 (Hard Color Map) by Sandor Teli (Reharden) https://github.com/tebe6502/Mad-Pascal/tree/master/samples/graph/hcm hcm.7z hcm_test3 (press key START to skip picture) Edited April 14, 2021 by tebe 4 Quote Link to comment Share on other sites More sharing options...
Sandor / HARD Posted April 15, 2021 Share Posted April 15, 2021 14 hours ago, tebe said: new unit: HCM2 (Hard Color Map) by Sandor Teli (Reharden) https://github.com/tebe6502/Mad-Pascal/tree/master/samples/graph/hcm hcm.7z 20.29 kB · 9 downloads hcm_test3 (press key START to skip picture) Oh wow, nice to see HCM getting some love Thank you! 1 Quote Link to comment Share on other sites More sharing options...
zbyti Posted May 14, 2021 Share Posted May 14, 2021 Evergreen classic: Illustrating Pascal Illustrating Pascal.djvu 2 Quote Link to comment Share on other sites More sharing options...
Gury Posted May 15, 2021 Share Posted May 15, 2021 Nice introductory and well presented Pascal manual. Recommended for all newcomers and the ones who want to re-check specific features. Quote Link to comment Share on other sites More sharing options...
zbyti Posted May 16, 2021 Share Posted May 16, 2021 Mad Pascal 1.6.5 rewritten handling of CASE OF rewritten code optimization for arrays not exceeding 256 bytes optimization for conditions '>', '<=' added memory allocation for STRING-type arrays (so far only the pointer was put away, it worked like 'array of ^string') new platform added, Commodore C4 Plus unit GRAPHICS: procedure Font(charset: pointer); unit STRINGUTILS unit MISC, RMT, CMC, MPT: DetectAntic unit SYSTEM revised to include ATARI, C64, C4Plus platforms unit ZX0 unit HCM2 added support of $resource (RCDATA, RCASM) for C64, C4Plus platforms, resources are sorted by ascending addresses extended RCDATA resource with possibility to specify ofset for read file added support for Pascal compliant syntax for ASM block, no { } brackets required added new directive {$codealign proc = value}, {$codealign loop = value} allowing to align generated code https://github.com/tebe6502/Mad-Pascal/releases 2 2 Quote Link to comment Share on other sites More sharing options...
Gury Posted May 17, 2021 Share Posted May 17, 2021 Waw, great! So many new features... I also noticed some examples do not work anymore. I checked the code for cube_clip3.pas (fast object rotation), which uses FrameBuffer procedure, which does not exist in graph.inc anymore. I found there are new routines (SetDisplayBuffer, NewDisplayBuffer, SwitchDisplayBuffer), which, I suppose, do the job properly, but I didn't grasp the functionality properly yet. Quote Link to comment Share on other sites More sharing options...
tebe Posted May 17, 2021 Author Share Posted May 17, 2021 https://github.com/tebe6502/Mad-Pascal/tree/master/samples/graph new versions uploaded 3 Quote Link to comment Share on other sites More sharing options...
Gury Posted May 17, 2021 Share Posted May 17, 2021 Great, what a service I also changed the include file {$i sin128.pas} to {$i sin256.pas} cube_clip3.obx cube_clip3.pas 1 Quote Link to comment Share on other sites More sharing options...
Gury Posted May 24, 2021 Share Posted May 24, 2021 Zbyti, very active on new updates for Mad Pascal... ? ? 1 Quote Link to comment Share on other sites More sharing options...
zbyti Posted May 24, 2021 Share Posted May 24, 2021 @bocianu is active too https://github.com/tebe6502/Mad-Pascal/commit/6f88c79e697b1c46a90d0c58c8c99e8b9241f72c 1 Quote Link to comment Share on other sites More sharing options...
Gury Posted May 24, 2021 Share Posted May 24, 2021 Eh, my bad! I didn't want to offend anyone, I know there are others supporting Tebe. I just noticed the activity at specific time and replied ;) Keep up the great work all! 2 Quote Link to comment Share on other sites More sharing options...
zbyti Posted June 2, 2021 Share Posted June 2, 2021 (edited) I think I try @ilmenit way but instead C I plan to use... guess what... yep Pascal https://www.freepascal-meets-sdl.net/sdl-tutorials/ https://lazyfoo.net/tutorials/SDL/ https://github.com/PascalGameDevelopment/SDL2-for-Pascal but before that I must study this: https://castle-engine.io/modern_pascal_introduction.html Edited June 2, 2021 by zbyti github repo 1 Quote Link to comment Share on other sites More sharing options...
Gury Posted June 2, 2021 Share Posted June 2, 2021 Very nice implementation for Free Pascal and Delphi. Most non-Pascal developers think Pascal language is obsolete, but it is far from the truth. It is modular, elegant language, with clear syntax. And best of all, it is fast and optimized when right options are used. Free Pascal and Delphi can be used for low-level programming as C language. It is really useful to read the tutorial listed as last link. Great material for new and experienced developers. The reflexion of usefulness of Pascal language is seen also on Atari 8-bit platform. It is the best high-level language for the platform, fast and optimized, which can also be used as low-level language. 1 Quote Link to comment Share on other sites More sharing options...
tebe Posted June 20, 2021 Author Share Posted June 20, 2021 new UNIT - SMP (Sample player) https://github.com/tebe6502/Mad-Pascal/tree/master/samples/a8/sound/smp 2 2 Quote Link to comment Share on other sites More sharing options...
Gury Posted June 21, 2021 Share Posted June 21, 2021 Amazing! I shot enemies nearby our solar system. Quote Link to comment Share on other sites More sharing options...
zbyti Posted June 21, 2021 Share Posted June 21, 2021 Meh... https://github.com/tebe6502/Mad-Pascal/tree/master/test this is more exiting Quote Link to comment Share on other sites More sharing options...
zbyti Posted June 22, 2021 Share Posted June 22, 2021 (edited) New game in Mad Pascal http://www.atari.org.pl/forum/viewtopic.php?id=17694 and Edited June 23, 2021 by zbyti 2 1 Quote Link to comment Share on other sites More sharing options...
Gury Posted June 22, 2021 Share Posted June 22, 2021 Looking great! Is there any link to download the game or demo? 1 Quote Link to comment Share on other sites More sharing options...
zbyti Posted June 22, 2021 Share Posted June 22, 2021 @Gury nope... Soon will be digital version for free. Quote Link to comment Share on other sites More sharing options...
Gury Posted June 25, 2021 Share Posted June 25, 2021 Variables using Type declaration I found a strange behaviour when using type variable (array of type). Let's explain... I increment a type variable element by some value: monster[0].x := monster[0].x + 2; This code runs ok. But using a procedure, which consists of incrementing such variable, doesn't work correctly. The example works when commenting (remarking) the call to MoveMonster at the end of listing example. This is modified example from Mad Pascal repository: uses crt; type monsters = packed record x: byte ; a: cardinal; y: byte; end; var monster: array [0..3] of ^monsters; i: byte; procedure MoveMonster(p : byte); begin monster[p].x := monster[p].x + 2; end; begin for i:=0 to High(monster) do begin GetMem(monster[i], sizeof(monsters)); monster[i].x := i; monster[i].a := $ffffffff; monster[i].y := i * 2; end; for i:=0 to High(monster) do writeln(monster[i].x,',', monster[i].y); // Let's move first monster writeln(''); writeln('Let''s move first monster'); // monster[0].x := 2; monster[0].x := monster[0].x + 2; writeln(monster[0].x,',', monster[0].y); MoveMonster(0); writeln(monster[0].x,',', monster[0].y); repeat until keypressed; end. Any thoughts? Thank you. Regards. Quote Link to comment Share on other sites More sharing options...
zbyti Posted June 25, 2021 Share Posted June 25, 2021 (edited) Yes, it's known bug. Use: uses crt; type monsters = packed record x: byte ; a: cardinal; y: byte; end; var monster: array [0..3] of ^monsters; i: byte; m : ^monsters; procedure MoveMonster(p : byte); begin m := monster[p]; Inc(m.x, 2); end; begin for i:=0 to High(monster) do begin GetMem(monster[i], sizeof(monsters)); monster[i].x := i; monster[i].a := $ffffffff; monster[i].y := i * 2; end; for i:=0 to High(monster) do writeln(monster[i].x,',', monster[i].y); // Let's move first monster writeln(''); writeln('Let''s move first monster'); m := monster[0]; //monster[0].x := 2; Inc(m.x, 2); writeln(monster[0].x,',', monster[0].y); MoveMonster(1); writeln(monster[1].x,',', monster[1].y); repeat until keypressed; end. Edited June 25, 2021 by zbyti 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.