:Hey man! Welcome to the wiki! You've been greatly missed mate... please do drop by the forum! [[User:Gryzor|Gryzor]] 07:32, 25 July 2010 (UTC)
== These Days ==
== Not Always Smooth Sailer ==I feel I want to contribute to the scene with the aid of writing Turbo Pascal programs and applying Machine Code routines to those programs to generate something inbetween the quality of an Assembly program and BASIC program!
In the past Several Scene members and flamers were subjected addition to criticism as a result from me being over my head or naturally taking things personally. When Turbo Pascal I look back 'm looking at those things another Amstrad Pascal Compiler. Hisoft Pascal 4T which is slightly older than Turbo Pascal again, though compiles programs under AMSDOS. Unfortunately while I feel like CP/M 2.2 and Turbo Pascal 3 and it was more of a learning curve's abilities, making mistakes by responding with some kind of anger with it's drawback is it only compiles CP/M "com" files. Not that there's anything wrong with that, it just seems CP/M community don't appreciate this, I can only ever feel sorry about what've had some other issues in the way CP/Mhandles itself on a 64k system which makes it annoying to use if it's happeneda 1 Disc setup.:(
These days == Some of my Routines == Block Editor.DSK http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=14360 * An early version of my working Block Editor which allows Multicoloured Block Images to be produced from Mode 0. I feel I want to contribute 've revise this program to include Loading & Saving (data from 20x25 array), improve the controls, still requires an User Defined Palette, as well as Default CPC Palette. Alien Landscape in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=13851 * Another BASIC 1.1 Demo from ACU which made use of FILL. To make this program work a whole library (RSXes) was used for Drawing & an alternative FILL routine was incorporated into that. Once the landscape has been drawn, pressing the Space Bar will produce a shooting meteor across the scene sky along with Sound Effects that are found in HP4T. Program will now work for all Amstrad users. :) Serpent in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=13545 * Also a Type-in from an earlier AA, also BASIC 1.1, but had to modify this program in Pascal and include more Arrays in order for the aid effect to work, the culprit in this case was a slight variation in Result of writing Turbo a Decimal Number between BASIC & Pascal programs which resulted in some of the lines not being deleted when required. Graphics in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=13528 * Produces an interesting Graphical effect, program was originally in AA65 Type-ins and applying Machine Code routines was BASIC 1.1, though with simple incorporation of a Graphics Pen Procedure in HP4T, it's easily adaptable. MOVBUB2.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=13309 * This BASIC version includes a M/C Loader to those programs convert Pen Colours into Encoded INK for Fill Box to use as well as a routine to SCR HW ROLL, producing a faster version of Big Bub from BASIC (instead of relying on PRINT/LOCATE/PEN to slow things down further). Move Big bub using Fill Box routine.asm http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=13230 * Moving Big Bub up the Screen, uses SCR FILL BOX and SCR HW ROLL to make it look like Big Bub is coming up to Greet you. This would of looked so cool in 1984 on a Loading Screen or Game Intro. MOVBUB.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=13229 * BASIC version of Moving BUB up the screen. 8x8 mode 0 Sprite Generator.ZIP http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=12532 * Crude way of editing DATA statements to draw graphic to screen and then using something like ESD to grab it and make a Sprite from it. Program uses PEN numbers and PLOT is used to draw the graphic. 2D Rotating Square in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=11117 * Using a BASIC program to generate a Square in various positions, I've taken that information and can produce the effect of a square which appears to rotate. I thought this might of produced an interesting result for my bouncing ball, though haven't got back to it. :( Plotting 2D Star Field in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=9569 * This produces a series of Stars (Pixels) that move down the screen, once they reach the bottom new ones appear at the top of screen in a different position. These pixels are represented in an array and program moves them accordingly without any physical movement happening to the screen. LDI SCROLL 8 http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=9477 * Routine to Push the Row down using LDI. Star Scroll in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=9329 * A transformation from the original 10 Liner to Pascal using User Defined Graphics (UDG) for Space Ship & Random Number Function to simulate the Random Star Field. While the effect is similar to the original 10-Liner, the coding is anything but. :) BOUNCY2.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=9264 * Draws a Text Ball which Bounces inside a Window which is made up of a Pattern, so in order for the Ball to Appear in front of the pattern, Transparent Mode is used to draw the ball on top of the Background and then the Background is restored when the Ball moves on. 3D Star Field in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=9262 * The only 3D Star Field I've come across which physically moves the stars towards you using BASIC, so the effect is slow, but when it's compiled and executed, the effect is more convincing. Usually whenever I've seen something inbetween done like this in BASIC it involves rotating the ink palette to create the quality illusion of movement. More dodgy Random Number Generator in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=9220 * This one also produced skewed results, though from Discussions was able to fix this using a Real data type for result and alter line 100 to read "result:=(range/maxint);" and line 110 to read "result:=(seed*result);", to produce a more accurate range of random numbers in HP4T. Random 8bit Numbers in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=9048 * This uses a simple Assembly 8bit Random Generator found in the programming area on CPCWiki, though have adapted it to function in HP4T. Circle in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=8861 * Simply a rewrite of the Locomotive BASIC Circle from the Amstrad Manual, though this program shows how to calculate the circle in DEGrees which is a little bit trickier to do in Pascal. Random Number Experiment in Hisoft Pascal 4T http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=6394 * Not a very convincing Random Number Generator that I knocked up in HP4T Rotating Box using DRAWR http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5693 http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5694 * Both these examples are using DRAWR to Rotate the box, only difference between them is their positions. Spiral.ZIP http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5689 * Modified Twister Type-in from AA58 to use LDIR Scroll which produces an interesting Smooth effect. SPIRAL1.BAS retains one colour while SPIRAL2.BAS randomly alters colours. Rotate Box.zip http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5504 * Example using BASIC & Assembly to produce a rotating Box using GRA LINE ABSOLUTE. BOXDATA.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5470 * Modified program from HAL6128 to display the positions of the Box of the Left of screen and the new positions on the Right Hand Side. BOXMOV.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5445 * An early attempt of Rotating a Box EVERY.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5386 * Demonstration of the EVERY command BASGRA.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5232 * Command Driven Graphics Program which enables you to plot or draw lines onto the screen. Commands are "p" - for plot & "d" for draw, followed by the co-ordinates for where to draw (or plot) onscreen. The plot acts as a move as well in this case, so various shapes can be created. This program won't save or store the graphical positions, so it would be good to write them down. :) SCR_FLOOD_BOX http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5228 * I've modified my existing SCR_PIXELS routine to use SCR_FLOOD_BOX instead which can be used to animate a sprite on screen. This Routine works well and is less complicated than SCR_PIXELS requiring less information. Hisoft Pascal 4T Boucy2 http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=5133 * With the previous routine of a Bouncing Ball, I've enhanced it by incorporating the Plot Image assembly routine into my Pascal program as an RSX which shows the program to be running faster than the previous one. Plot Image routine as been modified to work anywhere on screen. Hisoft Pascal 4T Bouncy http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=5112 * Using an existing Turbo Pascal I'd made years ago which is on my Pascal website which simulates a Bouncing Ball inside a Square, I've modified the program to work in Hisoft Pascal, which is using the original routine I had from the original program to Draw the Ball and move it. Hisoft Pascal Programs http://www.cpcwiki.eu/forum/programming/hisoft-pascal-4t/?action=dlattach;attach=5111 * A couple of examples which use TIN & TOUT Hisoft Pascal 4T routines, which let you write numbers into an Array which is then saved, and a routine to load and display those values again. SCR_PIXEL Demonstration http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5049 * The Demonstration program using SCR_PIXEL to show how it could be used to animate an Sprite onscreen. SCR_PIXEL Source http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5048 * This is the Source Code for SCR_PIXEL, another firmware instruction which allows you to plot a point to screen using pixel masks, however this routine also requires a PEN mask which kind of complicates things. BASSPR.BAS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5043 * This is a little BASIC Sprite Routine, I just wrote it to see how Mask values work in conjunction with Screen Memory. Starscrl CPM http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5013 * Same as below, but works in CP/M 2.2 and main programhas been compiled in Turbo Pascal 3. Starscrl AMSDOS http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5002 * This is an redefined version of Starscrl from my Website which uses LDIR scroll & Plot Image routine to simulate the original 10-Liner Demo. Done in BASIC. All the BASIC stupid mistakes I've made solved.zip http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=2972 Update 30/9 http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=5231 * A collection of Misc problems from Silly Programming Ideas thread. Final Big Bub Using Fill Box Routine using SCR_FILL_BOX http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=2529 * Though this is the most refined version of these routines. Big Bub Using SCR FILL BOX Routine 2 http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=2520 * This version of the last routine has been commented. Big Bub using SCR FILL BOX http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=2515 * Uses SCR FILL BOX to draw a large image of BUB to screen fairly quickly in 8x8 size pixels. Win7.BAS http://www.cpcwiki.eu/forum/off-topic/linux/?action=dlattach;attach=1909 * A prank. Plot Image 2.asm http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=1827 * Plots an 8x8 Image on screen, though unlike the original Plot Image, it's ignoring any Zero's which are in the image which will result in anything which would normally go behind a zero would be kept in these circumstances. Plot Image 3.asm http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=1828 * This is like Plot Image 4.asm except it's using INC to increment when processing the image through GRA PLOT ABSOLUTE. Any parts of the image which uses zero is also skipped. Plot Image 4.asm http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=1829 * This routine draws a larger image (15x23) onto the screen, like Plot Image 3.asm it's skipping the need to process any of the 0s found in the image, so anything which would normally go behind that would remain, kind of works. Is very similar to Plot Image 3 except it's using ADD instruction for incrementing rather than ordinary INC which PI3 uses. sormaker.bas http://www.cpcwiki.eu/forum/programming/winape-assembler/?action=dlattach;attach=1792 * Example of converting some data into some assembly bytes I think. :) ldirscrl.zip http://www.cpcwiki.eu/forum/programming/silly-programming-ideas-turning-text-into-graphics/?action=dlattach;attach=1613 * My early example of physically scrolling the screen down a byte using LDIR assembly instruction. Plot Image.asm http://www.cpcwiki.eu/forum/programming/understanding-scr-horizontal-scr-vertical/?action=dlattach;attach=1596 * This routine will Plot an Sprite using GRA PLOT ABSOLUTE creating an 8x8 Image. This routine and the following Plot Image routines work in an area of Bytes due to the way I'm subtracting my value of XPOS using A, however simple modifications can be done to make it work for the entire screen. scrhoriz done.asm http://www.cpcwiki.eu/forum/programming/understanding-scr-horizontal-scr-vertical/?action=dlattach;attach=1587 * This is one of many ways I used the Firmware using SCR_HORIZONTAL to make a Sprite and XOR Sprites can be done in conjunction with SCR ACCESS. It's kind of limited when it comes to moving something across the screen has to be done in jumps, moving something down the screen works though.This is due to the nature of SCR HORIZONTAL using Encoded PEN instead of Encoded Byte Masks. Mandelbrot.dsk http://www.cpcwiki.eu/forum/webcpc-presentations/5k-demo-3/?action=dlattach;attach=900 * This Graphical Mandelbrot Program was originally knocked up in Turbo Pascal 6 or 5.5, I converted it to run in Turbo Pascal 3 on in DOS & CP/M-86 1.1 on an IBM compatable and this is what I knocked up for it to work on a CPC in CP/M 2.2, so it uses CPC Specific instructions to plot the mandelbrot and not GSX! --[[User:CPM User|CPM User]] ([[User talk:CPM User|talk]]) 14:32, 16 April 2015 (EEST)