Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Laser 128 Questions

612 views
Skip to first unread message

Steven Hirsch

unread,
May 23, 2012, 6:09:26 PM5/23/12
to
Has anyone ever disassembled the ROM on one of these? I'm finding that the
firmware for the external disk port (Slot 7) does not recognize or work with
intelligent SmartPort devices (e.g. SPVHD or Unidisk 3.5).

This is the same behavior as the newer VTech (Central Point) disk controller
cards. There, I have had success with retrofitting an older image to get
Unidisk support.

I have a feeling I can overlay this into the Laser system ROM, since they use
the same ASIC chip as drive controller. I'm not sure how they map the single
EPROM to cover the standard system ROM and slot ROM / C800 expansion for the
various slots. Can probably figure this out by lots of disassembly and a bit
of luck, but thought I'd ask if anyone had already done so.

I find it rather odd that the Laser cannot handle intelligent drives, while
the earlier Apple //c can.

Steve

Kevin Dady

unread,
May 23, 2012, 7:44:24 PM5/23/12
to
not that odd, the original rom //c cant handle them either

ict@ccess

unread,
May 23, 2012, 8:07:43 PM5/23/12
to
Yes, I had disassembled quite a bit of the slot roms. A lot of the
motherboard ROM regularly entered the slot 3 ROM for 80 column work,
since not all of the code could fit in where the cassette routines
were. The slot 1 and 2 ROMS had a few entry points that dealt with
serial devices. If you were to hold down ctrl-P on startup, you would
enter the serial device control panel. At least that worked on the
128EX and 128 EX/2. Not sure about the original 128.

The monitor disassembly code also entered either the slot 4 or slot 6
ROM (too long ago to remember) to get the mnemonics to display the
actual disassembly. Laser had no compression schemes in its
motherboard ROM, as to not infringe on Apples ROMs. Everything was
spelled out fully.

I had read somewhere when I first purchased my Laser that neither the
5.25 or the 3.5 drives worked on a real apple. So I never tried
plugging them in for fear of frying the motherboard or the drives.
But I assume it was another one of those attempts by Laser to be
different than Apple and the code for the Smartport might have been
too compact or too confusing to try and rewrite it another way as to
not infringe on Apples code

Rob

Wayne Stewart

unread,
May 24, 2012, 2:36:02 AM5/24/12
to
The 5.25 will work on an Apple II.
The Laser 3.5 is basically the same as the Mac floppy drive that
didn't have a daisy chain port so will only work on an Apple II with a
UDC card. I used one with a UDC card on a II+ for a while but later
scored enough Superdrive cards that I could finally spare one for a II
+.

Peltier Cedric

unread,
May 24, 2012, 3:33:03 AM5/24/12
to
Another weird thing: Steven's Laser 128 have the signature for the
smartport entry point...

Steven Hirsch

unread,
May 24, 2012, 7:51:58 AM5/24/12
to
On 05/23/2012 08:07 PM, ict@ccess wrote:

> Yes, I had disassembled quite a bit of the slot roms. A lot of the
> motherboard ROM regularly entered the slot 3 ROM for 80 column work,
> since not all of the code could fit in where the cassette routines
> were. The slot 1 and 2 ROMS had a few entry points that dealt with
> serial devices. If you were to hold down ctrl-P on startup, you would
> enter the serial device control panel. At least that worked on the
> 128EX and 128 EX/2. Not sure about the original 128.

AFAIK, there's a single physical EPROM in the unit (reached through the bottom
access plate that covers the Slot 5 & 7 internal-external switches). Where
are the slot pages and respective C800 images located in the image? I assume
they're doing a bit of decoding to present the expected picture.


Marc S Ressl

unread,
May 24, 2012, 6:09:44 PM5/24/12
to
Peltier Cedric wrote:
> Another weird thing: Steven's Laser 128 have the signature for the
> smartport entry point...
>

Hello there,

btw, next sunday there'll be two new Laser 128 ROM images available here:

http://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Computers/Laser/Laser%20128/ROM%20Images/

The names are most likely wrong, so how can I figure out the version from
the ROM image?

