05 February 2018, 14:12 | #21 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,515
|
If I remember correctly, KS 1.x boot screen assumes blitter undocumented feature: linedraw mode uses C modulo register for both C and D channels. D modulo is ignored. (There are also other linedraw undocumented features but they are not needed to get KS code working)
|
05 February 2018, 15:10 | #22 | |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
Quote:
It's still a million miles from working, but at least it doesn't crash now |
|
05 February 2018, 16:48 | #23 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
I just had my first Guru which displayed the proper screen... sadly a bit messed up, so I can't read the guru number, but I'm still very excited!
|
05 February 2018, 20:08 | #24 |
Amigan
Join Date: Feb 2012
Location: London
Posts: 1,311
|
Nice
Reminds me of the early UAE days when Bernd Schmidt posted similar screenshots (possibly to USENET?). |
06 February 2018, 20:51 | #25 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
I can imagine the excitement that must have generated! I've spent far too long on the blitter, Kickstart 3.0 isn't even close to booting... I've basically run out of time now as I have to go back to work tomorrow. But getting this far has been really good fun... I wonder if my blitter is good enough to make a working floppy emulation?
|
10 February 2018, 00:00 | #26 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
I have been over my line mode code (disabling the area copy mode) and it's clearly working to some degree...
I never realised that the boot screen was drawn by the blitter |
10 February 2018, 01:28 | #27 |
Registered User
Join Date: Aug 2016
Location: Cresco, PA, USA
Age: 53
Posts: 1,126
|
Sweet. Congrats!
|
10 February 2018, 11:05 | #28 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
Ok, running the line mode and the area copy modes together yields this.
I'm going to leave the line mode alone for a bit now, since I spent ages trying to get it to work (and it clearly still doesn't work right), almost all the issues I have with it are to do with the Amiga's bit addressing of pixels... so much bit shifting I suspect there may be problems because I'm not leaving the registers in the correct state when my functions return... Amiga coders seem want to take advantage of observed behaviour, rather than following the tech docs. Looking back at the screenshots I have posted, is a great way to see how much I have learnt (seriously, this has to be one of the best ways to learn how this stuff works). -Edit- One idea I have toyed with is using "byteplane" buffer... so the blitter copies in the pixel data, and stores each bit in as a byte in the internal buffer (obviously this requires 8 times as much memory), operates on the byte buffer, then then once the blitter operation is completed copies the data back to the original format... Last edited by bloodline; 01 March 2018 at 15:52. |
10 February 2018, 11:54 | #29 | |
Registered User
Join Date: Aug 2014
Location: Brindisi (Italy)
Age: 70
Posts: 8,252
|
Quote:
Sorry OT bloodline beautiful project |
|
10 February 2018, 12:22 | #30 | |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
Quote:
On Topic: Can the blitter access address that are not word aligned? The C and D channels seem regularly loaded with odd addresses by the kickstart... Which doesn't seem right to me (I'm currently ignoring the least significant bit). Last edited by bloodline; 10 February 2018 at 14:09. |
|
11 February 2018, 12:02 | #31 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
I appear to have a working line mode implementation now. I'm guessing the missing vertical and horizontal areas are to be filled by the area copy mode.
But my area copy mode is totally broken... I assumed that area mode would be the easy part... time for (another) rewrite. |
11 February 2018, 13:59 | #32 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
Area mode rewrite... almost there?!
|
11 February 2018, 14:17 | #33 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
Something still not right... but this is enough for today
-Edit- The attached executable, is compiled for MacOS Sierra, and requires libSDL 2.0+ installed. Run from command line: zorro <path to rom image> It will spew out quite a bit of debugging info... enjoy. Last edited by bloodline; 01 March 2018 at 15:52. |
11 February 2018, 14:31 | #34 |
Registered User
Join Date: Feb 2018
Location: Kidderminster
Posts: 16
|
Could be an off by one error (as in one word to the side), looks like you're close!
|
11 February 2018, 14:38 | #35 | |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
Quote:
And I guess we can now officially say there are three Amiga emulators, UAE, Fellow and "Zorro" though mine only boots KS1.2 (and also 1.3)... nothing more. -Edit- it has been such good fun getting to this point, many thanks to all who have followed and made suggestions! I'm definitely going to try and get the floppy working... my guess here is where my total disregard for timings will make the project fall apart. Last edited by bloodline; 11 February 2018 at 15:00. |
|
11 February 2018, 19:48 | #36 | ||
Registered User
Join Date: Dec 2017
Location: Denmark
Posts: 179
|
Quote:
From this: http://amigadev.elowar.com/read/ADCD.../node012D.html Quote:
|
||
11 February 2018, 22:06 | #37 | ||
Ex nihilo nihil
Join Date: Oct 2017
Location: CH
Posts: 4,884
|
Quote:
Quote:
|
||
11 February 2018, 22:11 | #38 |
Zone Friend
Join Date: Apr 2005
Location: London
Posts: 1,176
|
I haven't made suggestions but I have followed. I hope you continue to build on this as long as you're having fun
|
12 February 2018, 07:30 | #39 | |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
Quote:
I found the Abacus book "Amiga Intern" (as suggested by user ASM68 in another thread) and this page here http://www.winnicki.net/amiga/memmap/LineMode.html really helpful to debug the blitter. The thing which really threw me off with the Line Mode, was why all the values were multiplied by 2... but then it dawned on me that the bltxmod and bltxpt registers probabaly don't have the least significant bit connected, so the values are just left shifted to fit! Once I figured that out (took 9 days), the implementation was quite easy. I was able to fix the shifting section and now we have what appears to be a fully working boot of KS1.2! Last edited by bloodline; 01 March 2018 at 15:53. |
|
12 February 2018, 07:40 | #40 |
Registered User
Join Date: Jan 2017
Location: London, UK
Posts: 433
|
This has been a lot of fun (I can't wait to clean up the sources and publish them), I will now see just how far I get with floppy emulation, and then I'll need to add hires mode... this is addictive
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Amiga emulator for iOS | steviebwoy | support.OtherUAE | 35 | 15 November 2014 10:14 |
Amiga emulator for a PSP? | Vars191 | support.OtherUAE | 1 | 09 May 2010 02:08 |
Frederic's Emulator inside and Emulator thread | Fred the Fop | Retrogaming General Discussion | 22 | 09 March 2006 07:31 |
ADF Files -> Amiga(amiga with dos Emulator) | Schattenmeister | support.Hardware | 8 | 14 October 2003 00:10 |
Which Amiga emulator is best? | Tim Janssen | Amiga scene | 45 | 15 February 2002 19:52 |
|
|