News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

Making PCW programs in TRSE

Started by zzarko, 21:48, 28 January 23

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

zzarko

About a year ago I made Z80 ASM graphics libraries for MESCC (https://github.com/MiguelVis/mescc) for an obsolete CP/M machine used in Yugoslav schools in the 80s, TIM-011. About a month ago, I started porting that code to TRSE. TRSE is a modern IDE for making programs, demos and games for retro computers (https://lemonspawn.com/turbo-rascal-syntax-error-expected-but-begin/), used for many demos and games (some of them are presented in showcases section).

With Miguel García's (MESCC creator) blessing, I have ported some of his CP/M routines to TRSE, to be able to do basic CP/M input/output (MESCC and TRSE are both GPL). I have made several TIM graphics modules, and one with pure Z80 CP/M-based I/O (with most of the code based on Miguel's work).

Since TIM-011 is in many aspects similar to Amstrad PCW, I have tried to use TRSE to generate a small program using just CP/M calls and have tried to run that code in Joyce emulator, and it works! :)

I have still a lot of work to finish implementation for TIM, and I do not much about PCW hardware to be able to make the routines myself. I know that Miguel made some for MESCC, but I haven't got the time to look at these.

I do not know if something like this is interesting to people here... If yes, maybe someone would be interested to make graphics and sound libraries for PCW, and then TRSE could be used to make games, demos and programs for this machine too.
464,664,6128,6128+,NC150,NC200,Joyce512,PPC512, PenPad, www.oncuponabyte.org

GeoffB17

Hello,

Not sure what you mean regarding the TIM-011 being 'similar' to the PCW, similar in what regard?

Regarding sound, the PCW has no sound - it has a simple beeper, and you might use software to create 'notes' using that beeper, but it would be a limited effect, and restricted to one note at a time.

As for graphics, the PCW has a bit mapped screen and quite a bit has been done regarding graphics, for example there are a couple of extensions to BASIC that allow lines, shapes, fill etc, and 'drawn' large characters.  Of course, many games have done a lot of graphics code (from scratch) and achieved remarkable things, but what could be done as a general library might be a different matter.

Your code for CP/M working on the PCW is a different matter, the PCW is a perfectly standard CP/M+ computer, and Joyce is a perfectly standard CP/M computer emulator, so if you stick to CP/M things then this should work OK.

Regarding the BASIC things, I've got info etc regarding WALBASIC (French) and I think ExBASIC, but both stay at a fairly low level using PLOT, LINE and similar.

I'll see what info I can find regarding the TIM machine?

Geoff

FloppySoftware

It's nice to see that some of my work is useful!

8)
floppysoftware.es < NEW URL!!!
cpm-connections.blogspot.com.es

zzarko

#3
Quote from: GeoffB17 on 22:56, 28 January 23Hello,

Not sure what you mean regarding the TIM-011 being 'similar' to the PCW, similar in what regard?

Regarding sound, the PCW has no sound - it has a simple beeper, and you might use software to create 'notes' using that beeper, but it would be a limited effect, and restricted to one note at a time.

As for graphics, the PCW has a bit mapped screen and quite a bit has been done regarding graphics, for example there are a couple of extensions to BASIC that allow lines, shapes, fill etc, and 'drawn' large characters.  Of course, many games have done a lot of graphics code (from scratch) and achieved remarkable things, but what could be done as a general library might be a different matter.

Your code for CP/M working on the PCW is a different matter, the PCW is a perfectly standard CP/M+ computer, and Joyce is a perfectly standard CP/M computer emulator, so if you stick to CP/M things then this should work OK.

Regarding the BASIC things, I've got info etc regarding WALBASIC (French) and I think ExBASIC, but both stay at a fairly low level using PLOT, LINE and similar.

I'll see what info I can find regarding the TIM machine?

Geoff
1. Similar in a sense that it is a Z80-based CP/M machine with 256k of RAM, bit-mapped graphics and a beeper.
2. I would disagree on not having a sound, beeper is a sound (ZX Spectrum has the same) and many games uses it.
3. TRSE is not a BASIC or a BASIC extension, it is a compiled Pascal-based language made primarily for games and demos
What can be done with a general library can be seen in these small demos for TIM-011 (mind you, those are primarily simple ones, made just to test the library):

https://www.youtube.com/watch?v=Y-H5_wRrpec
A friend of mine converted Miguel's CP/M 2048 game to these libraries:

https://youtu.be/uJobXy-6xGs
And here are some graphics effects made by a demo coder, to show the speed:

https://www.youtube.com/watch?v=DyYnfVSkmTI
4. Sticking to regular CP/M is OK, but for graphically more intensive games and demos you need something that can access PCW specific hardware and that is optimized for it, that is what I have been doing with libraries for TIM

If there is no interest in making new games or demos for PCW with TRSE, then there is no need for the libraries for it. I have just showed that a fairly modern IDE can be used for new PCW stuff. It is on others to decide if they want it or not.

And many thanks to you Miguel, without your work, the CP/M basic stuff would take much longer time to achieve. You are a great guy!
464,664,6128,6128+,NC150,NC200,Joyce512,PPC512, PenPad, www.oncuponabyte.org

Powered by SMFPacks Menu Editor Mod