| View previous topic :: View next topic |
| Author |
Message |
Lemon64 Donator!


Joined: 28 Dec 2001 Posts: 453 Location: Australia
|
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 28 Jun 2007 Posts: 3633 Location: Qld OZ
|
Posted: Wed Sep 21, 2011 4:34 pm Post subject: |
|
|
Uploaded recently.
ftp://arnold.c64.org/hardware/alienflash/
073_AirborneRanger_1987_Microprose.EF-fixed2.crt 249 KB
All Time Heroes (easyflash).crt 498 KB
GameCollection.crt 930 KB
jumpmnsptaxi.crt 658 KB
lastninja12.crt 882 KB
last_ninja_remix_ef_patched2.crt 522 KB
mmm.crt 1027 KB
mmzmkde.crt 882 KB
mmzmken.crt 882 KB
myth_ef_patched.crt 498 KB
ninja3efv2.crt 530 KB
Ocean's All Star Hits 2 (Alien Flash, pal).crt 1027 KB
ToolCollection.crt 465 KB
enjoy. _________________ Looking for a causal coder, Python/MYSQL/PHP/Java. PM Me  |
|
| Back to top |
|
 |
Newbie

Joined: 28 Sep 2011 Posts: 10
|
Posted: Wed Sep 28, 2011 7:40 pm Post subject: |
|
|
Please help me.
where can I get the original alien flash tools bootscreen?
My Alien Flash starts with the Alien Flash Minitools. |
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
|
| Back to top |
|
 |
Newbie

