(classic) Updated target: Computers Lynx

Discussion about other targets
Post Reply
User avatar
dom
Well known member
Posts: 2091
Joined: Sun Jul 15, 2007 10:01 pm

(classic) Updated target: Computers Lynx

Post by dom »

It's been bit painful, but the Lynx target has received a bit of attention lately, new features:

- Generic console (so custom 8x8 fonts and UDGs are available)
- Inkey keyboard driver (so multiple keypresses are supported)
- Lores (64x64) graphics are now available

The lores graphics use the generic console so can be plotted in colour (2 colours per 8x8 pixel square).

Because of the way the VRAM is arranged and accessed, it's fairly sluggish and hires graphics aren't available.
User avatar
RobertK
Well known member
Posts: 347
Joined: Mon Feb 26, 2018 12:58 pm

Post by RobertK »

Dom has fixed a few bugs with this target in the past few days, and now it should be very usable.

I have made a new release of my game H-Tron, it now supports the Camputers Lynx (other additions are the Osborne 1 and the Tatung Einstein).
frankras
New member
Posts: 3
Joined: Thu Mar 14, 2019 6:04 pm

Post by frankras »

Hi

Just found Your forum and the Z88DK thing , very nice tool - now I just need to learn how to use it properly. I browsed a bit around the directories in the software tree and found the Camputers LYNX, great - I love that , but are You aware of that there are 2 different LYNX models which are different in the HW and in the ports that are used for bank switching and video out. , the 48K and 96K models use same "motherboard" , only diff is the mem size and more commands in ROM, they use same ports for everything, then there is the 128K, 192K and 256K , they use a different "motherboard than the smaller ones, but the 3 big ones use same board only size of mem is different. , so maybe the LYNX libs in Z88DK should be devided into 2 , one for 48K, 96K and one for 128K and up.

I can provide more information about all models , sysvars , I/O ports, mem and video port bank switch - or what ever You want


Best regards
Frank
User avatar
dom
Well known member
Posts: 2091
Joined: Sun Jul 15, 2007 10:01 pm

Post by dom »

Ah. I didn't realise at the time that the 128/192/256 machines were so different - I think I read the Register article after I'd improved things a bit.

I found the 48k machine very awkward to deal with - the memory banking was particularly unusual and relying on a few ROM routines left me a bit uneasy and the end result was pretty sluggish.

It seems the later models are bit faster which I'm guessing should help the screen handling a little bit, they also support CP/M which makes a CP/M extension library quite appealing - typically the extension libraries provide consoe/graphics/sound support.

In terms of ports etc, it looks like most of that information can be extracted from mame, which leaves the main question how to interact with the screen memory - i.e.what routines are in ROM and how can we can access them.
frankras
New member
Posts: 3
Joined: Thu Mar 14, 2019 6:04 pm

Post by frankras »

I have all that documentation about port addresses and which values need to be set in order to read write to the different banks of memory , how can I send the information to You - email ??

I guess that I could make a new entry on my web site - it needs update anyway.

I will do that anyway :-) , if You want me to mail info to You as well, then just throw me an email addr.


128 machines are just as strange as the 48/96 machines , true that 128 supports CP/M (2.2) , but 96K should be able as well - Im about to write a new bios for the 96K , so it will be able torun CP/M as well.

speedwise , the small ones run 4Mhz and the bigger is running 6Mhz , so yes - they are faster, but screen handling is exactly the same, just some other mem locations and more mem.


I will send You a msg when i have uploaded info to my web - www.elborg.dk


best regards
Frank
User avatar
dom
Well known member
Posts: 2091
Joined: Sun Jul 15, 2007 10:01 pm

Post by dom »

That will be great. If you publish the source of your bios that would be useful for the 96k machines - I'm sure I've not written my code in the most efficient way!

I've just added Lynx disc creation into the +cpm target so it's now possible to compile for CP/M and run on a Lynx (certainly emulators) easily.
frankras
New member
Posts: 3
Joined: Thu Mar 14, 2019 6:04 pm

Post by frankras »

Hi dom

just looked at your lynx CP/M disk entry - sorry to say , but it will not work :-( , Lynx diskcontroller expects some special bytes in the beginning of the disk in order to identify it as a LYNX disk , it goes for both LYNX DOS disks and also for LYNX CP/M disks.

I will make that webpage update tomorrow , and there You will also be able to see these kind of information.


the first part of the disk contains first some unreadable chars , then the text "Lynx disks, Copyright Intelligent Software" , then later there is a byte telling if it is a LYNX DOS disk or a LYNX CP/M disk , and another byte telling the capacity of the disk , 200KB or 800KB

it makes working with LYNX disks a bit more complicated


/Frank
User avatar
dom
Well known member
Posts: 2091
Joined: Sun Jul 15, 2007 10:01 pm

Post by dom »

Hi Frank,

Given my past experience with the Lynx it did seem far too easy! It's simple to set some initial bytes, so I'll wait for the docs and do that (as well as setting it to a raw container with a .ldf extension).

I'm currently using Mame for testing so I'm guessing the emulation isn't a 100% in that area since the generated discs did work there.
Post Reply