News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Devilmarkus

'CPCInAJar' emulator in exact 128k!

Started by Devilmarkus, 15:56, 12 January 11

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Devilmarkus

Hello guys,
my "CPCInABox" emulator is ready.



You'll find it here:
<Deleted>

(Amstrad CPC 6128 emulator in exact 128k!)

Don't change it with "CPCBox" ;)

Features:
- CRTC 0 / 1 emulation
- Accurate AY emulation
- Digiblaster and Amdrum emulation
- Autotype
- CDT/CSW Tape image supported (Read only!)
- DSK Disk image supported (Read only!)
- Can load SNA snapshots
- 2 Display-sizes (Doubleclick into Display to change size)

(Read more in README.TXT)
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Phi2x

#1
.

Devilmarkus

#2
Quote from: phi2x on 16:30, 12 January 11
:-\
That name looks like a blatant ripoff of some well known Amstrad CPC emulator... but nevermind.
As the saying goes, imitation is the fondest form of flattery. 8)


Hmmm really this was not my wish.
I already had the name in mind in 2008, where I begun partwise to code it...
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Phi2x

#3
.

Devilmarkus

#4
Pouet.net removed it :(
Argument: They dont accept emulators as prod... :(

But what is this?
http://pouet.net/prod.php?which=24547

Ahhhh a C64 "Breadolator" sure, that's something quite different!!! :(
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Gryzor

#5
Cuuuuute!!! Add scanlines please! Just loaded AE2010, pretty sweet :)

Devilmarkus

Quote from: Gryzor on 18:21, 12 January 11
Cuuuuute!!! Add scanlines please! Just loaded AE2010, pretty sweet :)

No scanlines, no nothing!
If I change something it has more/less than 128k!
And I want it exactly:
128 KB (131.072 Bytes)
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Gryzor

Make it in under 128kb and fill it with zeros :D

Devilmarkus

Quote from: Gryzor on 18:31, 12 January 11
Make it in under 128kb and fill it with zeros :D

No zeros!
I don't cheat ;)
(Ok I cheated, the jar is a bit compressed :D)
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Devilmarkus

Well...
10011111101111010111110101000010100101011  :police:

I removed a bug and so I also added scanlines (for Gryzor)

Was hard work to get 128k again! I swear!

Please download it HERE

readme:
CPCInABox by Markus Hohmann
Contact: webmaster@cpc-live.com

F1 - This info
F2 - Load medium*
F4 - Store temporary Snapshot
F5 - Load temporary Snapshot
F7 - Toggle Scanlines (When large)
F8 - Toggle CRTC type (0/1)
F9 - Toggle Turbo
F11 - Autotype console
F12 - Reset CPC

Joystick is mapped to:
<Insert> - Fire 0
<Page up> - Fire 1
<Home> - Up
<Page down> - Right
<End> - Down
<Delete> - Left

*Supported media:
DSK, SNA, CDT, CSW

Features:
- CRTC 0 / 1 emulation
- Accurate AY emulation
- Digiblaster and Amdrum emulation
- Autotype
- CDT/CSW Tape image supported (Read only!)
- DSK Disk image supported (Read only!)
- Can load SNA snapshots
- 2 Display-sizes (Doubleclick into Display to change size)


Have fun!
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Devilmarkus

#10
BTW.: CPCInABox of course can be used, too, on a website as applet!
Watch it!
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Gryzor

Oooh cool! We should use that in the wiki's front page! :D :D Quite efficient, too, it runs very fast at my work PC...

Devilmarkus

#12
Quote from: Gryzor on 09:08, 13 January 11
We should use that in the wiki's front page! :D :D

Simple:
<applet code="JCPC.ui.CPCInAJar.class" archive="CPCInAJar.jar" codebase="http://retropower.eu/CPCInAJar/" alt="CPCInAJar" width="384" height="272"></applet>

Of course, replace the codebase URL!!!

If you want a large applet:
<applet code="JCPC.ui.CPCInAJar.class" archive="CPCInAJar.jar" codebase="http://retropower.eu/CPCInAJar/" alt="CPCInAJar" width="768"   height="544"><param name="LARGE" value="TRUE"></applet>
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Gryzor

Got to dig into how you incorporate Java into Mediawiki again!

Devilmarkus

Quote from: Gryzor on 12:40, 13 January 11
Got to dig into how you incorporate Java into Mediawiki again!

I once embedded an applet in a normal CMS system.
I did that by just posting a stupid string. (E.g. "Who reads this is stupid")
Then I replaced this string in my database with html code...
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Gryzor

Quote from: Devilmarkus on 13:37, 13 January 11
I once embedded an applet in a normal CMS system.
I did that by just posting a stupid string. (E.g. "Who reads this is stupid")
Then I replaced this string in my database with html code...


I see what you did there! But I think MW is more clever than that - it actively checks to see what it is running... there are actual extensions to allow java to run under MW. Go figure! :)

Devilmarkus

#16
Btw.: CPCInABox has a few more parameters to define a dsk, sna, cdt, csw and also to define CRTC type and boot string...