If anybody has some other ROM image of Laser computers, would they be so
kind as to upload them to the documentation project? Thanks a lot.

With the best wishes,

Marc.-

ict@ccess

unread,
May 25, 2012, 1:31:19 AM5/25/12
to
Although the EPROM is 32 kb, and only 16 kb is needed for the
motherboard ROM, I was trying to ascertain if the slot ROMs were also
stored on the EPROM. I have 2 EPROMs with different versions of ROM
and although the ROM differs slightly between the 2 versions, the slot
ROM code remains exactly the same. I thought for sure if the ROM code
differed, then at least some changes should have/would have been made
also to the slot ROM code. So with this analogy, I surmised that the
slot ROM code is not stored on the EPROM but on another on board chip.

Also according to the box, there is supposed to be 64 kb of video
RAM. I did not believe they were referring to the graphics modes,
since 2 dbl hires pages only comes out to 32 kb. Again I believed
that there was some kind of software support for the RGB/LCD monitor
expansion port as well as for the serial connections. Just like AUX
cards that have their own slot ROM on the IIe, I believe that the
built in 80 col card has an expanded ROM that handles all the slot
ROMs. It gets even better. I found jumps to the $C100 and $C200 area
but they were not accessing the code for the slot. Therefore the
$C100-$C7FF area must also have 2 sets of code. One set for the
external slots and one set for extra code that could be switched in
just like the $C800-$CFFF area.

This 2nd set of code would handle the serial control panel and serial
connections as well as the RGB/LCD monitor expansion. None of this
code would be part of the image that would be on the EPROM.

I could not see how this could be put into an image to be used in an
emulator.

I have to say, the Laser 128 fascinated me almost as much as the IIGS
with all its little idiosyncrocies.

Rob

ict@ccess

unread,
May 25, 2012, 1:54:14 AM5/25/12
to
To view the code for the slot Roms from $C800-$CFFF (works on any
Apple computer)
Change the $C6 from $C! to $C7 for the slot to view

300: a9 00 85 06 85 08 a9 18 85 07 a9 c8 85 9 a0 00
310: a2 08 2c ff cf 2c 00 c6 b1 08 91 06 88 d0 f3 e6
320: 07 e6 09 ca do ec 60


To view the 2nd set of code from $C100-$C7FF - may only work on Laser
128

380: a2 0f a0 0 8d 07 c0 b9 00 c1 99 00 21 88 d0 f7
390: ee 89 03 ee 8c 03 ca d0 ee 8d 6 c0 60

Steven Hirsch

unread,
May 25, 2012, 8:43:08 AM5/25/12
to
On 05/25/2012 01:31 AM, ict@ccess wrote:

> I have to say, the Laser 128 fascinated me almost as much as the IIGS
> with all its little idiosyncrocies.

Me as well. If I can get it talking to the SPVHD, it will make a great
machine to hack around with. I was fortunate enough to score a Laser
Expansion box, and plan to put an Apple Workstation card in Slot 5. With
large-capacity storage in Slot 7, this should be fun to work with.


Steven Hirsch

unread,
May 25, 2012, 4:47:37 PM5/25/12
to
On 05/25/2012 01:31 AM, ict@ccess wrote:

> Although the EPROM is 32 kb, and only 16 kb is needed for the
> motherboard ROM, I was trying to ascertain if the slot ROMs were also
> stored on the EPROM. I have 2 EPROMs with different versions of ROM
> and although the ROM differs slightly between the 2 versions, the slot
> ROM code remains exactly the same. I thought for sure if the ROM code
> differed, then at least some changes should have/would have been made
> also to the slot ROM code. So with this analogy, I surmised that the
> slot ROM code is not stored on the EPROM but on another on board chip.

The Laser 128 Tech Ref is available in PDF. I found the layout of the ROM in
Fig. 11-6. It shows the physical and logical address layout in great detail,
along with a description of the hardware decoding :-).

