News:

Want an XLerator? Please participate in the market research thread: https://lisalist2.com/index.php/topic,594.msg4180.html

Main Menu

A Lisa Inside An FPGA

Started by AlexTheCat123, September 04, 2025, 05:20:35 PM

Previous topic - Next topic

coffeemuse

#150
Wow! Amazing work, Alex! Thanks for the update.

Quote from: AlexTheCat123 on May 01, 2026, 08:11:15 PMAssuming the PCBs are here in time for VCF Southwest at the end of the month, I was thinking about getting a loan from my parents and potentially ordering a decent-sized run to sell to people who come to the show. I know there there are some people there who would really love to get their hands on one, but I'm a bit nervous about doing this because if the market isn't as big as whatever I predict, then I'm stuck with a bunch of boards. To judge interest on this, is anybody going to be at VCF Southwest who might want one?

Count me in for one whether that's a bulk run now or further down the road. If the boards arrive in time for VCF, I'd love to pick one up in person and catch your presentation on Saturday. If they don't make it from China in time, no worries at all; I'm happy to pay for shipping whenever they're available.

My current plan is to drive up Friday and head back Saturday evening, but the timing is flexible.

Already preparing on my end: Workshop 3.0 manuals, original M0100 mouse, and a tube of Zilog SCCs in case the external SCC route is the way to go.



sigma7

Quote from: AlexTheCat123 on May 01, 2026, 08:11:15 PMI figured out the MacWorks Plus issue ... it does require a small patch to your MacWorks Plus disk.
...
They set the flag in the CCR in the event of a timeout, but then on LITERALLY THE NEXT INSTRUCTION they pop the old contents of the CCR off the stack and overwrite the CCR with it before returning to the caller.

In what version/range of MW+ did you find this bug?

Quoteanother BLU problem: it fails its self-check when running with a 60MHz or 75MHz DOTCK. It passes the self-check fine when booting from floppy at these speeds, but not from the ProFile

This brings up the issue that some code might want (or need) to know that it is running on your FPGA design and at what speed (and any other options). If you can add some kind of info register in the CPU board address space to expose that sort of thing it would be more reliable than the code trying to decide for itself.
Warning: Memory errors found. ECC non-functional. Verify comments if accuracy is important to you.

sigma7

Quote from: AlexTheCat123 on May 01, 2026, 08:11:15 PMI figured out the MacWorks Plus issue

By the sound of your report, your FPGA design has some kind of logic analyzer or code trace feature... if there is a way to make that available to others, it could be a tremendous benefit to anyone working on Lisa code!
Warning: Memory errors found. ECC non-functional. Verify comments if accuracy is important to you.

AlexTheCat123

Quote from: stepleton on May 02, 2026, 04:21:24 AMConsider explaining the situation and asking on 68kmla/TinkerDifferent/VCFed? A link to this thread would help folks who want to know more or who want to confirm that the project is real.

Good idea, I think I'll do that! And maybe I'll make a YT video going over its capabilities so that people know what they're getting into.

Quote from: coffeemuse on May 02, 2026, 08:01:56 AMAlready preparing on my end: Workshop 3.0 manuals, original M0100 mouse, and a tube of Zilog SCCs in case the external SCC route is the way to go.

Haha, you're all ready to go! I hope to see you at the presentation, and hopefully the boards will be here in time (assuming there's enough demand)!

Quote from: sigma7 on May 02, 2026, 01:08:10 PMIn what version/range of MW+ did you find this bug?

Whoops, I completely forgot to mention that in my last post. I found it in 1.0.18, but it's probably in other versions as well. Notably, it's NOT in MacWorks XL or MW+II. Search for 007C 0300 207C 00FC DD81 243C 0000 0108 and replace the timeout value of 0000 0108 with something big; I just arbitrarily chose 7000 0000 for some reason.

Quote from: sigma7 on May 02, 2026, 01:08:10 PMThis brings up the issue that some code might want (or need) to know that it is running on your FPGA design and at what speed (and any other options). If you can add some kind of info register in the CPU board address space to expose that sort of thing it would be more reliable than the code trying to decide for itself.