e.g.:
<param name="LARGE" value="TRUE">    <---- use when you need a large applet (Also change its size then)
<param name="DISK" value="scratch.zip">    <---- Name for   dsk (or zipped dsk, 1 dsk max! put the file into subfolder file/)
<param name="DISKB" value="sideb.zip">    <---- Name for   dsk in drive B (or zipped dsk, 1 dsk max! put the file into subfolder file/)
<param name="SNA" value="snapshot.zip">    <---- Name for SNA (or zipped SNA , 1 SNA max! put the file into subfolder file/)
<param name="BOOT" value="-scratch">       <---- gives RUN"-scratch" on startup 
<param name="AUTOTYPE" value="|CPM">     <---- gives |CPM on startup. ("" not possible here) 
<param name="CRTC" value="1">            <---- sets to CRTC type 1 on startup


use DISK also for CDT or CSW tape images.
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Devilmarkus

#17
I am using a little php code like this:
<center>
<applet code="JCPC.ui.CPCInAJar.class" archive="CPCInABox.jar" codebase="http://retropower.eu/CPCInAJar/"  alt="CPCInAJar"

<?php
if (!empty($_GET['large'])){
    echo 
"width=\"768\" height=\"544\">\r\n";
    echo 
"<param name=\"LARGE\" value=\"TRUE\">\r\n";
} else {
    echo 
"width=\"384\" height=\"272\">";
}
        if (!empty(
$_GET['dsk'])){
            
$load $_GET['dsk'];
            echo 
"<param name=\"DISK\" value=\"".$load."\">\r\n";
            }
        if (!empty(
$_GET['dskb'])){
            
$load $_GET['dskb'];
            echo 
"<param name=\"DISKB\" value=\"".$load."\">\r\n";
            }
        if (!empty(
$_GET['sna'])){
            
$load $_GET['sna'];
            echo 
"<param name=\"SNA\" value=\"".$load."\">\r\n";
            }
        if (!empty(
$_GET['type'])){
            
$boot $_GET['type'];
            echo 
"<param name=\"AUTOTYPE\" value=\"".$boot."\">\r\n";
            }
        if (!empty(
$_GET['boot'])){
            
$boot $_GET['boot'];
            echo 
"<param name=\"BOOT\" value=\"".$boot."\">\r\n";
            }
        if (!empty(
$_GET['crtc'])){
            
$boot $_GET['crtc'];
            echo 
"<param name=\"CRTC\" value=\"".$boot."\">\r\n";
            }

?>

</applet>
</center>
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Gryzor

Yes, but you cannot add php code to a wiki page, which is itself the product of php code...

robcfg

Hi, Markus!


Great work! There is though a thing I noticed that doesn't work right: the cursor keys.


I loaded Orion Prime, and works ok, even the disc routines, but I cannot move the cursor to play it.


In basic they appear to work ok.




Devilmarkus

#20
Hi robcfg,
the cursor keys work well for me in OP.
Use cursor keys & space key.
(Or use the mapped joystick as described in F1-info)

I know the FDC has problems to read OP properly. So sometimes it can fail!
So, no worries, when it freezes.
CPCInABox has very basic FDC emulation.
(Like JavaCPC, too :( )

Problem makes the <copy> key in CPCInABox.
It's mapped to "ALT" key and this opens application's menu.
So you always have to press it twice.
(Or I need to map it to a different key, which is not easy because almost all keys are already mapped, because 4 keyboard localizations: EN, FR, ES and DE)
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Devilmarkus

#21
Emulator update!
1 bug in CRTC emulation fixed (Don't expect too much please)
DSK is stored now, when data is written to it! (Works as "Standalone" only of course)
Formatting is not included!

Download: <Deleted>
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Devilmarkus

#22
To not confuse phi2x:
I renamed my emu ;)
It's called CPCInAJar now!



All other downloads I deleted.

Added: Disk storing must be enabled (check readme or press F1 for help)

Readme:
CPCInAJar by Markus Hohmann
Contact: webmaster@cpc-live.com

F1 - This info
F2 - Load medium*
F3 - Enable/disable DSK storing (Off by default)
F4 - Store temporary Snapshot
F5 - Load temporary Snapshot
F7 - Toggle Scanlines (When large)
F8 - Toggle CRTC type (0/1)
F9 - Toggle Turbo
F11 - Autotype console
F12 - Reset CPC

Joystick is mapped to:
<Insert> - Fire 0
<Page up> - Fire 1
<Home> - Up
<Page down> - Right
<End> - Down
<Delete> - Left

*Supported media:
DSK, SNA, CDT, CSW

Features:
- CRTC 0 / 1 emulation
- Accurate AY emulation
- Digiblaster and Amdrum emulation
- Autotype
- CDT/CSW Tape image supported (Read only!)
- DSK Disk image supported (Read only!)
- Can load SNA snapshots
- 2 Display-sizes (Doubleclick into Display to change size)


Download:
Download CPCInAJar

So also the html code changes:
http://cpcwiki.eu/forum/index.php/topic,1871.msg18106.html#msg18106
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

TFM

Amazing!!! And for sure the best one of its kind!!! Thanks Markus!
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus

Phi2x

#24
.

Powered by SMFPacks Menu Editor Mod