The Slot ROM code is mostly in the upper half of the EPROM and has some very
strange aspects. The 3.5" disk code is distributed over 6 1k banks that cover
logical address CC00-CFFF. This is not large enough for the UDC image, which
appears to require 8k (but also looks like it's divided into 1k banks).

Looks like I have some serious disassembly ahead of me. But, the manual is
complete enough in terms of hardware description that it should be at least
possible.

What are folks fond of for 6502 disassembly nowadays? It's been years since
I've been through an exercise of this type.

Steve

Vladimir Ivanov

unread,
Jun 3, 2012, 6:18:28 AM6/3/12
to

On Fri, 25 May 2012, Steven Hirsch wrote:

> What are folks fond of for 6502 disassembly nowadays? It's been years since
> I've been through an exercise of this type.

da65 from the cc65 package:

http://www.cc65.org/doc/da65.html

Guided manually with an "info file" it does great job for me.

Marc S Ressl

unread,
Jun 3, 2012, 1:31:22 PM6/3/12
to
Is anybody able to determine what version each of these ROM images is?

http://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Computers/Laser/Laser%20128/ROM%20Images/

Tom Greene

unread,
Jun 3, 2012, 7:43:39 PM6/3/12
to
On Jun 3, 1:31 pm, mre...@macgui.com (Marc S Ressl) wrote:
> Marc S Ressl wrote:
> > Peltier Cedric wrote:
> >> Another weird thing: Steven's Laser 128 have the signature for the
> >> smartport entry point...
>
> > Hello there,
>
> > btw, next sunday there'll be two new Laser 128 ROM images available here:
>
> http://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Com...
>
>
>
> > The names are most likely wrong, so how can I figure out the version from
> > the ROM image?
>
> > If anybody has some other ROM image of Laser computers, would they be so
> > kind as to upload them to the documentation project? Thanks a lot.
>
> > With the best wishes,
>
> > Marc.-
>
> Is anybody able to determine what version each of these ROM images is?
>
> http://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Com...
>
> With the best wishes,
>
> Marc.-

There is version/copyright info embedded in the files near offset
$0E00-$0F00, in ASCII with the high bits set. The v4.2 and v6.1 ones
are correct, and "Laser 128EX ROM.bin" is v4.5.

Laser 128 ROM.bin and Laser 128 4 ROM.bin don't contain any version
info the way the other files do.
But both these files are corrupt anyway, since all the high bits seem
to have been stripped from them.

Here is the full info from each of the good files:


Laser 128 v4.2 ROM.bin:

LASER 128 ROM Version 4.2
(C) Copyright 1985, 1986, 1987
Central Point Software, Inc.
BASIC (C) 1982 Microsoft
All rights reserved


Laser 128EX ROM.bin:

LASER 128 ROM Version 4.5
(C) Copyright 1985, 1986, 1987, 1988
Central Point Software, Inc.
BASIC (C) 1982 Microsoft
All rights reserved


Laser 128EX2 v6.1 ROM.bin:

LASER 128EX/2 ROM Version 6.1
(C) Copyright 1985-1988
Central Point Software, Inc.
BASIC (C) 1982 Microsoft
All rights reserved


Tom

Marc S Ressl

unread,
Jun 4, 2012, 10:54:34 PM6/4/12
to
Thanks a lot for the help!!

Now it is really odd why bit 7 was stripped... maybe it was transmitted
decades ago over a modem using a 7 bit link?

sicklittlemonkey

unread,
Aug 14, 2014, 7:36:58 AM8/14/14
to
On Saturday, 26 May 2012 08:47:37 UTC+12, Steven Hirsch wrote:
> Looks like I have some serious disassembly ahead of me. But, the manual is
> complete enough in terms of hardware description that it should be at least
> possible.

Hi Steven.

Did you get a chance to disassemble the Laser ROM?

I'm interested in the Laser's boot zero ($C6XX) ROM if you have already disassembled it. A quick glance at offset $4600 is a bit puzzling, so I'm wondering how far down the rabbit hole goes ...

Cheers,
Nick.

Steven Hirsch

unread,
Aug 14, 2014, 8:00:05 AM8/14/14
to
On 08/14/2014 07:36 AM, sicklittlemonkey wrote:
> On Saturday, 26 May 2012 08:47:37 UTC+12, Steven Hirsch wrote:
>> Looks like I have some serious disassembly ahead of me. But, the manual
>> is complete enough in terms of hardware description that it should be at
>> least possible.


> Did you get a chance to disassemble the Laser ROM?
>
> I'm interested in the Laser's boot zero ($C6XX) ROM if you have already
> disassembled it. A quick glance at offset $4600 is a bit puzzling, so I'm
> wondering how far down the rabbit hole goes ...

<sigh..> No. As with everything in the world of classic computers, I had the
best of intentions but never the free time.

sicklittlemonkey

unread,
Aug 14, 2014, 6:51:08 PM8/14/14
to
On Friday, 15 August 2014 00:00:05 UTC+12, Steven Hirsch wrote:
> <sigh..> No. As with everything in the world of classic computers, I had the
> best of intentions but never the free time.

Heh, we're all in the same boat. ; - )

Thanks for replying to another necro-post!

Cheers,
Nick.

Yeechang Lee

unread,
Aug 14, 2014, 7:15:21 PM8/14/14
to
Steven Hirsch wrote:
> I find it rather odd that the Laser cannot handle intelligent
> drives, while the earlier Apple //c can.

Speaking of which, I have compatibility questions:

* Contemporary reviews found varying levels of software compatibility
for the Laser 128
(<URL:https://en.wikipedia.org/wiki/Laser_128#Compatibility>).
Several reviews found 90-95% software compatibility, except *BYTE*;
it didn't give a specific number, but implied that the percentage of
imcompatible software was much higher. What's your experience?

* Some reviews also mention Central Point offering $25 ROM upgrades to
improve compatibility. How much of a difference did they make?

* I know that Central Point (unsurprisingly) advertised Laser 128
compatibility for its products, and so did some others. Wikipedia
states that "The Laser 128's popularity ensured that most major
software companies tested their software on the Laser as well as on
Apple hardware.". Was this common practice?

On the PC side, there were too many clones for companies to make
broad tests so they stuck with Compaq and maybe one or two others at
the most, until Phoenix and other companies introduced
100%-compatible BIOSes that more or less ended compatibility
concerns. In the much smaller Apple II market I could see companies
routinely testing on the Laser 128 given its more or less unique
status (Franklin wasn't much of a factor by the time the Laser
arrived in the US in 1986), but don't know whether this actually
happened.

qkumba

unread,
Aug 14, 2014, 7:46:40 PM8/14/14
to
> I'm interested in the Laser's boot zero ($C6XX) ROM if you have already disassembled it. A quick glance at offset $4600 is a bit puzzling, so I'm wondering how far down the rabbit hole goes ...

I just had a quick look at the Laser 128 boot0. It behaves exactly like the Apple II, and leaves phase 0 active.

sicklittlemonkey

unread,
Aug 14, 2014, 11:09:41 PM8/14/14
to
On Friday, 15 August 2014 11:46:40 UTC+12, qkumba wrote:
> I just had a quick look at the Laser 128 boot0. It behaves exactly like the Apple II, and leaves phase 0 active.

Oh, where did you find it? The $4600 offset looked like a weird version of it.

Anyway, Chess Master the code is checking for a clone, so one of them must explain it. The only Franklin ROM I can find online is for the 100, which doesn't include a disk ROM. Laser and Franklin were the biggest, so I kind of doubt the check was for Pravets etc, but who knows!? ; - )

Cheers,
Nick.

Antoine Vignau

unread,
Aug 14, 2014, 11:35:54 PM8/14/14
to

sicklittlemonkey

unread,
Aug 15, 2014, 12:17:36 AM8/15/14
to
On Friday, 15 August 2014 15:35:54 UTC+12, Antoine Vignau wrote:
> there? http://mirrors.apple2.org.za/Apple%20II%20Documentation%20Project/Computers/LASER/LASER%20128/ROM%20Images/

Yes, the ROM is easily available ... but understanding it takes more time than I have available.

When I asked "where", I mean where did Peter find SEEK0, because at offset $4600 is some code that _looks_ like a copy of boot zero ... but the SEEK0 part looks very strange.

Cheers,
Nick.

Michael J. Mahon

unread,
Aug 15, 2014, 5:07:13 AM8/15/14
to
So...that must have been written into the specifications for the "black
box" re-write??
--
-michael - NadaNet 3.1 and AppleCrate II: http://home.comcast.net/~mjmahon

Vladimir Ivanov

unread,
Aug 15, 2014, 5:30:42 AM8/15/14
to
Pravetz-82 only had the title changed. :-) I believe the same applies to
8M.

No idea about 8E & 8A, but the 8C is a weird beast - it is modelled after
the IIe, uses NMOS 6502, has search in Monitor, CTRL+CA+RESET drops into
Monitor, and BASIC supports hex constants (PEEK $C030). I still don't know
whether somebody compiled various "enhacement" stuff in or there was a lot
of original work.

Back to topic, I have played Chessmaster 2000 (some crack probably) on the
8C.

Warren Ernst

unread,
Aug 15, 2014, 1:27:31 PM8/15/14
to
Well for what it's worth:

1. I believe the Laser 128EX made big improvements in Apple II compatibility over the "regular" Laser 128.

2. We had both a Laser 128 and a Laser 128EX over the Beagle Building for compatibility testing. Back in 1988 and 1989, I don't remember finding anything that we sold that didn't work on them.

-Warr

qkumba

unread,
Aug 16, 2014, 12:27:48 PM8/16/14
to
> > I just had a quick look at the Laser 128 boot0. It behaves exactly like the Apple II, and leaves phase 0 active.
> Oh, where did you find it? The $4600 offset looked like a weird version of it.

The code at $4600 is the real one. It's relying on banking occuring at $C800, to map in a routine that reads from Q6L (we're working on supporting this in MESS right now). However, I just extracted the relevant part, ran it in AppleWin, and then checked which phases were active.

