![]() |
![]() |
![]() |
#201 |
Registered User
![]() Join Date: Nov 2018
Location: Germany
Posts: 2
|
|
![]() |
![]() |
#202 |
Registered User
![]() Join Date: Jan 2017
Location: London
Posts: 185
|
Cheers Michal!
Now I need to figure out how to swap in your Emu68... we may need a long chat about interrupts ![]() ![]() Last edited by bloodline; Yesterday at 11:10. |
![]() |
![]() |
#203 |
Moderator
![]() Join Date: Jan 2002
Location: Chicago, IL
Posts: 1,992
|
Baremetal is an interesting and exciting project.
|
![]() |
![]() |
#204 |
Registered User
![]() Join Date: Jan 2014
Location: Oxfordshire
Posts: 440
|
Excellent project. I came across this via looking for C64 Bare Metal emulators.
Sorry I can't help in any technical capacity. Power to the Pi! |
![]() |
![]() |
#205 |
Registered User
![]() Join Date: Jan 2017
Location: London
Posts: 185
|
Ok, CIA question time!!
When a Key is pressed a raw key value (0x20 for the "A" key for example) is placed into CIA A sdr register. The Interrupt bit SP is set in the icr, and the CIA generates an interrupt on paula. when a key is released, a raw key value is placed into CIA A sdr register (and bit 7, the topmost bit is set (0xA0 for the "A" key in this example) )... SP bit set, interrupt is again generated. This is the model I am using... But I'm getting spurious keyboard inputs, have I missed a step? ![]() -Edit- Reading the HRM again... Perhaps the rawkey value is shifted left 1 bit and the key up flag is added at bit position 0... I'll need to wait until later to test. -edit2- and now I realise I need to invert the bits... ok it works. Omega has keyboard input ![]() Last edited by bloodline; Yesterday at 17:28. |
![]() |
![]() |
#206 |
Registered User
![]() Join Date: Nov 2015
Location: Italy
Posts: 17
|
|
![]() |
![]() |
#207 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 43
Posts: 22,364
|
Keycode is rotated and inverted. Keyboard handshake is also required, keyboard won't send new key codes (*) until handshake pulse.
*) not 100% true but lets not make this unnecessarily complex. |
![]() |
![]() |
#208 | |
Registered User
![]() Join Date: Jan 2017
Location: London
Posts: 185
|
Quote:
Yes, I was missing that inversion step. I now have basic keyboard support. I haven't implemented any handshake, which will probably cause a problem later on... but for now I have it working enough to test more critical parts of the emulator. |
|
![]() |
![]() |
#209 | |
Registered User
![]() Join Date: Jan 2017
Location: London
Posts: 185
|
Quote:
-Edit- Yes, that was a significant bug. Fixed now! I can't believe I managed to get as far as I did with it ![]() Last edited by bloodline; Yesterday at 17:59. |
|
![]() |
![]() |
#210 |
Registered User
![]() Join Date: Jan 2017
Location: London
Posts: 185
|
Lores screens work fine up to 5 bit planes.
Hires screens work fine up to 3 bit planes... When the forth bit plane is active this happens: [ Show youtube player ] Probably related, but my Copper is not coping well either: [ Show youtube player ] Last edited by bloodline; Today at 00:51. |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Amiga emulator for iOS | steviebwoy | support.OtherUAE | 35 | 15 November 2014 11:14 |
Amiga emulator for a PSP? | Vars191 | support.OtherUAE | 1 | 09 May 2010 03:08 |
Frederic's Emulator inside and Emulator thread | Fred the Fop | Retrogaming General Discussion | 22 | 09 March 2006 08:31 |
ADF Files -> Amiga(amiga with dos Emulator) | Schattenmeister | support.Hardware | 8 | 14 October 2003 01:10 |
Which Amiga emulator is best? | Tim Janssen | Amiga scene | 45 | 15 February 2002 20:52 |
|
|