I took pascal in high school. Our class used Turbo Pascal on XT class PC's and we saved all our work on 5 1/4" floppies. I found a couple boxes of my old floppy disks recently and I decided to build a mid 90's era PC to see if I could discover what was on them. When it came time to check out the disks, I was pleasantly surprised to find some of my old pascal assignments! I loaded up Turbo Pascal for the first time in decades and there it was. I compiled and ran the assignment and the program prompted "Enter 2 numbers.". I typed two numbers, 4 & 6 and pressed enter. The program simply stated "The sum is 10". It was then that I suddenly remembered my computer teacher encouraging me to make my program a little more user friendly. It's amazing what one can find on an old floppy disk. Fond memories!
Oh those were the days! I ran Pascal on the Acorn Electron in the mid-80s, loaded from an audio cassette, but I also used it on a friend's C64. And despite my endless teenage complaints, it's a language family that's served me surprisingly well over the years.
I took a Pascal class in college back in ‘94 and I don’t remember the slightest thing about it. Same for COBOL and FORTRAN after it. Fun to do but a waste of money. At least I still have the textbooks so I could relearn them if I wanted, and had the language systems to work with.
Welcome back and thx for the video. I never used Pascal on c64. Was 11 in '84 when I got C64 and BASIC was all I could go into. Later in secondary school we used FORTRAN and Pascal on 286 and 386. I liked Pascal a lot at that time and later used to program in Borland Delphi. Sadly other languages took over...
Great trip back memory lane! Used to start 'serious' programming with a C64, a 1541 floppy drive whose disks had to be swapped constantly, and Super Pascal in 1986. Loved the language. Incredible how far we've come in just a couple of years. Thanks for doing this!
I've always liked Pascal since college, and how cool there was a version for an 8-bit system like the C64 - and you're covering it in a very detailed way, great work! Excellently presented and well written code to, with modern touches like indentation of code and spacing.
Nicely done. I vividly recall buying Abacus Music and Graphics apps on cassette when I lived in Berkeley in the mid 80s but was not aware of this title. Yes (at my age), I was an AP CS student and we learned Pascal on CBM PETs. What a towering achievement (that they put this much work in); thanks for featuring it!
Reminds me of why I never got into P-code in the first place (45 years ago): Restrictive and arcane af. Call me Assy Magee. Good video though. Well done.
This was my first Pascal compiler, and a vital step in my programming journey. Basic was slow and clunky (no modularity) and 6502 assembly was daunting. Pascal was a wonderful compromise.
Interesting and a very nice demonstration 👍 I didn't even know there was a Pascal compiler for the C64. I wonder if anyone used this for commercial software for the C64. They should've added REU support to allow for larger programs and avoiding all the disk access.
In high school, the first programming class was BASIC and the advanced programming was Pascal. Later in college when studying for my degree in CS, the language of the day was C++. The compiler we had to write for the compiler construction class was Pascal. It was more difficult (only slightly) to write a Pascal compiler than a C compiler due to the variable scoping of nested functions and that function arguments could be pass-by-value (as in C) or pass-by-reference (as in FORTRAN). One question about that Pascal compiler you’re using. Is it generating P-code which has to be emulated in a VM and not machine code?
Have you tried the port of the BBC BASIC interpreter / compiler for the C64, as that allows Assembler procedures to be embedded / included in BASIC listings, and has a user selectable 1, 2 or 3 pass compiler.
Just another nice Pascal for the C64 ruined by the abysmally slow disk drive. As far I know, the only C64 Pascal that wasn't ruined was G-Pascal, which had the editor and compiler always loaded in memory - so no need to use the drive all the time. But this convenience came at a price: G-Pascal was actually a subset of Pascal and only supported integer arithmetic (no real numbers). Anyway, I wonder what that other Pascal system you mentioned will be (in part 2). Let me guess, Kyan Pascal, maybe?
It's much faster than BASIC, and because of the included assembler you could definitely write games in it. I know the first 3 Wizardry games on the Apple i][ and C64 were written in Pascal (Not this Pascal compiler though).
Great video, super interesting! I would be curious how much of a difference not truncating the screencode on every address loop iteration but only once per screencode loop iteration would make in the pure Pascal variant, as it happens with the asm variant.
ua-cam.com/video/zCu8jSiPz_s/v-deo.html What a great question. I had to find out the answer. So I put together this really quick video to demonstrate the effect of removing the low function from the inner for loop.
Very cool. Have you tried out TRSE (Turbo rascal syntax error). A full system for writing code in a Pascal inspired language for many of the older systems. Also generates a .asm file to see the assembly source it generates.
I did my Pascal homework on my C-128 running a CP/M version of Turbo Pascal and converting the disk format with Big Blue Reader for use on the PCs at school. I had the 128 versions of Super Pascal and Kyan Pascal, but I found that I liked Oxford Pascal 128 the best. Did anyone do benchmark comparisons among the different C= versions of Pascal?
It's likely based on some other Pascal system such as UCSD Pascal or something similar. UCSD was its own little universe, which was good for portability but not so good for compatibilty with other systems.
30:48 any reason why you must have used integer instead of byte for your pascal fill function? What's the point to mark the argument as integer but then use low() on it ? 😂
Check out the comments below :) I made a quick video in the comments showing the speed boost from fixing that issue. Thanks for the feedback, much appreciated!
Super cool video. I was always interesting in high level language compilers for these home computers, but never managed to use one. Only used BASIC, assembly, then switched to real stuff on PC, with C, Pascal, etc. This is pretty usable, but the editor is pretty meh. I was hoping for some decent full screen editor.
I took pascal in high school. Our class used Turbo Pascal on XT class PC's and we saved all our work on 5 1/4" floppies. I found a couple boxes of my old floppy disks recently and I decided to build a mid 90's era PC to see if I could discover what was on them. When it came time to check out the disks, I was pleasantly surprised to find some of my old pascal assignments! I loaded up Turbo Pascal for the first time in decades and there it was. I compiled and ran the assignment and the program prompted "Enter 2 numbers.". I typed two numbers, 4 & 6 and pressed enter. The program simply stated "The sum is 10". It was then that I suddenly remembered my computer teacher encouraging me to make my program a little more user friendly. It's amazing what one can find on an old floppy disk. Fond memories!
Oh those were the days! I ran Pascal on the Acorn Electron in the mid-80s, loaded from an audio cassette, but I also used it on a friend's C64. And despite my endless teenage complaints, it's a language family that's served me surprisingly well over the years.
Love this! You described my 1986 life perfectly as I was taking Pascal in college and did homework on my C64. Fun days.
You are an excellent presenter and explain clearly what you are doing and why. Thank you for sharing.
I took a Pascal class in college back in ‘94 and I don’t remember the slightest thing about it. Same for COBOL and FORTRAN after it. Fun to do but a waste of money. At least I still have the textbooks so I could relearn them if I wanted, and had the language systems to work with.
Pascal was my first programming language in college. Had a chance to learn record, pointer, New(), Dispose(), etc. It's great programming language.
This was very interesting, and wonderfully detailed.
Welcome back and thx for the video. I never used Pascal on c64. Was 11 in '84 when I got C64 and BASIC was all I could go into. Later in secondary school we used FORTRAN and Pascal on 286 and 386. I liked Pascal a lot at that time and later used to program in Borland Delphi. Sadly other languages took over...
Delphi is still around. Version 12 released recently. There is also Lazarus as an open source alternative.
Excellent presentation of a very interesting product. Well done!
I recently wrote a XONIX game in Pascal for Atari 800, perhaps I should try compiling and linking it for C64 😄
Great trip back memory lane! Used to start 'serious' programming with a C64, a 1541 floppy drive whose disks had to be swapped constantly, and Super Pascal in 1986. Loved the language. Incredible how far we've come in just a couple of years. Thanks for doing this!
I've always liked Pascal since college, and how cool there was a version for an 8-bit system like the C64 - and you're covering it in a very detailed way, great work! Excellently presented and well written code to, with modern touches like indentation of code and spacing.
Nicely done. I vividly recall buying Abacus Music and Graphics apps on cassette when I lived in Berkeley in the mid 80s but was not aware of this title. Yes (at my age), I was an AP CS student and we learned Pascal on CBM PETs. What a towering achievement (that they put this much work in); thanks for featuring it!
Reminds me of why I never got into P-code in the first place (45 years ago):
Restrictive and arcane af.
Call me Assy Magee.
Good video though. Well done.
Also be interesting to see a comparison in speed against a version of Forth for the 64 like you used in a previous video. Thanks for the content.
I love Pascal
This was my first Pascal compiler, and a vital step in my programming journey. Basic was slow and clunky (no modularity) and 6502 assembly was daunting. Pascal was a wonderful compromise.
Interesting and a very nice demonstration 👍 I didn't even know there was a Pascal compiler for the C64. I wonder if anyone used this for commercial software for the C64. They should've added REU support to allow for larger programs and avoiding all the disk access.
You’re back!!!!!! Yes!!!!!!!
In high school, the first programming class was BASIC and the advanced programming was Pascal.
Later in college when studying for my degree in CS, the language of the day was C++. The compiler we had to write for the compiler construction class was Pascal. It was more difficult (only slightly) to write a Pascal compiler than a C compiler due to the variable scoping of nested functions and that function arguments could be pass-by-value (as in C) or pass-by-reference (as in FORTRAN).
One question about that Pascal compiler you’re using. Is it generating P-code which has to be emulated in a VM and not machine code?
Like many Pascal systems of the day, this one does generate pcode. It’s the reason fillasm is so much faster than fillscr.
Can we pause and take a moment to contemplate the wonders of the cover design on the Pascal User Manual and Report.
Have you tried the port of the BBC BASIC interpreter / compiler for the C64, as that allows Assembler procedures to be embedded / included in BASIC listings, and has a user selectable 1, 2 or 3 pass compiler.
Not familiar with this package. It looks pretty interesting, maybe I'll check that out in the future.
mdfs.net/Software/BBCBasic/C64/
Last reply deleted, as contained a link. The 3D 10 PRINT videos offer a very BASIC overview.
Great video but line numbers and pascal don't work together.
Just another nice Pascal for the C64 ruined by the abysmally slow disk drive. As far I know, the only C64 Pascal that wasn't ruined was G-Pascal, which had the editor and compiler always loaded in memory - so no need to use the drive all the time. But this convenience came at a price: G-Pascal was actually a subset of Pascal and only supported integer arithmetic (no real numbers).
Anyway, I wonder what that other Pascal system you mentioned will be (in part 2). Let me guess, Kyan Pascal, maybe?
Is it faster than BASIC? How good is it for making games?
It's much faster than BASIC, and because of the included assembler you could definitely write games in it. I know the first 3 Wizardry games on the Apple i][ and C64 were written in Pascal (Not this Pascal compiler though).
Great video, super interesting! I would be curious how much of a difference not truncating the screencode on every address loop iteration but only once per screencode loop iteration would make in the pure Pascal variant, as it happens with the asm variant.
ua-cam.com/video/zCu8jSiPz_s/v-deo.html
What a great question. I had to find out the answer. So I put together this really quick video to demonstrate the effect of removing the low function from the inner for loop.
Couldn't you declare screencode as a byte in the first place and avoid any conversions?
@@gcewing For Loops in this version of Pascal can only iterator over integers.
Very cool. Have you tried out TRSE (Turbo rascal syntax error). A full system for writing code in a Pascal inspired language for many of the older systems. Also generates a .asm file to see the assembly source it generates.
I did my Pascal homework on my C-128 running a CP/M version of Turbo Pascal and converting the disk format with Big Blue Reader for use on the PCs at school.
I had the 128 versions of Super Pascal and Kyan Pascal, but I found that I liked Oxford Pascal 128 the best.
Did anyone do benchmark comparisons among the different C= versions of Pascal?
Why on earth does it have its own custom disk format?
It's likely based on some other Pascal system such as UCSD Pascal or something similar. UCSD was its own little universe, which was good for portability but not so good for compatibilty with other systems.
30:48 any reason why you must have used integer instead of byte for your pascal fill function?
What's the point to mark the argument as integer but then use low() on it ? 😂
Check out the comments below :) I made a quick video in the comments showing the speed boost from fixing that issue. Thanks for the feedback, much appreciated!
👍👍👍👍👍👍
Super cool video. I was always interesting in high level language compilers for these home computers, but never managed to use one. Only used BASIC, assembly, then switched to real stuff on PC, with C, Pascal, etc.
This is pretty usable, but the editor is pretty meh. I was hoping for some decent full screen editor.