sicklittlemonkey

unread,
Aug 16, 2014, 6:56:42 PM8/16/14
to
On Sunday, 17 August 2014 04:27:48 UTC+12, qkumba wrote:
> The code at $4600 is the real one. It's relying on banking occuring at $C800, to map in a routine that reads from Q6L (we're working on supporting this in MESS right now). However, I just extracted the relevant part, ran it in AppleWin, and then checked which phases were active.

Yeah, I saw it calling out, but the loop at $4634 looked like nonsense .. Anyway, I lack the time (and motivation) to delve into the Laser.

Good on you for helping out with MESS though. I saw your comments in their forum last night and was going to reply, but I had a look at some MESS code instead. It's improved in the last 10 years, that's for sure. ; - )

Cheers,
Nick.

qkumba

unread,
Aug 17, 2014, 1:46:26 AM8/17/14
to
> Yeah, I saw it calling out, but the loop at $4634 looked like nonsense .. Anyway, I lack the time (and motivation) to delve into the Laser.

$4634 behaves just like the regular $c600, except less code. Instead of explicitly turning phases on and off, it's turning them on and off via bit 0 from the "and #7". The "and #1" is used to check if it should delay (after phase on) or not.

> Good on you for helping out with MESS though. I saw your comments in their forum last night and was going to reply, but I had a look at some MESS code instead. It's improved in the last 10 years, that's for sure. ; - )

I'm sure that it has. I'm not really doing much on the coding side right now, just analysing and debugging, describing where things are going wrong, and others are fixing it for me.

qkumba

unread,
Aug 19, 2014, 4:59:03 PM8/19/14
to
We got the Laser128 to boot in MESS. It's not the one for which Chessmaster is checking (at least ROM v4.2 isn't it Maybe an earlier one is?). It boots just fine without the track number change (except that the Digital Gang version has a "bug", where it's relying on the Y register being 0 on return from $fc58. It's #$28 on the Laser).

qkumba

unread,
Aug 19, 2014, 5:05:44 PM8/19/14
to
> It boots just fine without the track number change

However, it does fail the clone check. It might explain why there are two versions of Chessmaster 2000, one of which does not carry the check and patch at all.

Steve Nickolas

unread,
Aug 19, 2014, 7:00:21 PM8/19/14
to
The Laser does have a few peculiar quirks.

Also, I think SimSystem IIe emulates a Laser 128 but it itself has its
share of quirks too.

-uso.
0 new messages