Joined: 28 Sep 2011 Posts: 10
|
Posted: Sun Oct 02, 2011 1:29 pm Post subject: |
|
|
Can someone tell me how to start the individual slots directly from BASIC? |
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
Posted: Fri Oct 07, 2011 10:44 am Post subject: |
|
|
The control bits can be changed using basic, for example, type POKE 56834,132 in BASIC, this will turn the LED on. However because ROM Slots launch in Ultimax mode, you can not launch a ROM slot directly from BASIC. You will have write a small bit of code to launch a ROM Slot.
Have a read of the "Alien Flash Register Description" PDF, available on the Alien Flash Wiki.
The values at $DE00 & $DE01 would depend on what ROM Slot you wish to launch. $DE02 controls what cartridge mode you wish to use and $DE03 will lock and unlock some of the control registers. So depending on what you are doing you will need to place the correct values into the control registers.
| Stingray wrote: |
If you wanted to launch a ROM SLOT, you would usually set up the control registers then JMP ($FFFC) and you would usually place your code somewhere lower than $1000 (because in Ultimax mode you won't have RAM higher than $1000).
example:
LDA #$00
STA $DE03
LDA #$00
STA $DE00
LDA #$00
STA $DE01
LDA #$05
STA $DE02
LDA #$00
STA $DE03
JMP ($FFFC)
You will have to do this in Machine Code (the exception to this is if all you are doing is switching in a 8K cartridge ROM at $8000) because switching in Ultimax mode and 16K cartridge mode will play around with your BASIC and KERNAL ROMs killing your BASIC program before it gets to the end. |
|
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
Posted: Fri Oct 07, 2011 1:32 pm Post subject: |
|
|
Here is a better explanation of launching ROM Slots (includes BASIC listing  ).
To launch a ROM Slot the appropriate values must be set in the Alien Flash's control registers.
Start of by placing $40 (064) in $DE03, this sets the "A19-A22 UNPROTECT" bit allowing you to write to A19-A22 address bits in $DE00 & DE01 (these are the bits that select the ROM Slot).
Place values required for the desired ROM Slot into $DE00 & $DE01. The highest two bits of $DE00 and the lowest two bits of $DE01 are used to select ROM Slots.
To make things simple here is a list of values for the different ROM Slots.
ROM Slot 0: $DE00 = $00 (000) - $DE01 = $00 (000)
ROM Slot 1: $DE00 = $40 (064) - $DE01 = $00 (000)
ROM Slot 2: $DE00 = $80 (128) - $DE01 = $00 (000)
ROM Slot 3: $DE00 = $C0 (192) - $DE01 = $00 (000)
ROM Slot 4: $DE00 = $00 (000) - $DE01 = $01 (001)
ROM Slot 5: $DE00 = $40 (064) - $DE01 = $01 (001)
ROM Slot 6: $DE00 = $80 (128) - $DE01 = $01 (001)
ROM Slot 7: $DE00 = $C0 (192) - $DE01 = $01 (001)
ROM Slot 8: $DE00 = $00 (000) - $DE01 = $02 (002)
ROM Slot 9: $DE00 = $40 (064) - $DE01 = $02 (002)
ROM Slot A: $DE00 = $80 (128) - $DE01 = $02 (002)
ROM Slot B: $DE00 = $C0 (192) - $DE01 = $02 (002)
ROM Slot C: $DE00 = $00 (000) - $DE01 = $03 (003)
ROM Slot D: $DE00 = $40 (064) - $DE01 = $03 (003)
ROM Slot E: $DE00 = $80 (128) - $DE01 = $03 (003)
ROM Slot F: $DE00 = $C0 (192) - $DE01 = $03 (003)
Then place the value $00 (000), or $05 (005) into $DE02 ($05 will override the Alien Flash jumper).
Now place a value of $00 (000) into $DE03 to clear the "A19-A22 UNPROTECT" bit.
Reset with "JMP ($FFFC)", probably also a good idea to do a SEI before changing any of the Alien Flash control registers.
So here we go with an example to launch ROM Slot 2:
* code must be place below memory address $1000
SEI
LDA #$40
STA $DE03
LDA #$80
STA $DE00
LDA #$00
STA $DE01
LDA #$05
STA $DE02
LDA #$00
STA $DE03
JMP ($FFFC)
Now for some untested BASIC programming. We can poke the code into memory and jump to it with an SYS. When we poke the code into memory we will also poke in the values for desired ROM Slot.
10 FORR=0TO28:READD:POKE319+R,D:NEXT
20 SYS319
100 DATA 120 (SEI)
110 DATA 169,064 (LDA #$40)
120 DATA 141,003,222 (STA $DE03)
130 DATA 169,128 (LDA #$80) (Change 128 as required)
140 DATA 141,000,222 (STA $DE00)
150 DATA 169,000 (LDA #$00) (Change 000 as required)
160 DATA 141,001,222 (STA $DE01)
170 DATA 169,005 (LDA #$05)
180 DATA 141,002,222 (STA $DE02)
190 DATA 169,000 (LDA #$00)
200 DATA 141,003,222 (STA $DE03)
210 DATA 108,252,255 (JMP ($FFFC))
Of course, do not include what I have in brackets. The last value in DATA line 130 can be changed with other values for $DE00 from the list given earlier. The last value in DATA line 150 can be changed with other values for $DE01 from the list given earlier.
Please note completely untested  fingers crossed, no mistakes. |
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 30 Apr 2009 Age: 38 Posts: 3465 Location: Sweden
|
Posted: Fri Oct 07, 2011 2:15 pm Post subject: |
|
|
The updated version with the addresses correctly entered worked just fine.
Thanks for the very clear instructions.
Is there an area where the program could be safely stored so you could use less input from basic to start a specific slot? |
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
Posted: Fri Oct 07, 2011 2:33 pm Post subject: |
|
|
Hi e5frog,
A safe place would be at $02A7 (679).
Yes, I had address order messed up at first  you caught me before I had a chance to fix it up
Will have to send you an email soon and catch up  |
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 30 Apr 2009 Age: 38 Posts: 3465 Location: Sweden
|
Posted: Fri Oct 07, 2011 2:42 pm Post subject: |
|
|
I was thinking maybe you could store it on some ram on the cart maybe.
Don't remember any details really on the hardware structure.
What if you wrote the program, it was stored on the cart's memory and after you had reset you could just poke in a new slot number and run the program again - unless some other program used the same ram. |
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
Posted: Fri Oct 07, 2011 3:39 pm Post subject: |
|
|
e5frog,
I suppose you could modify the BASIC listing to store the machine code at $02A7 (679), and get rid of the SYS line.
From then on you just need to type:
POKE 686,128 (or other value from list)
POKE 691,0 (or other value from list)
SYS 679
If you just want the code to reside there until needed you could end the BASIC program with a NEW or maybe a SYS 64738.
The BASIC program could be saved, then the .PRG file can be programmed onto the Alien Flash (using AFGUI). |
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 30 Apr 2009 Age: 38 Posts: 3465 Location: Sweden
|
Posted: Fri Oct 07, 2011 4:04 pm Post subject: |
|
|
I tried that but I wasn't able to start it again after starting slot 2 and slot 0 of the cart. I guess if you have made the contents yourself in the different slots you could avoid using that memory area.
Didn't try new or the restart sys though.
So there's no ram in the cart itself where it could be saved just in case other programs use this area of ram for various unpacking routines or whatever? |
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
Posted: Fri Oct 07, 2011 5:33 pm Post subject: |
|
|
Yes, you can use the Alien Flash RAM  I am surprised the code at $02A7 got overwritten so easily  thought it would have been kinda safe to use. Are you able to jump onto IRC http://www.c64irc.com or irc.c64irc.com? |
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 30 Apr 2009 Age: 38 Posts: 3465 Location: Sweden
|
Posted: Fri Oct 07, 2011 5:59 pm Post subject: |
|
|
I've just tried with slot 2 where I have Last Ninja 3 and slot 0 where there's the minitools, don't know which one breaks it but neither works by itself.
Don't wonder as much for my own sake, I just reset and press button 1-F for another slot. But after trying a few times it started to get boring typing the program back in again. The 1541U-II doesn't have stand alone mode and I didn't feel like making place for the 1541-II on the table as well.
At least there's a way so the question has gotten an answer, the small routine can be placed in any memory area available really. The two mentioned are good ones. |
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
Posted: Fri Oct 14, 2011 12:23 pm Post subject: |
|
|
|
|
| Back to top |
|
 |
Newbie

Joined: 28 Sep 2011 Posts: 10
|
|
| Back to top |
|
 |
Master of C64


Joined: 02 Dec 2004 Age: 42 Posts: 1211 Location: Murkasada
|
Posted: Sun Oct 23, 2011 10:24 am Post subject: |
|
|
| Moloch wrote: | Payment sent!  |
Happy times, package arrived today with the AlienFlash inside. Now to find some goodies to put on it! |
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
|
| Back to top |
|
 |
Über Groupie


Joined: 14 Jul 2010 Posts: 353
|
Posted: Wed Oct 26, 2011 4:03 am Post subject: |
|
|
Alien Flash Transfer Program - A simple Windows app for programming the Alien Flash is available at the Alien Flash Wiki. This software is a prototype version, so may have some small bugs.
A nice feature is that you can Drag and Drop files (EasyFlash .crt, PRG files, D64 images and AR 4.1 up .crt images) into the .exe or icon to start the application.
When used with Alien Flash Tools (the default Alien Flash menu that comes on the Alien Flash) installed, it also allows you to custmize the ROM SLOT selection menu  |
|
| Back to top |
|
 |
Groupie in Training


Joined: 07 Nov 2002 Age: 38 Posts: 58 Location: Erlangen/Germany
|
Posted: Wed Oct 26, 2011 6:30 pm Post subject: |
|
|
Got mine today, thanks so much Stingray! The damn german customs charged me an additional 18 Euros of import tax, but what the heck. _________________ |
|
| Back to top |
|
 |
Grandmaster of C64


Joined: 10 Nov 2003 Age: 44 Posts: 2739 Location: Delaware, OH USA
|
Posted: Wed Oct 26, 2011 7:00 pm Post subject: |
|
|
I wrote the minitools stuff to my cart. Is there a way to get the standard menu back? _________________ My favorite game houses: Broderbund and Synapse. |
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 30 Apr 2009 Age: 38 Posts: 3465 Location: Sweden
|
Posted: Wed Oct 26, 2011 7:03 pm Post subject: |
|
|
| Stingray wrote: |
When used with Alien Flash Tools (the default Alien Flash menu that comes on the Alien Flash) installed, it also allows you to custmize the ROM SLOT selection menu  |
Nice feature, I've been wanting to have a list for some time now, can't seem to remember which stuff is where. |
|
| Back to top |
|
 |
Groupie


Joined: 21 Apr 2008 Age: 48 Posts: 189 Location: Austria
|
Posted: Thu Oct 27, 2011 11:46 am Post subject: |
|
|
Thanks Stingray, this is very useful for many users who had problems to flash AF.
German AlienFlash Wiki page updated ... _________________ |
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 30 Apr 2009 Age: 38 Posts: 3465 Location: Sweden
|
Posted: Thu Oct 27, 2011 8:53 pm Post subject: |
|
|
Looks great, glad you have improved your programming skills this much.
Would like a "Backup ROM SLOT" as well for the next release.  |
|
| Back to top |
|
 |
Immortal Grandmaster of C64


Joined: 30 Apr 2009 Age: 38 Posts: 3465 Location: Sweden
|
Posted: Thu Oct 27, 2011 9:02 pm Post subject: |
|
|
| jerrykurtz wrote: | | I wrote the minitools stuff to my cart. Is there a way to get the standard menu back? |
I made a backup of my slot 0 before I installed minitools, you can download it from here:
EDIT: Had an old version, not recommended to use.
Can't seem to program my backup to slot 0, after dropping the file on the icon I only get the options 1-F, do I need another crt ID than 32 for that (seem to recall something about 53 in some other file...)
Nope, but 53 ($35) is apparently an OK ID to program as well, what do we need to write to program slot 0?.
Aha... I can select slot 0 anyway but get a warning.
Nope didn't work, just a bunch of:
| Code: | RECEIVE DATA ERROR: 0 BYTES RECEIVED!
0x0
|
Used AFgui to change slot 0 back to the original version - really want the menu that has the contents listed. Minitools can be installed to slot 1 anyway IIRC. Worked right away, am I missing some driver for the D2xx mode?
Downloaded these:
http://www.ftdichip.com/Drivers/D2XX.htm
Didn't help, same error.
Had to rewind Windows after that since the new install messed up AFgui so I couldn't program anything at all. Perhaps it's necessary to uninstall the ftdi-drivers and re-install them to be able to use the d2xx?
Back to AFgui and minitools for now until there are some answers about this.
| Stingray wrote: | When used with Alien Flash Tools (the default Alien Flash menu that comes on the Alien Flash) installed, it also allows you to custmize the ROM SLOT selection menu  |
HOW!?
Last edited by e5frog on Fri Oct 28, 2011 10:13 pm; edited 1 time in total |
|
| Back to top |
|
 |
|