Wow, that's a good idea! I think I might just extend the system status latch (the thing that holds the states of INVID, CSYNC, VID, BUST, BTIR, HDER, and SFER) to be 16 bits instead of 8 bits, and put some magic number in there (along with maybe the current DOTCK speed and some other stuff) that identifies the board as an FPGA and not a real Lisa. That's a really easy change to make.

Quote from: sigma7 on May 02, 2026, 02:09:13 PMBy the sound of your report, your FPGA design has some kind of logic analyzer or code trace feature... if there is a way to make that available to others, it could be a tremendous benefit to anyone working on Lisa code!

Yeah, it's incredibly useful, and it's built right in to the Xilinx toolchain. You just mark signals for debugging to keep them from getting optimized away and rebuild your design. Then you can add a logic analyzer core within the FPGA that uses the FPGA's internal block RAM as its sample memory and sends data back to Vivado over JTAG. Once you program the board, you configure your trigger settings and can start capturing data in Vivado! The only catch is that there's not a whole lot of sample memory to play with since it's just running off the FPGA's block RAM, but it hasn't really been much of a problem for me except for when I'm trying to probe really slow stuff like the ProFile interface and the COP's sync signal.

AlexTheCat123

Wow, I uploaded a public YouTube video about this project to my channel last night, and it's gotten about 8,000 views overnight! Most of the reception has been positive (other than a couple guys complaining about the board being ugly and saying that I need to talk to a pro PCB designer and also a few people complaining about my horrible camerawork) and a lot of people have said that they want to buy one. I'm honestly shocked at how much attention it's getting!

https://youtu.be/8jNQDcpHc68

sigma7

QuoteI uploaded a public YouTube video about this project

Very nice! Congratulations on your continued progress on this ambitious project. You've certainly demonstrated a lot of determination and dedication, not to mention development of some serious troubleshooting finesse.
Warning: Memory errors found. ECC non-functional. Verify comments if accuracy is important to you.

AlexTheCat123


snhirsch

I'm blown away by your work on this, Alex.  In terms of unit sales, have you considered working with an existing vendor?  Might help to reduce headaches and hassles.

AlexTheCat123

Thank you! I haven't really considered it up until today. But then one vendor reached out to me a couple hours ago wanting to list some boards on their site. I'm in the middle of final exams right now, but I'm thinking about it and I'll get back to them once I'm done!

RebeccaRGB

Count me in for a board as well.

Manzanavila

Spectacular work, Alex! Your knowledge of the platform is incredible. I'm interested in a motherboard. Best regards and congratulations.

AlexTheCat123


coffeemuse

Quote from: AlexTheCat123 on May 03, 2026, 12:41:17 PMWow, I uploaded a public YouTube video about this project to my channel last night, and it's gotten about 8,000 views overnight! Most of the reception has been positive (other than a couple guys complaining about the board being ugly and saying that I need to talk to a pro PCB designer and also a few people complaining about my horrible camerawork) and a lot of people have said that they want to buy one. I'm honestly shocked at how much attention it's getting!

https://youtu.be/8jNQDcpHc68

This video is undoubtedly fantastic, and it has already garnered over 20,000 views! That's incredible!

Please disregard the criticisms. For someone who is solely pursuing this as a hobby and a passion for the Lisa, it's an impressive achievement to have successfully created a working Lisa inside an FPGA. I'm quite certain that none of those critics have developed a superior working Apple Lisa-compatible computer, let alone one in less than a year.

I remain in awe of your accomplishment and skills.

AlexTheCat123

Quote from: coffeemuse on May 04, 2026, 06:49:39 PMPlease disregard the criticisms. For someone who is solely pursuing this as a hobby and a passion for the Lisa, it's an impressive achievement to have successfully created a working Lisa inside an FPGA. I'm quite certain that none of those critics have developed a superior working Apple Lisa-compatible computer, let alone one in less than a year.

That's a fair point. I'm a bit of a perfectionist, so I see every bit of their criticism as some genuine thing that I need to improve. But I'm trying to ignore that and focus on all of the positive ones.

Speaking of positive comments, someone named Chris Espinosa commented on the video claiming to be the project manager for MacWorks XL and the square pixels mod. I wonder if it's actually him? That would be amazing!!!

ried