CPCWiki forum

General Category => Emulators => Topic started by: Devilmarkus on 22:46, 25 December 09

Title: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:46, 25 December 09
Hi guys,
I had not really the time to finish coding the latest JavaCPC version,
but because we have christmas, I will present you a pre-BETA of the new version.

(http://cpc-live.com/javacpc_desktop_small.png) (http://cpc-live.com/javacpc_desktop.png)
(Click to view in fullsize)

Please regard:
- This is a BETA preview of the upcoming version
- Many things have not cleaned-up yet (Especially the 'menu'!!!) So don't wonder, if you get in trouble using the old features...
- It is strongly recommended that you choose "Desktop version"!!! (Classic emu has not been tested yet)
- Min. System-requirements: - about 2,0ghz and better!
- Last, but not least: It's really important that you commit every bug you find... Please help me finding bugs...

Download here:
http://cpc-live.com/JavaCPC_beta_WIN32.rar

Into this package is a DSK included called "flip-slide.dsk"
- this is a 800k Parados DSK containing 22 flip-screens viewable best with "De-Interlace" feature! (You find this button @ bottom of JavaCPC Desktop)

And now:
Merry Christmas to ALL CPC-Fans around the globe!!!
Markus
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:14, 31 December 09
Actually working on a new Animated-GIFcapture tool for JavaCPC.
This allows to create animated GIFs now with an acceptable framerate. (Without Emulator slowdown)

Example is here (http://cpc-live.com/capture.gif) (ca. 7,5mb, best viewed with Firefox)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 10:32, 04 January 10
Ah damn! I had missed that!!!! What a pity I don't have JVM here at work :( :( :(
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:02, 29 January 10
BETA update: http://devilmarkus.de/desktop.rar
please report bugs here...
(I cannot fix things which work on my system)
Please don't report bugs about the menu! It needs to got re-arranged.

You cannot choose the "BlackEye" theme!

Cheers,
Markus
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 19:36, 02 February 10
Quote from: Devilmarkus on 13:02, 29 January 10please report bugs here...

I'll just say this: i tried using javacpc in my 10"-screen netbook (1024x600). Need i say more? :)

Ok, maybe i need to. The emulator window appears to be located at position [-something, -something] (only part of it appears inside the master window, which makes it unusable). Also, the master window should contain scrollbars because not all icons are visible in that resolution. I'll try to make some more tests, probably in the next beta, if the emulator window location issue is solved.

Finally, in that resolution, the Settings menu, when open,  it overlaps the menus to its right (Monitor, Extras, Help)

In general, javacpc looks promising. Keep it up devil... ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:00, 08 February 10
Quote from: Wanderer on 19:36, 02 February 10
I'll just say this: i tried using javacpc in my 10"-screen netbook (1024x600). Need i say more? :)

1024 x 600? Wow.... Do you breast-feed it?  ::)
Maybe it'll grow then ;)

No, really,
I don't know if it makes sense to run an emulator @ this resolution.
But I re-arranged some things in JavaCPC so it should be possible to run it @ 800x600, too...
You will also be able to run it as "classical" emulator without desktop in it's own frame.

I really wonder that it works on such a netbook / notebook...  8)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 11:06, 08 February 10
Quote from: Devilmarkus on 11:00, 08 February 10
1024 x 600? Wow.... Do you breast-feed it?  ::)
Maybe it'll grow then ;)

:) My little one insists on running JavaCPC, how can i say no to it?

Quote from: Devilmarkus on 11:00, 08 February 10I don't know if it makes sense to run an emulator @ this resolution.

Why not? It's powerful enough. Unfortunately netbooks don't have greater resolutions (yet).

Quote from: Devilmarkus on 11:00, 08 February 10But I re-arranged some things in JavaCPC so it should be possible to run it @ 800x600, too...
You will also be able to run it as "classical" emulator without desktop in it's own frame.

Great thanks. I'll try the next beta then.

Quote from: Devilmarkus on 11:00, 08 February 10I really wonder that it works on such a netbook / notebook...  8)

I'll grab a picture and post it here. Things are too tight as you can imagine.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 17:56, 11 February 10
I am also creating a new RGB - filter.
Maybe you know the RGB filter used in DosBox.
It reproduces the output image with the following pixel rules: (2x zoom)
1 Pixel is splitted to:

R  |G
-------
B  |rgb

Together with Kevin I managed to create this filter now for JavaCPC and WebCPC, too.
Running with 50fp/s on my system.

Here's a screenshot:
(http://cpc-live.com/rgbfilter.png)

I like this!!! :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:09, 11 February 10
Let's have a closer look:
(http://cpc-live.com/rgbcloser.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 18:25, 11 February 10
Quote from: Devilmarkus on 18:09, 11 February 10
Let's have a closer look:
(http://cpc-live.com/rgbcloser.png)
ouch my eyes. too close!  ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 19:27, 11 February 10
Quote from: Devilmarkus on 18:09, 11 February 10
Let's have a closer look:

:o :o :o  :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:11, 12 February 10
Come on guys, this can show cool effects:

- CRT filter + Monitor blend + De-interlacing:

(http://cpc-live.com/crtfilter.png)

You can also disable everything.... ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:28, 12 February 10
Some more:
(http://cpc-live.com/crt1.png)
(http://cpc-live.com/crt2.png)
(http://cpc-live.com/crt3.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 19:49, 12 February 10
Quote from: Devilmarkus on 18:11, 12 February 10
Come on guys, this can show cool effects

Wow. Nice (as long as it's not too close ;) ).
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:28, 15 February 10
Just improving JavaCPC - Paint.
New / changed features:
- Green/Grey screen rendering possible (in up to 16 green tones)
- Rendering to every palette you want possible now
- Simple zoom-window (To view closer, what you are pixeling)
- New Soft/Sharpen effect for imported screens
- You are able now to work on up to 20 screens simulteanously! No image will be lost, all are stored and reloaded when you relaunch the emu, so you can continue pixelwork.
- Better brightness slider to improve your image conversions
- New display handling routines
- New conversion algorithm (You will always get the best result)

Screenshot:
(http://cpc-live.com/new_paint_thumb.png) (http://cpc-live.com/new_paint.png)
(click to watch)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 01:45, 18 February 10
Working on overscan images!
The algorithm works already perfect now...
Need to optimize some routines (because the emu runs @ 90% CPU useage @ moment) :o

Here you can see a test screenshot of an overscan image I rendered:
(http://cpc-live.com/overscantest.png)

http://cpc-live.com/overscan_editor.png
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:24, 24 February 10
Working on a Z80 assembler...
It can already compile some simple programs.
(It's really very hard for me to code the parser from scratch....)

Many things still to do (Labels work basic only, EQU the same, parsing ALL instructions etc...)

Here's a preview:
(http://cpc-live.com/assembler.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:48, 25 February 10
Making progress:
http://cpc-live.com/asmtest/

Still many things to do :(

- Undocumented Instructions
- better parsing of labels
- DB,DEFB,DW etc... need improvements
- and so on......

I'm sure I'll finish it in 2090 or so :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 01:52, 27 February 10
Made lot progress today with the Z80 Assembler!

Who wants to help me to debug it?
It already can compile about 80% accurate.
I need better knowledge about undocumented instructions and pasmo/maxam specific commands.


Here you can watch an actual video:
http://cpc-live.com/javacpc_assembler/
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 13:27, 01 March 10
Very impressive stuff, especially the images... the filter is very interesting, before I saw your close-ups I was struggling to imagine how it works and what it does in the first pics...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:41, 01 March 10
Quote from: Gryzor on 13:27, 01 March 10
Very impressive stuff, especially the images... the filter is very interesting, before I saw your close-ups I was struggling to imagine how it works and what it does in the first pics...

Well the green and grey screen also profit from new display filters:
http://cpc-live.com/climaxg/ (66mb video !!)

Used filters:
- Scanlines
- Full gatearray emulation (768 * 544 pixel)
- SuperPALfilter
- Deinterlace filter

JavaCPC uses 544 vertical lines now. This doesnt make it slower on most machines.
(Older JavaCPC only used 270/272 vertical lines)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 13:44, 01 March 10
Arghhhhhh piss on that f*cked up line here at work! WIll watch it at home... :(
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:53, 08 March 10
Making some progress with my assembler:
http://cpc-live.com/xilen/

It's getting better!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 18:38, 08 March 10
Like magic :)

But why is the game running so slowly? Is it the video or something?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:50, 08 March 10
Humm slow?
Check it with WinAPE assembler:
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 19:10, 08 March 10
Hmmm, dunno, maybe it's the game itself? But it seems to be totally un-smooth and erratic...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:43, 12 March 10
Just finished:
A simple Poke-Finder (like Action Replay)
(http://cpc-live.com/pokefinder.png)

Maybe helpful to find some cheats...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 13:04, 19 March 10
Hehhh! I remember some DOS memory trap programs that did the same job... I should try it just for the heck of it!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:51, 02 April 10
Hi guys,
yesterday & today I improved the digiblaster emulation in JavaCPC.
I added a pseudo-stereo-effect.
This sounds much better now.
You'll be able to set the delay timing in options.
Example: (Yes, it's real CPC music!)
http://cpc-live.com/kraftwerk.zip (http://cpc-live.com/kraftwerk.zip)
http://cpc-live.com/gowest.zip (http://cpc-live.com/gowest.zip)
http://cpc-live.com/sweetdreams.zip
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:55, 02 April 10
Example:
[cpc=http://cpcwiki.eu/forum/index.php?action=dlattach;topic=484.0;attach=440,none,1]CPC6128[/cpc]
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 17:14, 02 April 10
This is nuts... I'll say it again, this is Amiga-level tunes... Only Go West is a bit loud, resulting in what appears to be heavy clipping, but it's so impressive!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 17:55, 02 April 10
Right, all songs are converted from amiga.
http://cpc-live.com/silkworm.zip
Another well known tune
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 17:59, 02 April 10
Oh cr@p, hadn't listened to that in ages... I used to be so good, on the CPC, I would play it for hours controlling both the jeep and the heli and never lose... or was it so easy?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:47, 03 April 10
Some more MDL's I made: (1-1 conversion from Amiga-MODs)
[cpc=http://cpcwiki.eu/forum/index.php?action=dlattach;topic=484.0;attach=446,DIGITRAK,1]PARADOS[/cpc]

Instructions:
- Disable Joystick input (In Emulator)
- Wait until Digitracker has loaded
- Press "." on right numberpad twice (Until "Out at: D" is shown in Digitracker)
- Use cursor keys & Enter to load a song and play it (ESC to go back to main menu)
- Have fun
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 21:25, 05 April 10
Quote from: Devilmarkus on 17:55, 02 April 10
Right, all songs are converted from amiga.
http://cpc-live.com/silkworm.zip (http://cpc-live.com/silkworm.zip)
Another well known tune

That's so cool, loving it  8)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 06:29, 09 April 10
Quote from: Devilmarkus on 17:55, 02 April 10
Right, all songs are converted from amiga.
http://cpc-live.com/silkworm.zip
Another well known tune

Nice! :) Brings back some memories... ::)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:29, 17 April 10
Just added a format disk dialogbox where you are able to create different formatted DSK:

(http://cpc-live.com/format1.png)

(http://cpc-live.com/format2.png)

If no DSK is in actual drive you want to format, a new DSK can be created with selected options.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:47, 19 April 10
This is really useful - it's actually two features in one: a disk creator and a disk formatter... thanks :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: nurgle on 14:41, 19 April 10
That reminds me when someone in the csa8 newgroup did'nt know how to format a DSK, someone else provide an empty preformatted disc image for download. Pretty cool idea, downloading empty discs! Or maybe not?  ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:50, 19 April 10
Quote from: nurgle on 14:41, 19 April 10
That reminds me when someone in the csa8 newgroup did'nt know how to format a DSK, someone else provide an empty preformatted disc image for download. Pretty cool idea, downloading empty discs! Or maybe not?  ;)

Well, other emulators, I think, use a real format routine to do that.
I use preformatted empty dsk (They find their place inside the .jar file)
22 DSK images but compressed 95k only.
Positive aspect is: size of old dsk doesnt matter... It will always be formatted accurate.
Also positive is: You can simply create a new DSK using your selected format.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 05:22, 20 April 10
Hi Devilmarkus.

I'd really like to see what you've been up to the last few months. Should we expect a new beta released soon?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:32, 20 April 10
Quote from: Wanderer on 05:22, 20 April 10
Hi Devilmarkus.

I'd really like to see what you've been up to the last few months. Should we expect a new beta released soon?

Well, here you go:
Download JavaCPC build 2010-04-20 (http://cpc-live.com/javacpc_6_8_beta.zip)

Please, to all testers, report bugs, and also positive/negative feedback.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Cpcmaniaco on 09:42, 20 April 10
Can you add the Vortex format too?

Thanks.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:10, 20 April 10
Quickly added Vortex format (double sided, 80 tracks), too.

Download JavaCPC build 2010-04-20 (http://cpc-live.com/javacpc_6_8_beta.zip)

I also added both Vortex-roms: 1.0 and 2.0
Please notice:
AFAIK Vortex-roms only support CPC 464 rom set.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:30, 20 April 10
Formatting works, too, in JavaCPC :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 17:28, 20 April 10
Quote from: Devilmarkus on 09:32, 20 April 10Well, here you go

:) Great. Thanks for the beta. I'll check it and report impressions.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 18:41, 20 April 10
OK, the first time it froze on startup but after killing and restarting it, it loaded nicely all times i tried it.

Observations:

1. On startup, even though keyboard noises are disabled, it performs noise on key click. Selecting and deselecting "keyboard noises" from the menu solves this issue.

2. It seems that the data shown on screen when "observe performance" is selected are overlapping the actual screen when "simple screen size" is selected. I've tried this in my netbook and i couldn't try a larger setting but i'm guessing the same problem may exist in "triple screen size" too.

3. On startup, even though "observe performance" is unchecked, performance info are being shown on screen for a few seconds. The same seems to happen when JavaCPC receives focus.

4. Menus "CRTC type" and "Memory", even though they seem to have submenus, they don't appear.

Found these so far. I'll keep playing with it later.

Thanks again for the beta. Working really nice even in my netbook (not the best speed but still, it's working).
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:48, 20 April 10
Quote from: Wanderer on 18:41, 20 April 10
1. On startup, even though keyboard noises are disabled, it performs noise on key click. Selecting and deselecting "keyboard noises" from the menu solves this issue.

I know, is on my TODO list ;)

Quote
2. It seems that the data shown on screen when "observe performance" is selected are overlapping the actual screen when "simple screen size" is selected. I've tried this in my netbook and i couldn't try a larger setting but i'm guessing the same problem may exist in "triple screen size" too.

Please email me a screenshot. devilmarkusATcpcwiki.eu

Quote
3. On startup, even though "observe performance" is unchecked, performance info are being shown on screen for a few seconds. The same seems to happen when JavaCPC receives focus.

That's right!
FPS and CPU speed is shown always for 2 seconds when CPU resyncs!
(And on startup)
This has nothing to do with focussing/un-focussing the display.
Emulator does a resync when you load a dsk, or change some settings like roms etc...
It also resyncs when performance gets too low.
The "Observe Performance" option is only for setting JavaCPC to low performance system when there are too many resync's in a measured time.

Quote
4. Menus "CRTC type" and "Memory", even though they seem to have submenus, they don't appear.

I know this, too.
Most menu's will be removed in final release. And replaced by config dialog.

Quote
Found these so far. I'll keep playing with it later.

Thanks again for the beta. Working really nice even in my netbook (not the best speed but still, it's working).

Have fun ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 19:06, 20 April 10
Quote from: Devilmarkus on 18:48, 20 April 10Please email me a screenshot.

Posting part of the screen here, as an attachment.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:14, 20 April 10
Ok I see.
It's normal.
(Perhaps I will move the info a bit later)

BTW:
Here some info about the control panel @ bottom of the JavaCPC-Desktop:
(http://cpc-live.com/controlpanel.png)

You can see the "Resync" button.
Use it when music sounds crappy.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:23, 21 April 10
Never had to use the resync button myself...

Btw, it'd be cool to have a tape counter instead of a tape led :D Or maybe (I haven't loaded a tape image so I don't know what it does) the tape led could alternate between two colours (or one colour with two different intensities) for the high and low sounds :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:08, 21 April 10
Quote from: Gryzor on 08:23, 21 April 10
Btw, it'd be cool to have a tape counter instead of a tape led :D Or maybe (I haven't loaded a tape image so I don't know what it does) the tape led could alternate between two colours (or one colour with two different intensities) for the high and low sounds :)

- Tapedrive has a counter. Just open it.
- The emulator itself has a counter. See under the CPC-screen.

About the colours for the LED.
What do you think? If I would load a tape with 1 baud speed, you probably could notice 3 or 4 different colours.
Title: Re: JavaCPC Desktop available as BETA!
Post by: robcfg on 09:25, 21 April 10
Do the floppy leds work?


I tried yesterday the tape drive, but I tried some games and didn't see the leds flashing.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:29, 21 April 10
Quote from: robcfg on 09:25, 21 April 10
Do the floppy leds work?


I tried yesterday the tape drive, but I tried some games and didn't see the leds flashing.

All LEDs should work.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:51, 21 April 10
The tape control buttons @ bottom of the desktop app are only additional. (There was empty space and I filled it with control buttons)
They disappear when screen resolution is not high enough.
The counter under the emulator window can be extended to use as control panel, too.
Just hover your mouse above the [<>] button and control panel opens up.

(http://cpc-live.com/minidesktop.png)
So the desktop should also be usable on netbooks ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:47, 21 April 10
Quickly fixed 2 bugs:
- CRTC 1 bug fixed (not so important, I only know s&koh demo, where it appeared)
- Small Z80 Assembler fix (command CP 'x' was not recognized correctly)

Download:
Whole package:
Downlod here (http://cpc-live.com/javacpc_6_8_beta.zip)
Patched .jar file only (to replace yours):
Downlod here (http://cpc-live.com/javacpc_6_8_beta_patch.rar)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:56, 25 April 10
Coded a new palette for GT6x green screen emulation.
The result looks much closer to the original monitor image.

Thanks to Grim, who gave me the new palette values:
        0x14580F, 0x165C11, 0x1A6115, 0x1C6417,
        0x1E6819, 0x226D1D, 0x277421, 0x297723,
        0x2D7C27, 0x33852C, 0x36892F, 0x3A8F33,
        0x3C9335, 0x409738, 0x439C3B, 0x48A440,
        0x4BA742, 0x4EAC45, 0x54B44B, 0x57B94E,
        0x5BBE51, 0x5DC153, 0x60C656, 0x64CB59,
        0x68D15D, 0x69D25E, 0x6AD45F,
        0x3F9637, 0x297723, 0x6CD761, 0x165C12,
        0x58BA4E

(From INK 0 to INK 31)

(http://cpc-live.com/soleilvert1.png)

Same with scanlines:
(http://cpc-live.com/soleilvert2.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:45, 25 April 10
Used JavaCPC Paint to convert a GIF image to 3 different formats:   (Overscan)
(http://cpc-live.com/conversion_colour.png)

(http://cpc-live.com/conversion_monochrome.png)
   
(http://cpc-live.com/conversion_green.png)

Original   image:
(http://cpc-live.com/cheetah-closeup.gif)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 15:59, 25 April 10
Green looks better than ever :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:59, 26 April 10
Game example: Dragon's Lair on emulated GT6x monitor:
(http://cpc-live.com/dl1.png)

(http://cpc-live.com/dl2.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 14:15, 26 April 10
A bit washed-out? Needs more contrast...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:26, 26 April 10
Remember: the GT6x monitor also had poor contrast!
But you can slide brightness (also in emulator)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:31, 26 April 10
Experimenting with 4096 colours:
(http://cpc-live.com/screen.png)

Now I will try to code a routine to find the 16 best matching colours out of an array of 4096 colours to create CPC+ screens, too
(Not so easy because JavaCPC cannot emulate the +!)
                 
Photoshop result would look like:
(http://cpc-live.com/screen2.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:44, 27 April 10
Thanks to Executioner, Kevin and Bryce I got this fu**ing 'scan' command   working in FDC emulation:
(http://cpc-live.com/format_scan.gif)

*happy*
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 18:47, 27 April 10
Hahaha! Good for you man :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:43, 27 April 10
Updated BETA:
Download (http://cpc-live.com/javacpc_6_8_beta.zip)

- New green screen emulation
- FDC command SCAN added
- some Z80 Assembler bugfixes

Sources downloadable from SVN repository:
http://javacpc.svn.sourceforge.net/viewvc/javacpc/
Title: Re: JavaCPC Desktop available as BETA!
Post by: Ynot.zer0 on 10:45, 28 April 10
Okay, so what am I doing wrong?


I downloaded the source code from here: http://www.cpctech.org.uk/source/shftspr.asm (http://www.cpctech.org.uk/source/shftspr.asm)
I downloaded the JavaCPC Desktop (which I am now realising is a really cool thing to have running on my desktop).
I opened the Z80 Assembler, I pasted in the code from above and pressed Compile, it complains of >600 Errors then if I wait it does a second pass and I just get the 3 errors (as shown in the 2nd screenshot).


Do I need to setup some other configuration settings to be able to compile? (I have Exact Maths checked in the Edit menu)

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:49, 28 April 10
I don't know, what went wrong.
I did the same, worked with exact maths and also without...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Bryce on 10:53, 28 April 10
Different compiler version?

Bryce.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:57, 28 April 10
Quote from: Bryce on 10:53, 28 April 10
Different compiler version?

I am using exact the latest version as I posted here...
http://cpc-live.com/javacpc_6_8_beta.zip (http://cpc-live.com/javacpc_6_8_beta.zip)

But please make sure you also use it. I updated this zip yesterday!

Edit: just seen this:
QuoteI opened the Z80 Assembler, I pasted in the code from above and pressed   Compile, it complains of >600 Errors then if I wait it does a second   pass and I just get the 3 errors (as shown in the 2nd screenshot).

JavaCPC's assembler normally ignores all errors in first pass! So I really wonder how it could show about 600 error messages....
Title: Re: JavaCPC Desktop available as BETA!
Post by: Ynot.zer0 on 11:10, 28 April 10
and I downloaded it yesterday morning.... oh damn, okay, I just re-downloaded again and it works okay now.  How unlucky was I?!

cool, all works nicely now.  Thanks!




p.s. it must be too early for me, it now says '6 ERRORS', I swear it said 601 or something earlier - cannot get it to repro now though (typical) - although using the latest latest zip version all works okay
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 11:11, 28 April 10
Quote from: ynot.zer0 on 10:45, 28 April 10
Okay, so what am I doing wrong?
Not sure. this is what I did.

I clicked on the link to show the source.

Select All, and then copy.

Opened javacpc.exe
Went to assembler window
create new file
paste
compile

call &1000 in window :)

EDIT: Cool it works now.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:18, 28 April 10
The bug was:
Old assembler had a bug in parsing bytes.
In this case the value is negative (-xx)
JavaCPC found 0 as result.
This is fixed in the latest version.
(Internally it was calculated well, but compiler did not remove the minus-sign so it returned 0 as byte)

Another bug was in parsing LD A,(value).
My code "searched" for 'IX' and replaced it by 0.
This was bad because the source contained 'SPR_PIXEL_OFFS'.
So the internal result was 'SPR_P0EL_OFFS' which would be a non-defined label.
I fixed that, too.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:23, 03 May 10
Comparing emulated green screen with original GT-65 image:
(The image is a bit too bright here, should be a bit darker)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:40, 03 May 10
Working on new screen capturing method.
You are able to store with 50fp/s single frames now!
Then you can convert them to an animated GIF or keep them as single files.

In my test I kept the single files. (18.000 jpg images for 6 minutes video)
Then I used some software to render a video of them. Also mixed audiostream under the video.
Result:
[youtube=hXoIq4mWGhg]hXoIq4mWGhg[/youtube]
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:21, 03 May 10
Better quality video I can show on request. (PM me)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:00, 04 May 10
I saw your vid last night, thanks for that :) I wish it was in higher resolution, it just doesn't do it justice like that... but the recording method is great news :)

In the composition above the screen is too bright indeed, but looking at them side-by-side the emulated one doesn't look to realistic to me... am I the only one?
Title: Re: JavaCPC Desktop available as BETA!
Post by: ukmarkh on 11:02, 04 May 10
At 4:12 in your video, an object spins back and forth giving a form of depth perception... does anyone know if this could be done for an end of level boss in a shoot-em-up for the CPC? Hopefully you guys understand what I'm on about, but basically not only would the end of level enemy move up and down to avoid fire, but in and out as well? 
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 12:55, 04 May 10
Quote from: ukmarkh on 11:02, 04 May 10
At 4:12 in your video, an object spins back and forth giving a form of depth perception... does anyone know if this could be done for an end of level boss in a shoot-em-up for the CPC? Hopefully you guys understand what I'm on about, but basically not only would the end of level enemy move up and down to avoid fire, but in and out as well?
This is a crtc hardware trick. Where the same line of the screen is effectively repeated, and the start address is changed to give the line width.

so this effect could not be used directly in a shoot em up on the cpc.

You would have to simulate it using software.
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 12:56, 04 May 10
Quote from: arnoldemu on 12:55, 04 May 10
This is a crtc hardware trick. Where the same line of the screen is effectively repeated and the start address is changed to point to various line widths to give the illusion of 3d. It is done very nicely.

so this effect could not be used directly in a shoot em up on the cpc.

You would have to simulate it using software.

EDIT: I should have used modify there ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: ukmarkh on 14:21, 04 May 10
I really wanna see demo's that show what can be done in a game on the CPC, not what can't be done. Still very interesting stuff.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:37, 09 May 10
BETA-update:
http://cpc-live.com/javacpc_6_8_beta.zip (http://cpc-live.com/javacpc_6_8_beta.zip)

New: The emulator is doing some manual patches to CRTC when some demos are found in ram.
This you can disable now.

Also some CRTC improvements (The beta before had many CRTC bugs...)

I still know about the problems with the menu and rest of the GUI. I hope I can fix them all!
(Perhaps a JAVA-coder want to take a look @? ??? )

For the coders:
I updated SVN code on sourceforge:
http://sourceforge.net/projects/javacpc/develop
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:27, 11 May 10
I updated the beta.
Feel free to download the latest.

It also includes SamDisk GUI...

Important info:
In this beta I added a "soft reset" function - like on a real CPC "ctrl,shift,esc" keys!

Soft reset is ctrl + F9
the normal hard reset is now ctrl + shift + F9!
So don't wonder, when some games/demos/apps dont reset or, for example, "Super Cauldron" returns to menu when pressed reset while playing!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 18:39, 12 May 10
SAMdisk in the emulator? Brilliant... this is an all-around tool now:)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:44, 13 May 10
Working on DSKTools...
Sadly for Windows-users only!

A simple java app in cooperation with cpcxfs!
This will help you to transfer files to DSK / files from dSK to your harddrive:
(http://cpc-live.com/disktools.gif)
Title: Re: JavaCPC Desktop available as BETA!
Post by: CPCIak on 18:24, 18 May 10
Hi Markus, one bug I've told you isn't fixed yet:
After opening a DSK in JavaCPC I've got to choose drive a triple!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:28, 18 May 10
Quote from: CPCIak on 18:24, 18 May 10
Hi Markus, one bug I've told you isn't fixed yet:
After opening a DSK in JavaCPC I've got to choose drive a triple!

Well triple?
I only saw double yet.
I am working on it... Need to check why a function is called twice or triple...
Title: Re: JavaCPC Desktop available as BETA!
Post by: CPCIak on 18:42, 18 May 10
Yes, three times  :(
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:44, 18 May 10
Quote from: CPCIak on 18:42, 18 May 10
Yes, three times  :(

Explain please, when this happens.
Which drives are already feeded with dsk, also a tape in drive etc....
Does this only appear when you open a dsk with JavaCPC.exe?
Does this also appear when you drag & drop a dsk into emulator window?

Please try to explain it as detailled as possible.
Title: Re: JavaCPC Desktop available as BETA!
Post by: CPCIak on 18:49, 18 May 10
JavaCPC status: no tape nor disc loaded

drag&drop -> once
file->open with javacpc-> triple
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:50, 18 May 10
Quote from: CPCIak on 18:49, 18 May 10
JavaCPC status: no tape nor disc loaded

drag&drop -> once
file->open with javacpc-> triple

I had double when opened a dsk with it... Ok, will check that...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:49, 18 May 10
Found the problem:
When no disk stored in drive, I was asked once.
When disk in A and/or B I was asked twice.
When also a tape in drive i was asked triple!

I think I also know where the problem can be found in code.
It's a old code I used in the beginning.
Crappy and bad.
Will code a new load-dsk routine.
Is a lot of work but I think the only way to fix it...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:38, 18 May 10
I hopefully fixed this bug by rewiting the complete method to import files:

http://cpc-live.com/javacpc_6_8_beta.zip

Please tell me if it works properly now.
Title: Re: JavaCPC Desktop available as BETA!
Post by: CPCIak on 16:22, 21 May 10
You managed it Markus! Thanx for correcting the bug.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:15, 24 May 10
Hopefully fixed some more bugs.
http://cpc-live.com/javacpc_desktop_beta.zip (http://cpc-live.com/javacpc_desktop_beta.zip)

New:
- Manage DSK (replaced format function, you can use it as DSK manager on the fly. Changes on your DSK are immideately updated in emulator, too)
- Fullscreen mode for Desktop (Use Alt & Enter to toggle)
- Self createable style added
- Removed ALL Synthetica styles because no donations and I want it as freeware!
- Default style looks better now
- Fixed the virtual keyboard to work with the styles
- Much more....

Please report bugs, feedback, etc...
(The menu still is not cleaned up!)
Title: Re: JavaCPC Desktop available as BETA!
Post by: CPCIak on 16:51, 24 May 10
I've found some bugs

extras -> key2joy -> nothing happens
settings -> advanced options -> gui is empty
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:54, 24 May 10
Quote from: CPCIak on 16:51, 24 May 10
I've found some bugs

extras -> key2joy -> nothing happens
settings -> advanced options -> gui is empty

As I said: Menu is not cleared up yet...

Humm Joy2Key should work.
Make sure you have a joystick connected.
For me it tells I should connect a Joystick :D

Working on a help documentation:

http://cpc-live.com/help/ (http://cpc-live.com/help/)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:36, 27 May 10
Working on a new fileformat to store keyboard input...
With the new method, also a snapshot is taken, and the disks for drives 0 and 1 are stored, too.

You can watch a preview for playback here:
http://cpc-live.com/keyrecording.html

I am storing all keyboard input and when loading such a SNK snapshot, it's played back...

If someone is interested in the fileformat (header, how I store keystrokes etc) contact me ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 01:35, 28 May 10
Quote from: Devilmarkus on 12:36, 27 May 10
Working on a new fileformat to store keyboard input...

We already have one (or is that two?)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 01:53, 28 May 10
Well, I know CPCe and WinAPE can record and playback keystrokes, too.
I am @ beginning on implementing it.
The main problem is accurate timings.

http://cpc-live.com/snptest.html

The playback works almost nice yet.

Recording is not implemented yet.

About timings and ramdomness in games I did not heck out, how to reset all timers etc. to playback those things accurate, too... :(
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:55, 28 May 10
Grrrrrr this snp format makes me mad!
Recording works about 95% accurate...
Playback is about 89% accurate!
(http://cpc-live.com/data.gif)
Grrrrrrrrrrr!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 01:27, 29 May 10
Quote from: Devilmarkus on 18:55, 28 May 10
Grrrrrr this snp format makes me mad!
Recording works about 95% accurate...
Playback is about 89% accurate!

That's why I created the much more complex SNR format. Starts with a V3 snapshot and has various cycle level checks.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:34, 30 May 10
Quote from: Executioner on 01:27, 29 May 10
That's why I created the much more complex SNR format. Starts with a V3 snapshot and has various cycle level checks.

Any docs about this format?
Would be cool to know how it works... ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 07:16, 02 June 10
Quote from: Devilmarkus on 16:34, 30 May 10
Any docs about this format?
Would be cool to know how it works... ;)

Err... Not really complete. There is a document on the initial SNA Version 3 format here (http://www.cpctech.org.uk/docs/snapshot.html)

And then the format is very similar to the SNP format but with some extras. I'll have to hunt for any documentation, or failing that analyse the source code to create it.

Here's the headers from WinAPE which define the SNA V3 format:


  { TODO: Save Disc Image names, active ROMs, CPC Plus Raster Int flag }
  { TODO: PS2 Mouse X/Y and Button states in SNR }

const
  HeaderSNA: String = 'MV - SNA';
  HeaderSNP: String = 'MV - SNP';
  HeaderSNR: String = 'RW - SNR';

  CRTC_FLAG_VSYNC_ACTIVE    = $01;
  CRTC_FLAG_HSYNC_ACTIVE    = $02;
  CRTC_FLAG_HDISP_INACTIVE  = $04;
  CRTC_FLAG_VDISP_INACTIVE  = $08;
  CRTC_FLAG_HTOT_REACHED    = $10;
  CRTC_FLAG_VTOT_REACHED    = $20;
  CRTC_FLAG_MAXIMUM_RASTER_COUNT_REACHED = $40;
  CRTC_FLAG_REG8_BLANKING   = $80;

  CRTC_FLAG_VTA_ACTIVE   = $100;
  CRTC_FLAG_WINAPE_ICSR  = $8000;

  SFormatInvalid: String = 'Snapshot format invalid';
 
type
  TSnapshotType = (SNA, SNR, SNP);

  TBankFlag = (c0, c4c7, cccf, d4d7, dcdf, e4e7, ecef, f4f7, fcff);
  TBankFlags = set of TBankFlag;

  TChunkFlag = ( cfROMs, cfDSCA, cfDSCB, cfBreaks, cfDataAreas );
  TChunkFlags = set of TChunkFlag;

  TSnapshotHeader = packed record
    SnapshotID: packed array[0..7] of char;
    pad0            : packed array[0..7] of char;

    Version: Byte;

    {Registers}
    REG_AF,REG_BC,REG_DE,REG_HL: word;
    REG_R,REG_I,REG_IFF0,REG_IFF1: byte;
    REG_IX,REG_IY,REG_SP,REG_PC: word;
    REG_IM: byte;
    REG_AF1,REG_BC1,REG_DE1,REG_HL1: word;

    GA_Pen: byte;
    GA_Inks: packed array[0..16] of byte;
    GA_ROM, GA_RAM: byte;

    CRTC_Reg: byte;
    CRTC_Regs: packed array [0..17] of byte;

    UpperRom: byte;

    PIO_A,PIO_B,PIO_C,PIO_Control: byte;

    PSG_Reg: byte;
    PSG_Regs: packed array[0..15] of byte;

    MemSize: word;

    CPCType: byte;

    InterruptNo: byte;                     // CPCEMU only
    MultiMode: packed array[0..5] of byte; // CPCEMU only

    // Version 3 only
    Empty1: packed array[$75..$9a] of byte;

    FDD_Fast: Boolean;
    FDD_Motor: Boolean;
    FDD_Cyl: packed array[0..3] of byte;

    Printer_Data: byte;

    Monitor_Line: SmallInt;

    CRTC_Type: byte;

    Empty3: packed array [$a5..$a8] of byte;

    CRTC_HCC: byte;

    Empty4: byte;

    CRTC_VCC: byte;
    CRTC_VLC: byte;
    CRTC_VTAC: byte;
    CRTC_HSYNC: byte;
    CRTC_VSYNC: byte;
    CRTC_Flags: word;

    GA_DelayCount: byte;
    GA_ScanCount: byte;
    Z80_IntStat: byte;
    Z80_ICSR: byte;

    DisablePlus: Boolean;
    PlusPPI: Boolean;
    Empty5: packed array [$b8..$df] of byte;

    EmulatorID: packed array [$e0..$ff] of char;
  end;

  TDMARegs = packed record
    Loop: Word;
    Addr: Word;
    Pause: Word;
    PreScale: byte;
  end;

  TPlusChunk = packed record
    SpriteData: packed array [0..$7ff] of byte;
    SpriteAtts: packed array [0..$7f] of byte;
    Palette: packed array [0..$3f] of byte;
    Regs: packed array [0..5] of byte;
    SecROM: Word;
    Analogue: packed array [$08..$0f] of byte;
    DMA: packed array [0..$f] of byte;
    DMARegs: packed array [0..2] of TDMARegs;
    GA_Last: byte;
    GA_UnLocked: byte;
    GA_Sequence: byte;
  end;


The SNR file can contain RIFF sections defining the Disk images and ROM   images active at the time of recording.
The SNR file ends with an SNR RIFF chunk (ID: 'SNR '). This contains all the keystrokes and timing information as well as Symbiface Mouse and RTC information. The following constants are used to define the ID's of these:


  { Mouse Bits for SNR recording }
  SNR_MOUSE = $80;
  SNR_MB    = $01;
  SNR_MX    = $60;
  SNR_MX_B  = $20;
  SNR_MX_W  = $40;
  SNR_MY    = $18;
  SNR_MY_B  = $08;
  SNR_MY_W  = $10;
  SNR_MW    = $06;
  SNR_MW_B  = $02;
  SNR_MW_W  = $04;

  { Real-Time Clock IDs }
  SNR_RTC   = $E0;
  SNR_MIN   = $E1;
  SNR_HR    = $E2;
  SNR_DAY   = $E3;
  SNR_MTH   = $E4;
  SNR_YR    = $E5;
  SNR_MIL   = $E6;


The actual SNR format is quite complicated due to limitations of the original SNP format and the work-arounds to get it accurate.  This is by no means complete, but I think it's something along the lines of:

Count (Byte) - Number of frames until next change or 00. If 00, then a further word is used to indicate the number of frames. For example:

05 = 5 frames.
00 01 02 = 513 frames.

After that number of frames has passed, the next byte is read (the block length specifier (BLS)). Bit 7 (and #80) determines if there is a synchronisation block. If this is set, the following data (bytes) are contained in the synch block:

+0: Least significant byte of current Z80 PC (Program Counter)
+1: Vertical Line Count of CRTC.
+2: Horizontal Character Count of CRTC.
+3: Least significant byte of the TotalCycles counter (always reset to zero at the start of the SNR file snapshot).

The following 7 bits of the BLS define the number of bytes that follow unless they are all 1 (ie. BLS and #7f == #7f). This has a special meaning, which is to repeat the same changes as the last frame.

Each byte following for (BLS and #7f bytes) represents either a key number or a Mouse or RTC update.

If the byte (call it CHG) is E0..FF it is treated as an RTC update. The number of following bytes is (CHG and #1F) + 1, so, if CHG is SNR_RTC (#E0) only the RTC second is updated (1 following byte), if CHG is SNR_DAY (#E4), the RTC second, minute, hour, day and day of week is updated. The Day of Week is the fourth byte and #07, the Day (1..31) is the same byte SHL 3 (div 8) .

If the CHG is #80 .. #df it is treated as a Mouse Update.
- If (CHG and SNR_MB) <> 0 the Mouse Button byte is read.
- If (CHG and SNR_MX) <> 0 the Mouse X position is updated (if (CHG and SNR_MX_W) then it's a word else a byte).
- If (CHG and SNR_MY) <> 0 the Mouse Y position is updated (if (CHG and SNR_MY_W) then it's a word else a byte).
- If (CHG and SNR_MW) <> 0 the Mouse Wheel position is updated. (if (CHG and SNR_MW_W) then it's a word else a byte).

...

And that's all there is to it. Really simple eh !

Cheers,
Richard

P.S. I would make a Wiki page about the SNR format from this post but I'm useless at Wiki code and I don't have much time. Anyone else feel free to do so.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 07:24, 02 June 10
If you're really astute, you may have noticed that the Mouse and RTC messages overlap. ie. If the SNR_MOUSE (#80), SNR_MX_W (#40) and SNR_MX_B (#20) were all set, then the value would be #E0..#FF. Fortunately, the Mouse X can only be either a Byte (SNR_MX_B) or a Word (SNR_MX_W) so this will never happen, but the SNR processing code MUST ALWAYS check for SNR_RTC first, then not process it as a Mouse change if this is the case.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:52, 20 June 10
Working on lightgun emulation:
http://cpc-live.com/lightgun

If someone could help me to improve that, please contact me.
It's done checking x,y RGB value, then comparing them to some further frames painted and if they are different and not black:
Fire!

But need more accuracy here...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:06, 21 June 10
But... how would this work?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:05, 21 June 10
The technic is quite simple:
When you trigger fire on lightgun:
Joy-Fire is send to CPC.
The screen turns black for about 1 frame.
Next frame a bright square is painted where a target has been.
When lightgun sensor detects this bright colour, it sends Joy-Fire and Joy-Down signal to CPC.
When your lightgun was over a 2nd target:
Bright square is removed in next frame and a 2nd is painted where the 2nd target has been.
When lightgun detects this frame now it sends Joy-Fire and Joy-Down signal to CPC.

Really simple technic in theory.
But not simple to handle (actually)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:11, 22 June 10
No - you're explaining how the light gun works, but I knew this. What I'm asking is, how do you use it in an emulator? What's the use?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 08:32, 22 June 10
To play games which were designed for lightgun? ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Cpcmaniaco on 10:52, 22 June 10
Only for Gunstick too.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:59, 23 June 10
Quote from: Devilmarkus on 08:32, 22 June 10
To play games which were designed for lightgun? ;)

Yes, but how?? You'd need a light gun. A CPC light gun or a PC one? And then, you'd need a CRT screen. So, I'm still a bit skeptical about the practical use of it!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 08:27, 23 June 10
Quote from: Gryzor on 07:59, 23 June 10
Yes, but how?? You'd need a light gun. A CPC light gun or a PC one? And then, you'd need a CRT screen. So, I'm still a bit skeptical about the practical use of it!

Well in JavaCPC the lightgun is replaced by a crossfade mouse cursor. You can use your mouse to aim and shoot. That's it.

In theoretical the lightgun should also work on a CRT screen!
It uses a light sensor to detect targets.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 14:22, 23 June 10
Ah! So you use the mouse. Ok then, now it's clear, though it'll make light gun games extremely easy I guess??
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:41, 23 June 10
Well, yes.
But it's easier to install Windows XP on a CPC 464...
This has all drivers (incl. lightgun plug & pray)

(http://retropower.eu/winxp_on_tape.png)
(http://cpc-live.com/winxp.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Bryce on 15:17, 23 June 10
The drivers are on Cassettes 241 to 318 as far as I recall :D

Bryce.
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 15:47, 23 June 10
Quote from: Bryce on 15:17, 23 June 10
The drivers are on Cassettes 241 to 318 as far as I recall :D

Bryce.
Please upload cassette 400 I am missing that one ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Leonie on 17:54, 23 June 10
Quote from: arnoldemu on 15:47, 23 June 10
Please upload cassette 400 I am missing that one ;)

Just play cassette 200 with Double-Speed backwards.
The resulting data is the same as on cassette 400.


Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:58, 26 June 10
Quote from: Leonie on 17:54, 23 June 10

Just play cassette 200 with Double-Speed backwards.
The resulting data is the same as on cassette 400.

Good idea!

In co-operation with Loic Daneels I added command-line arguments.
This will be the syntax:

Possible arguments:
-amsdos <yes/no>
-autotype <"text">
-boot <drive>
-cpctype <cpctype>
-crtc <1 or 0>
-desktop <yes/no>
-drivea <"file">
-driveb <"file">
-tape <"file">

Example for Windows:
JavaCPC.exe -desktop yes -cpctype SYMBOS -drivea "SymbOS.DSK" -driveb "Sym-Apps.DSK" -autotype "|SYM" -amsdos yes
Example for other OS:
java -jar JavaCPC.jar -desktop no -cpctype SYMBOS -drivea "G:\CPC\SymbOS.DSK" -driveb "G:\CPC\Sym-Apps.DSK" -autotype "|SYM" -amsdos yes

Valid cpctypes:
CPC464        CPC464
CPC664        CPC664
CPC6128        CPC6128
SYMBOS        CPC6128 with SymbOS
FUTUREOS    CPC6128 with Future OS
KCCOMPACT    KC COMPACT
CPC464PARA    CPC464 with PARADOS rom
PARADOS        CPC6128 with PARADOS rom
CPC6128fr    CPC6128 with french roms
CPC6128es    CPC6128 with spanish roms
COMCPC        ;-)

Example for "-boot" argument:
-boot df0
-boot tape


If someone is interested in testing this, please contact me for new beta version...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:10, 28 June 10
Latest beta is here:
http://retropower.eu/cpc/download.php?type=-emu&fichier=2010_06_28_JavaCPC_Desktop_BETA.zip

Much fun with it!
(Tested under Windows and Mac OS!)
Windows 7 user must run it with administrator rights! 32bit Java is appreciated.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 10:24, 29 June 10
It managed to crash my work PC this morning :D Tho it's probably not its fault but the PC's or Java's...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:44, 30 June 10
So you can be happy that it causes serious crashes to your PC ;)

Check here for updates:
http://retropower.eu/cpc/index.php?dir=-emu

You will see my updated zips on top.
Check the creation date and so you can always try the latest beta.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 17:30, 05 July 10
Working on an "Effectmixer" for JavaCPC-Paint.
It will help you to get the best possible results from converting a photo or an image to CPC.

Example:
Not optimized:
(http://retropower.eu/effect1.png)

The Effectmixer in action:
(http://retropower.eu/effect2.png)

Optimized result:
  (http://retropower.eu/effect3.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:40, 05 July 10
Demonstration:
[youtube=9I1fdpej2SM]demo[/youtube]
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:31, 07 July 10
Best: Combine the filters + use the MovieMaker:
[youtube=Vv1DG1TN1eg]video[/youtube]
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 11:23, 08 July 10
So, it dithers better, right?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Leonie on 10:49, 09 July 10
Quote from: Devilmarkus on 17:30, 05 July 10(http://retropower.eu/effect3.png)

This picture looks soooo gorgeous.
Nice drawn, nice colours.
I like the facial expression of the girl in this processed version of the picture more compared to the original picture.



Quote from: Devilmarkus on 10:31, 07 July 10
[youtube=Vv1DG1TN1eg]video[/youtube]

Is that really possible on a CPC (with enough memory)?
Mode 0? It looks too fine-pored...
To good to be true somehow...a cheating scandal?

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:22, 09 July 10
The movie is almost a fake. (No possibility to store/read and playback those large files on a real CPC yet, playback is emulator-internal.)

But the converter is real!

A small slideshow I made:
WebCPC-Link (http://cpc-live.com/emulator.php?system=PARADOS&disc=over1.zip&boot=true)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 17:04, 11 July 10
Today I coded a new GameBrowser for JavaCPC.

[youtube=OyCb6vmHa-g]gamebrowser[/youtube]

You will be able to play thousand of games via this application without downloading them. ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:48, 12 July 10
Without downloading them? So you're putting all the images (TOSEC or what?) in the emulator distro?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 08:52, 12 July 10
Quote from: Gryzor on 07:48, 12 July 10
Without downloading them? So you're putting all the images (TOSEC or what?) in the emulator distro?

It's an emulator internal download.
You don't see that.

Higher quality video:
http://cpc-live.com/gamebrowser (http://cpc-live.com/gamebrowser)

You can try the new gamebrowser in my latest beta:
Download (http://cpc-live.com/data/download.php?type=-beta&fichier=2010_07_11_JavaCPC_Desktop_BETA.zip)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:58, 12 July 10
Ah - so it *does* download :D

What about an offline version then?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 08:59, 12 July 10
Quote from: Gryzor on 08:58, 12 July 10
What about an offline version then?

Offline version: Open your wanted dsk and play it.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 09:04, 12 July 10
Hahahaha :D Ok then...
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 09:55, 12 July 10
Quote from: Gryzor on 08:58, 12 July 10
Ah - so it *does* download :D
it's a downloader for lazy people  :P

Quote from: Gryzor on 08:58, 12 July 10
What about an offline version then?
CPCGamesCD?  :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:24, 13 July 10
CPCGamesCD - exactly what I was driving at.  Well, if JavaCPC could be completely integrated in CPCLoader it'd be great...
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 09:21, 13 July 10
Quote from: Gryzor on 08:24, 13 July 10
CPCGamesCD - exactly what I was driving at.  Well, if JavaCPC could be completely integrated in CPCLoader it'd be great...
Markus wants everything in his emu ;)
Emu dominance ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:58, 13 July 10
Quote from: arnoldemu on 09:21, 13 July 10
Markus wants everything in his emu ;)
Emu dominance ;)

Well indeed, I want a lot of funstuff ;)
But I don't want dominance.
There are other emulators (Except or 'Arnold') which are much better!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 11:31, 13 July 10
WinCPC FTW!

...even though it messes up the CAT in Color Lines...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:39, 13 July 10
Quote from: Gryzor on 11:31, 13 July 10
...even though it messes up the CAT in Color Lines...

This cannot be because bad emulation.
I think you use a bohemian ROM setup.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 12:28, 13 July 10
bohemian? :D But it may have been because I used his custom font rom...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 19:30, 13 July 10
Quote from: Devilmarkus on 10:58, 13 July 10
Well indeed, I want a lot of funstuff ;)
But I don't want dominance.
There are other emulators (Except or 'Arnold') which are much better!

But your emulator is perhaps the most portable. What's the point of implementing cool features in a DOS- or Windows-only emulator? It's too limited IMHO. Computers are now fast enough that a higher-level language like Java makes sense for this kind of task.

And so far everything seems to work great in JavaCPC. In the DOS days I've had much bigger problems getting some games to run. Maybe some very demanding demos can show differences between emulators, but for the average game I'm very happy with JavaCPC so far. (Of course if JavaCPC Desktop would also work under Java v1.5, I'd be even happier.)

Saying that JavaCPC is much better than Arnold may sound like faint praise from me, but I'm mainly on a Mac right now, so I don't have much to compare it to. Still, I think JavaCPC is pretty fantastic!

Martin
Title: Re: JavaCPC Desktop available as BETA!
Post by: MiguelSky on 21:51, 13 July 10
Quote from: Gryzor on 08:24, 13 July 10
CPCGamesCD - exactly what I was driving at.  Well, if JavaCPC could be completely integrated in CPCLoader it'd be great...
Well, you can change the default emu in the Explorer to JavaCPC (or another emu you like) ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 07:07, 14 July 10
Quote from: MiguelSky on 21:51, 13 July 10
Well, you can change the default emu in the Explorer to JavaCPC (or another emu you like) ;)

Important: CPCGameCD only works with JavaCPC up to v.6.7.!

For the upcoming Desktop-version the CPCLoader needs to be updated.
Next JavaCPC will open files and launch them via command-arguments.
This works already nice in the CPC GameBase by L. Daneels.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:46, 14 July 10
Quote from: Morn on 19:30, 13 July 10
Computers are now fast enough that a higher-level language like Java makes sense for this kind of task.

Try saying that to my netbook... Even WinCPC runs with frameskip on.

Which reminded me - which is considered the fastest emulator out there?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 12:36, 14 July 10
Quote from: Gryzor on 07:46, 14 July 10
Try saying that to my netbook... Even WinCPC runs with frameskip on.

More or less by definition, a netbook is a computer that is too slow to do anything beyond instant messaging on it. Before the name netbook was coined, such computers were known as paperweights/door stoppers, but apparently they've found a way to make people actually pay for them.  :)

Martin
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 13:46, 14 July 10
Quote from: Gryzor on 07:46, 14 July 10
Which reminded me - which is considered the fastest emulator out there?
WinAPE, I think.  Shouldn't be too much strain on a netbook, either.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 14:47, 14 July 10
Quote from: mahlemiut on 13:46, 14 July 10
WinAPE, I think.  Shouldn't be too much strain on a netbook, either.

Thanks, will try it tonight... I haven't tried it on the netbook.

Quote from: Morn on 12:36, 14 July 10
More or less by definition, a netbook is a computer that is too slow to do anything beyond instant messaging on it. Before the name netbook was coined, such computers were known as paperweights/door stoppers, but apparently they've found a way to make people actually pay for them.  :)

You're right about the first half - indeed, it's only supposed to do a little browsing and some lightweight work, not games. But this doesn't mean we shouldn't *try* to.

Oh, btw, I find a netbook the perfect solution for my needs; meaning cheap, light, small factor, good battery, it suits me much better than my laptop when I'm sitting out on my balcony sipping my coffee... so it's not all too bad!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:34, 15 July 10
Today I compared Chany's demo "Dreamend Megademo".
Left side are JavaCPC screenshots, right side are WinApe screenshots)

First thing:
Demo did not start on WinApe (CPC 6128 config, no plus/ppi emulation, normal floppy disk emulation, CRTC 1)

This test should'nt be a contest "which emulator is better?" but demonstrate how different CRTC emulations can be.
Especially the 8th image has a logo missing in WinApe. (Because CRTC register 6, which can update vDisplay in almost any case)

   
     
(http://cpc-live.com/dreamend01.png)(http://cpc-live.com/de01.png)
(http://cpc-live.com/dreamend02.png)(http://cpc-live.com/de02.png)
(http://cpc-live.com/dreamend03.png)(http://cpc-live.com/de03.png)
(http://cpc-live.com/dreamend04.png)(http://cpc-live.com/de04.png)
(http://cpc-live.com/dreamend05.png)(http://cpc-live.com/de05.png)
(http://cpc-live.com/dreamend06.png)(http://cpc-live.com/de06.png)
(http://cpc-live.com/dreamend07.png)(http://cpc-live.com/de07.png)
(http://cpc-live.com/dreamend08.png)(http://cpc-live.com/de08.png)
(http://cpc-live.com/dreamend09.png)(http://cpc-live.com/de09.png)
(http://cpc-live.com/dreamend10.png)(http://cpc-live.com/de10.png)
(http://cpc-live.com/dreamend11.png)(http://cpc-live.com/de11.png)
(http://cpc-live.com/dreamend12.png)(http://cpc-live.com/de12.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 11:42, 16 July 10
Quote from: Gryzor on 14:47, 14 July 10
Oh, btw, I find a netbook the perfect solution for my needs; meaning cheap, light, small factor, good battery, it suits me much better than my laptop when I'm sitting out on my balcony sipping my coffee... so it's not all too bad!

I think netbooks made more sense when they were really inexpensive in the beginning. But somehow prices have gone up so much that they are not that different anymore from regular laptops in terms of price and features.

What I liked about early netbooks were among others their solid-state hard drives, but it looks like regular HDs are the norm for netbooks now. So tablet PCs will probably displace netbooks eventually, because they fill the same niche as (early) netbooks did and are even smaller.

Martin
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 17:51, 16 July 10
Not quite, my netbook only cost 300 euros, with a 11.1" wide 1360px screen. Quite cheap AND small AND light.

As for early netbooks having SSDs... are you sure? Because they're still quite expensive, so I can't see how they could do it in *early* netbooks..
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 11:23, 18 July 10
from http://en.wikipedia.org/wiki/Asus_Eee_PC#Storage:

"The early model Eee PCs use a solid-state drive for storage (instead of a hard drive), which consumes less power when in use, allows the device to boot faster, generates no noise, and is less susceptible to mechanical shock damage than hard drives."

Of course storage capacity was comparatively limited, so that's probably one reason why they moved to real hard drives.

Maybe the SSD cost was offset by these early netbooks using Linux instead of Windows. As Windows later became the norm, they had to use cheaper electronic components.

Martin
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:49, 19 July 10
I don't think so... even now the cost difference between a mechanical HDD and an SSD is not offset by the OS cost, much less in the early days. What I'm saying is that I don't think there was a way to have cheap AND SSD-bearing netbooks in the early days :D

I remember the first Eee PCs, their drive was so small it barely sufficed for day-to-day things...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:50, 19 July 10
Now back to topic:
I made a little "Flipscreen Slideshow" (For the sceptics and All-Converted-Images-Are-Crap-People: This is a slideshow of converted JPG! Don't watch it! I know, SuperChristmas and other people can make better ones.)

This is a test slideshow for the De-Interlace filter in JavaCPC (And also in WebCPC)

You can watch it online here (http://cpc-live.com/emulator.php?system=PARADOS&disc=flipshow.zip&boot=true&title=Flipscreen%20Slideshow&filter=true)
(WebCPC link! Contains brutal Java! Don't click it, if you don't like coffee!)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 09:20, 20 July 10
Hey, I'm not sure if the filter is supposed to be on or off? Also, what's with the smooth fade action? :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:46, 20 July 10
Quote from: Gryzor on 09:20, 20 July 10
Hey, I'm not sure if the filter is supposed to be on or off? Also, what's with the smooth fade action? :)

The button is still "red" but the filter is on. (I did implement the de-interlace filter quickly into WebCPC)

smooth fade action?
Why?
It's a slideshow to demonstrate the de-interlace filter and not to demonstrate smart screen fading.
But you can adjust your monitor brightness slowly to black, then press space to load the next screen,
then adjust monitor slowly back to normal brightness :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 10:42, 20 July 10
Quote from: Devilmarkus on 16:50, 19 July 10
You can watch it online here (http://cpc-live.com/emulator.php?system=PARADOS&disc=flipshow.zip&boot=true&title=Flipscreen%20Slideshow&filter=true)
(WebCPC link! Contains brutal Java! Don't click it, if you don't like coffee!)

Very nice! WebCPC now seems to work as it should on the Mac. What's different from the version of a few weeks ago? Have you changed the code to support Java v1.5?

Martin
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:05, 20 July 10
Quote from: Morn on 10:42, 20 July 10
Very nice! WebCPC now seems to work as it should on the Mac. What's different from the version of a few weeks ago? Have you changed the code to support Java v1.5?

Martin

Well, that's WebCPC.
You tried JavaCPC. It's much more complex.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:59, 21 July 10
No, what I see, before the slideshow starts, is that when I type something the letters (and cursor) smoothly fade in and out of the screen instead of appearing instantaneously. Maybe it's my PC?

But it's a nice effect, I have to say!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:27, 21 July 10
Quote from: Gryzor on 08:59, 21 July 10
No, what I see, before the slideshow starts, is that when I type something the letters (and cursor) smoothly fade in and out of the screen instead of appearing instantaneously. Maybe it's my PC?

But it's a nice effect, I have to say!

THIS is the de-interlace filter.
How it works?
- CPC sends 50 frames per second
- I catch each even image and paint it with 50% transparency over each odd image
- You see the result.
This gives out "shadowed half-images" as you perhaps know when you pause a movie. (You see 2 images in 1)
The positive aspect is that flipscreens (like Orion Prime title screen) do not flicker.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 16:33, 21 July 10
Ahhh this also explains why I saw a different pic every time I hit Pause!

A really nice effect for text-entry mode :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:31, 10 August 10
New BETA is available!
It has some new features.
Also new is:
You can register JavaCPC (for absolutely free of course) now.
This enables some additional features:
- WebBrowser (Full featured webbrowser with "Favourites" functionality)
- PacMan desktop game
- Tiled Mapeditor
- GameBrowser

It also makes it easier to report a bug.
+ it gives you a desktop clock ;)
I know most applications are just for fun, and many of you think: "Why should I register?" but the answer is simple:
Because I want that ;)
- If a user want to use the additional stuff, it's not too much to register the copy of JavaCPC.

JavaCPC's emulation, Assembler, and all emulator related things work also without registering.

You can download it here:
http://cpc-live.com/data/list.php?dir=-beta
Title: Re: JavaCPC Desktop available as BETA!
Post by: Bryce on 14:05, 10 August 10
Oh yeah, big brother is watching you. I bet it phones home every time you use it too and let's Steve Markus know what games we are playing. It's a slippery slope you know, next you'll be releasing it under a fruit-base company name or whatever.....

Bryce.... As paranoid as ever.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 15:49, 10 August 10
Almost ;)

Really, I don't collect any sensible data.

Only the bug-report sends me some information.
(Same mail is sent to bug-reporter!)

Example for a bug-report mail:

JavaCPC bug reported by   : Markus Hohmann
email address: webmaster@cpc-live.com
[JavaCPC version D.0.9e]
[Tue Aug 10 13:09:59 CEST 2010]
Usermessage:
------------------------------------

blablablabla

------------------------------------
JavaCPC [v.D.0.9e]

[Tue Aug 10 13:09:27 CEST 2010]

executable is true
Avail mem is 240299760
init()
Setting tapelabel:
Frequency=1000000, adder=65536
Memory choosen: TYPE_512K
Path is:*G:\java\JavaCPC\*
Display is 768,544 pixels
resync: start=200
resync: start=2605
G:\java\JavaCPC\system/cpc/rom/OS6128.ROM 16384
Without header
G:\java\JavaCPC\system/cpc/rom/BASIC1-1.ROM 16384
Without header
Your selected Basic ROM is for CPC6128
G:\java\JavaCPC\system/cpc/rom/AMSDOS.ROM 16384
Without header
Computer: CUSTOM - CUSTOM Stopping Zilog Z80
stopping...
resync: start=4810
resync: start=7015
Floppy-motor off
Device connected: Basic 6845
Device connected: Amstrad SSA-1 Speech Synthesizer
Device connected: DK'Tronics Speech Synthesizer
Device connected: Cheetah AmDrum
Device connected: Digiblaster
Device connected: CPC-Printer
Device connected: Amstrad Gate Array
Device connected: 8255 PPI: Port A = write, Port B = read, Port C (Upper) = write, Port C (Lower) = write
Device connected: NEC uPD765AC-2 Floppy Controller
Device connected: AY-3-8910/2/3 Programmable Sound Generator
DEBUG=false, PAUSE=false, LARGE=true
System Set: Computer: CUSTOM - CUSTOM
Audio Enabled
Floppysound Enabled
Notebook Disabled
Autosave Disabled
Volume is set to:1.0
resync: start=9820
resync: start=12025
Floppy-motor off
Display is 768,544 pixels
Display is 768,544 pixels
Window is 779 Pixels with & 603 Pixels height!
Alarm is false
resync: start=14630
resync: start=16835
Floppy-motor off
Floppy-motor off
resync: start=92240
resync: start=126845
Display Focused
Floppy head choosen: Drive 0 - Head 0
Floppy head choosen: Drive 1 - Head 0
Floppy head choosen: Drive 2 - Head 0
Floppy head choosen: Drive 3 - Head 0
JavaCPC is registered to Markus Hohmann
with email account webmaster@cpc-live.com
Reg code is xxxx-xxxx-xxxx-xxxx
Display Lost Focus


Of course, when Java logs an error, it's in this report, too.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:44, 11 August 10
AFAIK the webbrowser does not work with Windows 7.
Please report me, which error message appears and also if there's a way to fix that.
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 09:46, 11 August 10
Quote from: Bryce on 14:05, 10 August 10
Oh yeah, big brother is watching you. I bet it phones home every time you use it too and let's Steve Markus know what games we are playing. It's a slippery slope you know, next you'll be releasing it under a fruit-base company name or whatever.....

Bryce.... As paranoid as ever.
Hmm.. "Strawberry" is a good name for a company... or were you thinking of "lemon"?

EDIT: I get a crash on Windows XP, Markus knows about it ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:57, 11 August 10
Yeah I know about this crash.
I hopefully fixed that problem.
http://cpc-live.com/data/list.php?dir=-beta
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 13:33, 11 August 10
Quote from: Devilmarkus on 10:57, 11 August 10
Yeah I know about this crash.
I hopefully fixed that problem.
http://cpc-live.com/data/list.php?dir=-beta (http://cpc-live.com/data/list.php?dir=-beta)
For me I installed a new java. Mine was too old  :laugh:
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:00, 11 August 10
Quote from: arnoldemu on 13:33, 11 August 10
For me I installed a new java. Mine was too old  :laugh:

Yeah, I updated the emulator.
It now tells you if your Java is too old (I hope)

Please use Sun Microsystems Java!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:33, 12 August 10
Just to let you know:
I begun coding a DMP 2000 emulator, too.
This printer should be able later also to "print out" graphics.
It uses "PNG" images as 'paper' and gives a dotted result.

Example:
http://cpc-live.com/dmp2000/ (http://cpc-live.com/dmp2000/)

For this I need your help:
- how many chars did a DMP print in a row? (draft, simple output)
- how many lines per page did it print out?

Original dumped page:
Title: Re: JavaCPC Desktop available as BETA!
Post by: Bryce on 12:22, 12 August 10
Wow, I love the sound you added to recreate the retro-feel :)

It almost brought nostalgic 8-bit tears to my eyes.

Bryce.
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 14:05, 12 August 10
Quote from: Devilmarkus on 16:00, 11 August 10
Please use Sun Microsystems Java!
You mean Oracle Java, yes? ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Ynot.zer0 on 14:29, 12 August 10
I'm biased and prefer IBM Java  8)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:38, 12 August 10
Since Oracle bought Sun: Yes, use Oracle Java.
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 17:06, 12 August 10
Markus wants to know what happens when the following is done:

In the DMP2000 manual it says normal width is 80 chars (width with normal sized characters).

Basic has a default width of 132 chars (defined by BASIC's WIDTH command).

So what is the result when a long line >80 is printed to the printer?
a) Does the printer automatically advance to the next line when 80 chars are printed and then print the rest on the next line?
b) does it print 80 chars and stop and ignores the remaining chars, or
c) does it print all the chars and the head goes off the right of the paper and you don't see them?

A picture or best a scan of this result would be great.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Bryce on 20:11, 12 August 10
From my memories of my LQ printer, it went to the next line and continued the rest of the line there... so "A".

Bryce.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:14, 12 August 10
My printer does the same... (But I still need to know more facts)
- how many chars are printed in 1 row (draft) and how many with condensed?
- when you use "mini" function: Is the font half sized or only half height? (Seem to have also a "half height" code)
and so on.... (All ESC codes I only found in French or Spanish... Perhaps someone could translate them to English or German?)

Added a few control codes + You can now also control the weakness for the ribbon!!!  :police:

Here's an actual printer-testpage:
http://cpc-live.com/printout_0.png

My goal is a real printer emulation which makes it also possible to printout hardcopies (graphics)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:28, 13 August 10
Here's a little "mock-up":
http://cpc-live.com/printout_0b.png (http://cpc-live.com/printout_0b.png)
With NLQ quality:
http://cpc-live.com/printout_0c.png (http://cpc-live.com/printout_0c.png)

So, pleeeeeeeeease help me to figure all controls out ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:35, 14 August 10
Heh... I can't think of a single use for this feature, but it certainly is awesome! So geeky :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 08:17, 14 August 10
Quote from: Gryzor on 07:35, 14 August 10
Heh... I can't think of a single use for this feature, but it certainly is awesome! So geeky :D

Why not?
Think: Programs like desktop publishing software or e.g. "Artworx" (link (http://cpc-power.com/index.php?page=detail&num=5166)) can now be used as they had been designed for:
To printout the results.

Here's another dump with a new font:
http://cpc-live.com/dmp2000test.png
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:09, 14 August 10
Working on proper scaling.
Here you can compare my emulated printout with one I found on g**gle:

  (http://cpc-live.com/realselftest.png)
  (http://cpc-live.com/emuselftest.png)

2nd is the emulated output. (Font is still not a exact font)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 08:36, 21 August 10
Working on a video recording tool to capture cpc-videos:
(http://cpc-live.com/mov_capture.png)

The output format is .MOV Quicktime video.
384x272 or (in HiRes) 768x544 pixels.
25 or 50 fps!
Chooseable image quality.

Sorry, guys, no sound possible here.
Perhaps I will record YM-file simulteanously while recording...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 08:13, 23 August 10
Nice.... but, mov? Who on earth uses the mov format? :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 08:15, 23 August 10
Quote from: Gryzor on 08:13, 23 August 10
Nice.... but, mov? Who on earth uses the mov format? :D

Because I did not find any suitable AVI library for Java.
Don't forget: I need to capture the movie picture by picture.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 10:05, 23 August 10
Yeah, I get it... but it's a shame. I haven't installed quicktime (or even Quicktime Alternative) in ages... I hate the format!
Title: Re: JavaCPC Desktop available as BETA!
Post by: remax on 12:13, 09 September 10
Perhaps  VLC support it, i think so...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:42, 16 October 10
New beta is available!

(http://cpc-live.com/javacpc_09f_t.png) (http://cpc-live.com/javacpc_09f.png)
(Click image to see fullsized screenshot)

Today I uploaded a new and already much more stable version of JavaCPC!
As you can see in the version no. (0.9f) it's the last beta until I'll do the next official release.

You can download your copy here:
http://cpc-live.com/data/list.php?dir=-beta
(The files are sorted by date, so you should be able to find the correct version)

New:
- JavaCPC Paint:
     - TGA images are suported for import
     - Easier method to change colour of pen: Double click on pen in list to the right side of paint or right click on it to change it's ink
     - Small improvements in conversion algorithm and also in EffectMixer.
- Desktop:
     - New desktop apps. like JavaCPC Chat or SubPop Radio
     - Over 3000 Wallpapers available for direct-to-wallpaper-download in Desktop settings (When JavaCPC is registered)

And soooooooooooooooo much more :D

Please notice:
- JavaCPC Desktop works best with Windows. All external applications like Manage DSK or other commandline based tools don't work on Mac or Linux and also I cannot say how the emulator behaves if you try them.
- You need administrator privileges on your system to let JavaCPC Desktop work properly.
- Registration is ABSOLUTELY free and is not obligatory to use the most important emu features. It's only needed for some "special" applications.
- The menu is already cleared a bit up but still is messy and may not work as you suggest.

Always important:
Please inform me about bugs or problems.
JavaCPC has an internal bug report which may help you:
- Open JavaCPC Console (on desktop)
- Enter command "bug" (without the quotes)
- Fill out the form and send your report
- 2 mails are sent: 1 for me and a copy to your given mail address.
(Registered users don't need to fill out name, mail and security code!)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:14, 26 October 10
As you think, I am not sleeping and will add a GFX-Viewer soon to JavaCPC.

For what is it good for?
Simple:
To hack around in the first 64k of the CPC and find game-sprites.
You can also edit them.
It also allows you to export them to your PC!
(as binary with or without AMSDOS header or as PNG file!)

You can also select a range of sprites and export them all with a few mouseclicks!

I attached 2 screenshots:
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 21:29, 26 October 10
May the hag be with you  :laugh:

Title: Re: JavaCPC Desktop available as BETA!
Post by: norecess on 04:10, 27 October 10
You never stop !


Kind respects for your commitment! :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Wanderer on 08:09, 27 October 10
Quote from: norecess on 04:10, 27 October 10
You never stop !

Yup. He is impressive, isn't he?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:31, 27 October 10
Hehehe thank you!
A test for patching game-sprites:
I edited some sprites for Cauldron (hag and bat), then I exported them as binary.
After this I put the new binaries on the DSK, too.
Then I loaded the gamecode + these new binaries and then I called the game:

(http://cpc-live.com/wip.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:46, 27 October 10
BTW.: Arnold's and WinApe's graphics viewer inspired me here ;)
Where WinApe's has a vertical order for the cells and JavaCPC has a horizontal order.
Also "Screen-like editing" is not possible in JavaCPC.
Here the same sprites shown in WinApe:
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 17:59, 28 October 10
This sprite catcher would be really nice if it works as great as the screenie shows; never had a decent result with Winape, and every time I've needed a piece of gfx (like for my avatar) I've photoshopped it...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:50, 29 October 10
Tried it last night on my Atom dual core netbook. A shame it can only handle 9fps (Symbos, desktop). I'll try it on my PC now :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:13, 29 October 10
Quote from: Gryzor on 07:50, 29 October 10
Tried it last night on my Atom dual core netbook. A shame it can only handle 9fps (Symbos, desktop). I'll try it on my PC now :)

Maybe you have bad Graphics drivers. (Or also some strange soundcards make trouble here)
Also make sure that you run it with admin-rights to allow JavaCPC to write it's config.
JavaCPC runs on my system (Intel P-IV, 3ghz dual core, 2gb DDR ram and 256 mb NVidia Geforce 6800GT) with 50 fps and also
with "Turbo" it runs at ca. 500-600%

You can try my latest compiled beta from today. (I added some missing libraries and also fixed the Tiled Mapeditor.)
It also has a slightly better display routine.

Download as usual here:
http://cpc-live.com/data/list.php?dir=-beta (http://cpc-live.com/data/list.php?dir=-beta)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 18:02, 29 October 10
It's not the emulator's problem, but my netbook's. It's got an Atom CPU @1.6GHz, after all - NOT designed to run games or Java apps! :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:21, 29 October 10
A question for all coders who use Debuggers:
I today coded many improvements to JavaCPC's Debugger:

(http://cpc-live.com/new_debugger.png)

New features are:
- You can choose between READ, WRITE or ANY ram (Where you can select RAM bank to show and edit it on the fly)
- Breakpoints list with function to clear them.

When READ ram is selected, you cannot edit it (logical, because it's read-only mem)


Now here's my question:
WinAPE also has a breakpoint list where you can see the type and also edit a condition.
- How does this "condition" field work?
- Is a "condition" or "type" really needed? (JavaCPC stops at a breakpoint you define and fires up the debugger (if was closed))

Your help + suggestions which other features to add, too, are very appreciated here.

Thanks,
Markus
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:07, 29 October 10
Here's a test for breakpoints (coming from assembler)

(http://cpc-live.com/asmbreakpoint.gif)

:D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:00, 31 October 10
Another question I have is Z80 assembler related:

Z80 assembler understands (should) IF/ENDIF conditions.

So my question is: What conditions are allowed in IF?
Example: IF a=b (where a=b is condition)
Example2: IF c
Please show me all possible conditions.
(not the mathematic calculations or values but what conditions are possible here)

In rest, I coded many improvements to my Z80 Assembler today:
http://cpc-live.com/assemblertest/

But IF/ENDIF is still not implemented! (They are ignored and the code between is assembled, too, so IF is always true)

Does there also exist ELSE?
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 19:32, 31 October 10
Quote from: Devilmarkus on 14:00, 31 October 10
Z80 assembler understands (should) IF/ENDIF conditions.

Are you sure this isn't a macro of some sort, such as in WinAPE?

In Z80, the simplest IF is to use CP.  This subtracts a value from A register (without actually subtracting it for A's preservation) and then sets the Z flag accordingly.  So if A is 15, a CP 15 will set the Z(ero) flag true and you can have some simple IF/ELSE code.

For example:


ld a,value          ; load A with value
cp 15               ; is it 15
jr z,if_code        ; jump here if it is
jr nz,else_code     ; go here if it isn't
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:16, 31 October 10
Quote from: redbox on 19:32, 31 October 10
Are you sure this isn't a macro of some sort, such as in WinAPE?

Yes it's a macro.
But also the good old MAXAM assembler knows it!
(And sadly many coders use it  :o )

Example: Pacman source by Richard Wilson:
Above line 3020:
.end1 equ $ and #ff
if end1
ds 256 - end1
endif
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:18, 31 October 10
Ok I think, I got it working in my homebrew Z80 assembler:

test code:
;; IF-test
ORG &4000

nobody equ 0
leo equ 1
ant equ 2
bob equ 3

; standard:

if nobody
db "nobody is"
endif

if leo
db "leo is"
endif

if leo=ant
db "leo is = ant"
endif

;extended:

if leo < ant
db "leo is smaller"
endif

if ant > bob
db "ant is larger"
endif


Assembler output:
000002 4000  ORG &4000           
000004 4000  NOBODY EQU 0         
000005 4000  LEO EQU 1           
000006 4000  ANT EQU 2           
000007 4000  BOB EQU 3           
000011 4000  IF NOBODY           
000012 4000  DB "nobody is"       
000013 4000  ENDIF               
000015 4000  IF LEO               
000016 4000  DB "leo is"          6C 65 6F 20 69 73
000017 4006  ENDIF               
000019 4006  IF LEO=ANT           
000020 4006  DB "leo is = ant"   
000021 4006  ENDIF               
000025 4006  IF LEO < ANT         
000026 4006  DB "leo is smaller"  6C 65 6F 20 69 73 20 73 6D 61 6C 6C 65 72
000027 4014  ENDIF               
000029 4014  IF ANT > BOB         
000030 4014  DB "ant is larger"   
000031 4014  ENDIF               
_______________________________________________________
Assembled in 0.047s from &4000 to &4014 length is &0014


HEX:

00004000: 6C 65 6F 20 69 73 6C 65 6F 20 69 73 20 73 6D 61 ; leo isleo is sma
00004010: 6C 6C 65 72                                     ; ller


Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 21:35, 31 October 10
Quote from: Devilmarkus on 20:16, 31 October 10
.end1 equ $ and #ff
if end1
ds 256 - end1
endif


This looks like self-modifying code...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:49, 02 November 10
Small example for the next version of my Z80 Assembler:
http://cpc-live.com/assembler
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 02:56, 03 November 10
Hi Markus,

if, else, elseif and endif are not macros. They are simply conditional compilation instructions for the assembler. They don't generate any code themselves, simply tell the assembler which code to generate. The conditions are considered true if they evaluate to non-zero. (Not sure if = works at all).

Conditional breakpoints can be useful. For example, you can set a breakpoint in a loop with a condition of HL = #3fe2

WinAPE uses full evaluation there (with brackets). There are also some additional functions to poke a value into memory or set a palette colour. You could for example have one breakpoint which set the border to green at the start of a section of code, then returned 0. And another breakpoint which set the border back to black.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:43, 05 November 10
Cool thing with the conditions...
Perhaps I will add some simple, too.

Actually I am improving the disassembler (Which is REALLY hard for me because I'm an absolute noob with that!)

The goal is to make disassembling as simple as possible to get a suitable result!

Example video:
http://cpc-live.com/disassembler/

Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 15:23, 06 November 10
Quote from: Devilmarkus on 21:43, 05 November 10
The goal is to make disassembling as simple as possible to get a suitable result!

This project is just getting better and better  :)

I like the way you're recoginising firmware calls and labelling them.

Another nice feature of disassembly would be that if you change a tag (i.e. label_83b0 or similar) that there is an option to change them ALL for you - I know editors like Notepad++ can do this but it would be great to do this within the disassembler and make decoding routines much faster.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:44, 06 November 10
Quote from: redbox on 15:23, 06 November 10
Another nice feature of disassembly would be that if you change a tag (i.e. label_83b0 or similar) that there is an option to change them ALL for you - I know editors like Notepad++ can do this but it would be great to do this within the disassembler and make decoding routines much faster.

Good idea!
I will add this... ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:03, 06 November 10
I added a "replace" feature:
You can enter a search string (case sensitive) and all strings in the code field are replaced!
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 09:36, 07 November 10
Great stuff, will give it a whirl  :)

Could it be possible to have an option that you turn on which recognises you are editing a label tag and then changes them all on the fly (i.e. so you only edit one and whilst doing this all the others change automatically)...? Or would this just be too complex?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:00, 07 November 10
Well, that would be much too complex here.
Think:
In the video I used a small sourcecode.
But a code often has more than 2000 lines.

Generating labels for a sourcecode with ca. 10.000 lines takes about 5 minutes!!!
Generating relative labels (rel_label_XXXX+1) takes ~ 20 minutes!

(I am too dumb to code an efficientier routine for that :( )

  Replacing firmware addresses takes a few seconds :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 14:40, 07 November 10
I remember battling with this (http://en.wikipedia.org/wiki/Quicksort) at college to make my routines faster.

Not much fun  >:(
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:49, 07 November 10
Perhaps you see something how to speed this crap up?
for (int c = 0; c < code.length; c++) {
    if (code[c].length() < 3) {
        continue;
    } else {
        String codebstr = code[c];
        String codestr = code[c].toLowerCase();
        if (stop) {
            Interface.compileprogress.setValue(0);
            Interface.compileprogress.setStringPainted(false);
            codeField.setEnabled(true);
            codeField.setBackground(Color.white);
            stop = false;
            jemu.ui.JEMU.debugger.getDebuggerComputer().start();
            return;
        }
        b++;
        if (b > 100) {
            b = 0;
            Interface.compileprogress.setValue(c);
            Interface.compileprogress.setString("Line: " + (c + 1)
                    + " To do: " + (code.length - c) + " last label: "
                    + lastlabel);
        }
        if (!codestr.contains("org")) {
            for (int i = start; i < end; i++) {
                String checkLabel = Util.hex((short) i);
                if (!depth && codebstr.contains(";" + checkLabel)) {
                    if (ass.contains("&" + checkLabel)) {
                        lastlabel = "set:" + label + checkLabel;
                        Interface.compileprogress.setString("Line: " + (c + 1)
                                + " To do: " + (code.length - c) + " last label: "
                                + lastlabel);
                        code[c] = codebstr = codebstr.replace(codebstr, label + checkLabel + "\n" + codebstr);
                    }
                } else if (depth) {
                    int f = i + 1;
                    String checkRelLabel = Util.hex((short) f);
                    if (codebstr.contains(";" + checkRelLabel) && !codebstr.startsWith(label2 + checkRelLabel)) {
                        if (ass.contains("&" + checkLabel)) {
                            lastlabel = "set+1:" + label2 + checkLabel;
                            Interface.compileprogress.setString("Line: "
                                    + (c + 1) + " To do: " + (code.length - c)
                                    + " last label: " + lastlabel);
                            code[c] = codebstr = codebstr.replace(codebstr, label2 + checkRelLabel + "\n" + codebstr);
                        }
                    } else {
                        f = i - 1;
                        checkRelLabel = Util.hex((short) f);
                        if (codebstr.contains(";" + checkRelLabel) && !codebstr.startsWith(label2 + checkRelLabel)) {
                            if (ass.contains("&" + checkLabel)) {
                                lastlabel = "set-1:" + label2 + checkLabel;
                                Interface.compileprogress.setString("Line: "
                                        + (c + 1) + " To do: " + (code.length - c)
                                        + " last label: " + lastlabel);
                                code[c] = codebstr = codebstr.replace(codebstr, label2 + checkRelLabel + "\n" + codebstr);
                            }
                        }
                    }
                }
                for (int h = 0; h < canLabel.length; h++) {
                    if (codebstr.contains(canLabel[h])) {
                        if (!depth && !codebstr.contains(";" + checkLabel) && codebstr.contains("&" + checkLabel)) {
                            if (ass.contains(";" + checkLabel)) {
                                code[c] = codebstr = codebstr.replace("&" + checkLabel, label + checkLabel);
                                code[c] = codebstr = codebstr.replace("     ;", ";");
                            }
                        } else if (depth) {
                            int f = i + 1;
                            String checkass2 = Util.hex((short) f);
                            if (!codebstr.contains(";" + checkLabel) && codebstr.contains("&" + checkass2)) {
                                if (ass.contains(";" + checkLabel)) {
                                    code[c] = codebstr = codebstr.replace("&" + checkass2, label2 + checkLabel + "+1");
                                    code[c] = codebstr = codebstr.replace("           ;", ";");
                                }
                            } else {
                                f = i - 1;
                                checkass2 = Util.hex((short) f);
                                if (!codebstr.contains(";" + checkLabel) && codebstr.contains("&" + checkass2)) {
                                    if (ass.contains(";" + checkLabel)) {
                                        code[c] = codebstr = codebstr.replace("&" + checkass2, label2 + checkLabel + "-1");
                                        code[c] = codebstr = codebstr.replace("           ;", ";");
                                    }
                                }
                            }
                        }
                        break;
                    }
                }
            }
        }
    }
}


Could help me much!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 15:30, 07 November 10
Working on linear pixel showing for my gfx viewer.
Many games like Antiriad or Aliens use this.
Mode 0 sprites but 4 colours only...
 
  (http://cpc-live.com/gfxviewer_linear.png)

(http://cpc-live.com/range_9920-A1A8.png)

(http://cpc-live.com/antiriad.gif)
(Mode 1 but stretched!)

Also editing works already in MODE 1 or 2.
(MODE 0 works theoretically, too, but result is crap often...)
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 15:56, 07 November 10
Quote from: Devilmarkus on 14:49, 07 November 10
Perhaps you see something how to speed this crap up?

I haven't programmed high-level languages in a loooong time.  Well, I write pseudo-code for my Z80 sometimes so I guess this is a bit like Java  8)

I can't see why it would be so slow, or does Java have a problem with recursion?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 17:08, 07 November 10
Quote from: redbox on 15:56, 07 November 10
I can't see why it would be so slow, or does Java have a problem with recursion?

Well I don't think, there's a problem with. But recursion slows down all!
Do you see a way to remove the recursion here?
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 19:06, 07 November 10
Quote from: Devilmarkus on 17:08, 07 November 10
Do you see a way to remove the recursion here?

Not off the top of my head, but following the code I can't see why it would be so slow.

Maybe it's just Java...
Title: Re: JavaCPC Desktop available as BETA!
Post by: EgoTrip on 16:08, 08 November 10
Im liking this emulator, now I have a PC that is capable of running Java.


Can I make some suggestions for the image editor. First, a grid would be nice. Second, the co-cordinates of the mouse/brush displayed somewhere would be very useful. Also, improving the zoom feature perhaps, stays in the same window (way too many windows get opened in a JavaCPC session) using scroll bars to navigate when zoomed in.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:33, 08 November 10
Quote from: EgoTrip on 16:08, 08 November 10
Im liking this emulator, now I have a PC that is capable of running Java.


Can I make some suggestions for the image editor. First, a grid would be nice. Second, the co-cordinates of the mouse/brush displayed somewhere would be very useful. Also, improving the zoom feature perhaps, stays in the same window (way too many windows get opened in a JavaCPC session) using scroll bars to navigate when zoomed in.

Hi,
thanks for your suggestions.
The problem is: I don't have a real scroll area! I am doing pseudo scrolling in the paint field.
To make these things as you suggested, work, I would have to rewrite a complete engine for that, and, this would totally consume my last crumbeled brain cells :(
(Really, it would be lot of work to change the Paint app. like this.... :( )
Title: Re: JavaCPC Desktop available as BETA!
Post by: norecess on 19:36, 08 November 10
I also have my own set of tools.


At a time, I thought about making my own image editor.. then finally, just decided to allow import of bitmaps, edited under any external third-party image editor (that will ever be better than a custom solution).
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:14, 08 November 10
Quote from: norecess on 19:36, 08 November 10
I also have my own set of tools.

That's good.
I think everyone uses his own set of tools to create something for the CPC.
I just combined a few (some are simple, some are very complex) tools to JavaCPC Desktop.
This makes 'some' things easier and is maybe helpful for everyone...
And I just like coding funny things... ;)

Here's the today's beta:
http://cpc-live.com/data/download.php?type=-beta&fichier=2010_11_08_JavaCPC_Desktop_BETA.zip (http://cpc-live.com/data/download.php?type=-beta&fichier=2010_11_08_JavaCPC_Desktop_BETA.zip)

You can access the GFX viewer via debugger or via menu: Help -> GFXViewer

Have fun!
(Test it on your own risk! It's pure beta! Nothing cleaned up yet...)

Edit:
Here's a ASM export example for the GFX-Viewer:
        ORG     &9920

        DB      &AA,&A8,&04,&40,&51,&55,&50
        DB      &AA,&80,&01,&04,&89,&95,&50
        DB      &AA,&80,&01,&00,&10,&95,&50
        DB      &AA,&01,&00,&0A,&28,&A5,&50
        DB      &AA,&00,&00,&04,&08,&65,&50
        DB      &AA,&04,&10,&14,&41,&89,&50
        DB      &A8,&05,&00,&10,&40,&29,&50
        DB      &A8,&14,&00,&10,&40,&89,&50
        DB      &A8,&14,&00,&10,&00,&59,&50
        DB      &A8,&05,&00,&00,&00,&42,&50
        DB      &A0,&04,&00,&00,&01,&06,&50
        DB      &A0,&01,&00,&00,&A4,&06,&50
        DB      &A0,&00,&00,&00,&00,&09,&50
        DB      &A0,&00,&11,&00,&40,&09,&50
        DB      &A1,&00,&51,&51,&40,&A2,&50
        DB      &81,&00,&51,&51,&54,&02,&50
        DB      &84,&00,&51,&51,&A4,&0A,&90
        DB      &80,&01,&45,&51,&A8,&05,&90
        DB      &84,&01,&55,&54,&A8,&01,&90
        DB      &81,&01,&55,&56,&A9,&01,&90
        DB      &80,&05,&55,&56,&AA,&26,&10
        DB      &80,&05,&55,&56,&AA,&11,&90
        DB      &80,&05,&55,&55,&AA,&01,&90
        DB      &80,&05,&05,&55,&0A,&01,&90
        DB      &80,&00,&41,&54,&52,&02,&10
        DB      &80,&01,&50,&51,&56,&04,&10
        DB      &80,&05,&04,&55,&05,&05,&90
        DB      &80,&04,&00,&64,&11,&01,&90
        DB      &80,&04,&10,&68,&11,&00,&90
        DB      &84,&05,&00,&68,&15,&04,&90
        DB      &A0,&15,&54,&6A,&A9,&45,&90
        DB      &A0,&15,&54,&6A,&A9,&4A,&10
        DB      &A0,&15,&54,&6A,&A9,&40,&50
        DB      &A0,&15,&54,&6A,&A9,&40,&50
        DB      &A8,&15,&55,&AA,&A9,&42,&50
        DB      &A8,&15,&51,&A6,&A5,&41,&50
        DB      &A8,&15,&51,&A6,&A5,&45,&50
        DB      &A8,&15,&50,&1A,&A5,&49,&50
        DB      &A8,&15,&55,&1A,&A9,&49,&50
        DB      &AA,&15,&55,&9A,&A9,&51,&50
        DB      &AA,&15,&55,&AA,&A9,&41,&50
        DB      &AA,&15,&55,&6A,&A9,&41,&50
        DB      &AA,&45,&50,&06,&A5,&49,&50
        DB      &AA,&05,&55,&6A,&A5,&09,&50
        DB      &AA,&45,&55,&56,&A5,&05,&50
        DB      &AA,&01,&54,&06,&95,&25,&50
        DB      &AA,&81,&55,&2A,&95,&05,&50
        DB      &AA,&84,&56,&AA,&94,&15,&50
        DB      &AA,&84,&56,&AA,&94,&55,&50
        DB      &AA,&A4,&16,&AA,&50,&55,&50
        DB      &AA,&A4,&15,&AA,&50,&55,&50
        DB      &AA,&A4,&05,&55,&40,&55,&50
        DB      &AA,&A0,&55,&55,&59,&55,&50
        DB      &AA,&81,&54,&55,&56,&55,&50
        DB      &AA,&81,&55,&00,&56,&55,&50
        DB      &AA,&01,&55,&00,&59,&95,&50
        DB      &AA,&00,&55,&40,&59,&95,&50
        DB      &A8,&05,&41,&54,&1A,&A5,&50
        DB      &A8,&05,&04,&54,&15,&A5,&50
        DB      &A8,&05,&14,&04,&15,&A9,&50
        DB      &A8,&41,&15,&55,&55,&69,&50
        DB      &A0,&51,&AA,&AA,&AA,&59,&50
        DB      &A0,&5A,&AA,&AA,&AA,&99,&50
        DB      &A0,&5A,&55,&55,&5A,&9A,&50
        DB      &A0,&65,&00,&00,&01,&6A,&50
        DB      &A0,&20,&55,&55,&A8,&26,&50
        DB      &A0,&05,&00,&00,&02,&8A,&50
        DB      &A0,&10,&00,&00,&00,&26,&50
        DB      &80,&10,&14,&51,&A0,&0A,&50
        DB      &80,&41,&55,&11,&A8,&0A,&90
        DB      &80,&01,&55,&54,&A9,&0A,&90
        DB      &81,&05,&55,&55,&A9,&0A,&90
        DB      &81,&05,&55,&55,&6A,&42,&90
        DB      &81,&05,&55,&55,&6A,&12,&90
        DB      &80,&05,&55,&55,&6A,&02,&90
        DB      &80,&15,&01,&54,&06,&02,&90
        DB      &80,&14,&00,&50,&02,&00,&90
        DB      &A0,&15,&50,&51,&56,&10,&90
        DB      &A0,&15,&04,&55,&05,&10,&90
        DB      &A0,&14,&40,&64,&41,&10,&90
        DB      &A0,&15,&04,&69,&45,&00,&90
        DB      &A0,&15,&54,&69,&56,&00,&90
        DB      &A1,&15,&54,&6A,&5A,&41,&50
        DB      &A1,&15,&54,&AA,&9A,&41,&50
        DB      &A1,&05,&55,&AA,&A9,&41,&50
        DB      &A1,&05,&55,&AA,&A9,&41,&50
        DB      &A1,&05,&55,&AA,&A9,&45,&50
        DB      &A1,&05,&51,&A6,&A9,&45,&50
        DB      &A1,&05,&51,&A6,&A9,&45,&50
        DB      &A1,&85,&54,&16,&A5,&45,&50
        DB      &A1,&85,&55,&5A,&A5,&45,&50
        DB      &A1,&85,&55,&9A,&A5,&45,&50
        DB      &A1,&85,&55,&9A,&A5,&45,&50
        DB      &A1,&85,&55,&6A,&A5,&15,&50
        DB      &A1,&85,&50,&06,&A5,&15,&50
        DB      &A8,&61,&55,&69,&A5,&15,&50
        DB      &A8,&61,&55,&56,&95,&15,&50
        DB      &A8,&51,&54,&06,&95,&15,&50
        DB      &AA,&10,&69,&6A,&94,&15,&50
        DB      &AA,&85,&59,&AA,&94,&55,&50
        DB      &AA,&A0,&01,&AA,&94,&55,&50
        DB      &AA,&A4,&15,&6A,&50,&55,&50
        DB      &AA,&A4,&15,&69,&50,&55,&50
        DB      &AA,&A4,&05,&55,&40,&55,&50
        DB      &AA,&A8,&04,&4A,&69,&55,&50
        DB      &AA,&A0,&00,&00,&1A,&55,&50
        DB      &AA,&80,&00,&01,&4A,&55,&50
        DB      &AA,&80,&00,&10,&09,&95,&50
        DB      &AA,&00,&00,&45,&05,&A5,&50
        DB      &AA,&00,&05,&61,&84,&65,&50
        DB      &AA,&00,&05,&41,&04,&65,&50
        DB      &AA,&00,&04,&44,&04,&65,&50
        DB      &AA,&01,&00,&44,&44,&69,&50
        DB      &AA,&00,&00,&04,&A8,&99,&50
        DB      &A8,&00,&00,&00,&A8,&99,&50
        DB      &A8,&40,&00,&0A,&80,&99,&50
        DB      &A8,&01,&00,&00,&14,&A9,&50
        DB      &A8,&01,&54,&01,&55,&29,&50
        DB      &A8,&01,&55,&55,&55,&09,&50
        DB      &A8,&45,&55,&55,&55,&09,&50
        DB      &A8,&45,&55,&55,&55,&19,&50
        DB      &A8,&45,&55,&55,&95,&19,&50
        DB      &A8,&05,&55,&55,&A9,&19,&50
        DB      &A8,&05,&55,&56,&A9,&09,&50
        DB      &A8,&05,&55,&56,&AA,&09,&50
        DB      &A8,&05,&55,&56,&AA,&09,&50
        DB      &A8,&05,&55,&55,&AA,&09,&50
        DB      &A8,&05,&01,&54,&06,&09,&50
        DB      &A8,&44,&00,&50,&02,&19,&50
        DB      &A8,&55,&50,&51,&56,&19,&50
        DB      &A8,&55,&04,&55,&05,&19,&50
        DB      &A8,&54,&10,&64,&11,&19,&50
        DB      &AA,&55,&04,&69,&15,&15,&50
        DB      &AA,&55,&54,&69,&56,&15,&50
        DB      &AA,&55,&54,&6A,&5A,&55,&50
        DB      &AA,&55,&54,&6A,&9A,&55,&50
        DB      &AA,&55,&55,&6A,&AA,&55,&50
        DB      &AA,&55,&55,&AA,&AA,&45,&50
        DB      &AA,&55,&55,&AA,&A9,&45,&50
        DB      &AA,&05,&51,&AA,&A9,&45,&50
        DB      &AA,&05,&51,&A6,&A9,&45,&50
        DB      &AA,&85,&54,&16,&A9,&45,&50
        DB      &AA,&85,&55,&59,&A9,&45,&50
        DB      &AA,&85,&55,&99,&A5,&45,&50
        DB      &AA,&85,&55,&9A,&A5,&45,&50
        DB      &AA,&85,&55,&6A,&A5,&15,&50
        DB      &AA,&95,&50,&06,&A5,&15,&50
        DB      &AA,&91,&45,&69,&A5,&15,&50
        DB      &AA,&A1,&55,&56,&A5,&15,&50
        DB      &AA,&A1,&54,&06,&A5,&15,&50
        DB      &AA,&A0,&55,&6A,&94,&15,&50
        DB      &AA,&A0,&55,&AA,&94,&55,&50
        DB      &AA,&A4,&55,&AA,&94,&55,&50
        DB      &AA,&A4,&15,&6A,&50,&55,&50
        DB      &AA,&A4,&15,&69,&50,&55,&50
        DB      &AA,&A4,&05,&55,&40,&55,&50
        DB      &AA,&AA,&04,&4A,&59,&55,&50
        DB      &AA,&A8,&00,&00,&0A,&55,&50
        DB      &AA,&A0,&00,&01,&96,&55,&50
        DB      &AA,&A0,&04,&20,&45,&15,&50
        DB      &AA,&80,&00,&95,&60,&95,&50
        DB      &AA,&84,&01,&09,&60,&95,&50
        DB      &AA,&00,&00,&00,&62,&A5,&50
        DB      &AA,&00,&00,&00,&20,&25,&50
        DB      &AA,&00,&00,&10,&22,&25,&50
        DB      &A8,&00,&00,&00,&54,&25,&50
        DB      &A8,&01,&50,&01,&A4,&25,&50
        DB      &A8,&01,&55,&56,&A8,&29,&50
        DB      &A8,&01,&55,&5A,&A8,&29,&50
        DB      &A8,&05,&55,&6A,&AA,&09,&50
        DB      &A8,&05,&55,&56,&AA,&29,&50
        DB      &A8,&05,&55,&55,&AA,&09,&50
        DB      &A8,&05,&55,&55,&AA,&09,&50
        DB      &A8,&05,&55,&55,&AA,&09,&50
        DB      &A8,&05,&55,&55,&AA,&09,&50
        DB      &A8,&05,&55,&56,&AA,&29,&50
        DB      &A8,&05,&55,&56,&AA,&09,&50
        DB      &A8,&05,&55,&56,&AA,&09,&50
        DB      &AA,&05,&55,&5A,&AA,&09,&50
        DB      &AA,&04,&01,&58,&02,&05,&50
        DB      &A8,&05,&50,&50,&56,&05,&50
        DB      &A8,&45,&54,&51,&55,&11,&50
        DB      &A8,&55,&04,&51,&05,&11,&50
        DB      &A8,&54,&00,&64,&11,&11,&50
        DB      &A8,&54,&10,&69,&12,&11,&50
        DB      &A8,&55,&14,&69,&2A,&11,&50
        DB      &A9,&55,&54,&6A,&5A,&51,&50
        DB      &A9,&45,&54,&6A,&9A,&51,&50
        DB      &A9,&45,&55,&6A,&AA,&51,&50
        DB      &AA,&45,&55,&AA,&AA,&65,&50
        DB      &AA,&45,&55,&AA,&A9,&25,&50
        DB      &AA,&45,&55,&AA,&A9,&25,&50
        DB      &AA,&05,&51,&A6,&A9,&05,&50
        DB      &AA,&85,&50,&16,&A9,&15,&50
        DB      &AA,&85,&55,&5A,&A9,&15,&50
        DB      &AA,&85,&55,&69,&A5,&15,&50
        DB      &AA,&95,&55,&69,&A5,&15,&50
        DB      &AA,&91,&55,&69,&A5,&15,&50
        DB      &AA,&A1,&55,&56,&A5,&15,&50
        DB      &AA,&A1,&41,&69,&A5,&15,&50
        DB      &AA,&A1,&55,&56,&64,&55,&50
        DB      &AA,&A1,&54,&06,&64,&55,&50
        DB      &AA,&A4,&55,&6A,&64,&55,&50
        DB      &AA,&A4,&55,&AA,&64,&55,&50
        DB      &AA,&A8,&55,&AA,&54,&55,&50
        DB      &AA,&A8,&55,&6A,&50,&55,&50
        DB      &AA,&A8,&15,&69,&50,&55,&50
        DB      &AA,&A8,&05,&55,&40,&55,&50
        DB      &AA,&A8,&04,&40,&52,&55,&50
        DB      &AA,&80,&01,&04,&89,&95,&50
        DB      &AA,&80,&01,&00,&10,&95,&50
        DB      &AA,&01,&00,&0A,&28,&A5,&50
        DB      &AA,&00,&00,&00,&08,&65,&50
        DB      &AA,&00,&0A,&AA,&80,&09,&50
        DB      &AA,&00,&A5,&55,&68,&15,&50
        DB      &AA,&05,&50,&00,&56,&85,&50
        DB      &AA,&05,&0A,&AA,&00,&A9,&50
        DB      &AA,&14,&55,&55,&AA,&29,&50
        DB      &A8,&41,&40,&00,&15,&89,&50
        DB      &A8,&15,&15,&55,&41,&69,&50
        DB      &A8,&50,&55,&55,&54,&19,&50
        DB      &A9,&45,&50,&00,&15,&49,&50
        DB      &A9,&15,&05,&55,&40,&69,&50
        DB      &A9,&50,&55,&55,&55,&29,&50
        DB      &A8,&45,&00,&00,&01,&89,&50
        DB      &A9,&14,&05,&55,&A0,&61,&50
        DB      &A8,&51,&55,&55,&A8,&29,&50
        DB      &A9,&41,&55,&56,&A9,&09,&50
        DB      &A9,&05,&55,&56,&AA,&09,&50
        DB      &A9,&05,&55,&56,&AA,&01,&50
        DB      &A8,&05,&55,&55,&AA,&01,&50
        DB      &A8,&04,&05,&55,&02,&02,&50
        DB      &A8,&41,&41,&54,&56,&12,&50
        DB      &A8,&45,&50,&51,&56,&12,&50
        DB      &A8,&45,&04,&55,&05,&12,&50
        DB      &A8,&44,&00,&64,&11,&12,&50
        DB      &A8,&44,&10,&68,&15,&12,&50
        DB      &A8,&45,&04,&69,&15,&12,&50
        DB      &A8,&55,&54,&6A,&A9,&52,&50
        DB      &A8,&55,&54,&6A,&A9,&52,&50
        DB      &A8,&55,&55,&6A,&95,&52,&50
        DB      &A8,&55,&55,&AA,&A5,&56,&50
        DB      &AA,&55,&55,&AA,&A5,&56,&50
        DB      &AA,&15,&51,&A6,&A9,&46,&50
        DB      &AA,&15,&51,&66,&A9,&49,&50
        DB      &AA,&85,&54,&1A,&A9,&49,&50
        DB      &AA,&85,&55,&5A,&A9,&49,&50
        DB      &AA,&85,&55,&9A,&A9,&49,&50
        DB      &AA,&85,&55,&AA,&A9,&49,&50
        DB      &AA,&85,&55,&6A,&A9,&49,&50
        DB      &AA,&95,&50,&06,&A5,&4A,&50
        DB      &AA,&95,&55,&6A,&A5,&1A,&50
        DB      &AA,&A5,&55,&56,&A5,&1A,&50
        DB      &AA,&A5,&54,&06,&A5,&1A,&50
        DB      &AA,&A1,&55,&2A,&94,&1A,&50
        DB      &AA,&A1,&56,&AA,&94,&42,&90
        DB      &AA,&A4,&56,&AA,&94,&42,&90
        DB      &AA,&A4,&56,&AA,&50,&40,&90
        DB      &AA,&A4,&15,&A9,&50,&40,&A0
        DB      &AA,&A4,&05,&55,&40,&50,&20
        DB      &AA,&AA,&80,&0A,&69,&55,&50
        DB      &AA,&A8,&00,&00,&0A,&55,&50
        DB      &AA,&A0,&00,&01,&42,&95,&50
        DB      &AA,&A0,&00,&00,&01,&15,&50
        DB      &AA,&80,&00,&00,&89,&95,&50
        DB      &AA,&80,&00,&00,&01,&95,&50
        DB      &AA,&00,&00,&00,&05,&65,&50
        DB      &AA,&00,&00,&00,&00,&65,&50
        DB      &AA,&00,&00,&00,&21,&65,&50
        DB      &A8,&00,&00,&00,&14,&A5,&50
        DB      &A8,&00,&00,&00,&44,&A5,&50
        DB      &A8,&00,&00,&01,&09,&65,&50
        DB      &A8,&00,&00,&02,&18,&99,&50
        DB      &A8,&00,&00,&04,&A5,&99,&50
        DB      &A8,&00,&00,&10,&00,&19,&50
        DB      &A8,&01,&50,&01,&54,&09,&50
        DB      &A8,&05,&55,&55,&64,&19,&50
        DB      &A8,&05,&55,&55,&A9,&19,&50
        DB      &A8,&05,&55,&55,&AA,&11,&50
        DB      &A9,&05,&55,&56,&AA,&11,&50
        DB      &A9,&05,&55,&56,&AA,&11,&50
        DB      &A9,&15,&55,&56,&AA,&01,&50
        DB      &A9,&15,&55,&5A,&AA,&01,&50
        DB      &A9,&15,&01,&58,&0A,&01,&50
        DB      &A9,&14,&50,&50,&52,&01,&50
        DB      &A8,&41,&54,&51,&55,&11,&50
        DB      &A8,&55,&04,&51,&05,&11,&50
        DB      &A8,&54,&40,&64,&41,&11,&50
        DB      &A8,&55,&04,&69,&46,&11,&50
        DB      &A8,&55,&54,&69,&6A,&11,&50
        DB      &A9,&55,&54,&6A,&5A,&51,&50
        DB      &A9,&45,&54,&6A,&9A,&51,&50
        DB      &A9,&45,&55,&6A,&AA,&51,&50
        DB      &AA,&45,&55,&AA,&AA,&65,&50
        DB      &AA,&45,&55,&AA,&A9,&25,&50
        DB      &AA,&45,&51,&AA,&A9,&25,&50
        DB      &AA,&05,&51,&A6,&A9,&05,&50
        DB      &AA,&05,&54,&1A,&A9,&05,&50
        DB      &AA,&85,&55,&1A,&A9,&05,&50
        DB      &AA,&85,&55,&69,&A5,&15,&50
        DB      &AA,&85,&55,&69,&A5,&15,&50
        DB      &AA,&81,&55,&69,&A5,&15,&50
        DB      &AA,&A1,&50,&16,&A5,&15,&50
        DB      &AA,&A1,&55,&69,&A5,&15,&50
        DB      &AA,&A1,&55,&56,&A4,&55,&50
        DB      &AA,&A1,&54,&06,&A4,&55,&50
        DB      &AA,&A4,&55,&6A,&A4,&55,&50
        DB      &AA,&A4,&55,&AA,&A4,&55,&50
        DB      &AA,&A4,&55,&AA,&54,&55,&50
        DB      &AA,&A4,&15,&6A,&50,&55,&50
        DB      &AA,&A4,&15,&69,&50,&55,&50
        DB      &AA,&A4,&05,&55,&40,&55,&50
        DB      &FF,&FF,&FF,&7F,&FF,&FF,&F5
        DB      &FF,&FF,&FD,&DF,&FF,&FF,&F5
        DB      &FF,&FF,&F6,&F7,&FF,&FF,&F5
        DB      &FF,&FF,&F5,&D7,&FF,&FF,&F5
        DB      &FF,&FF,&D6,&F5,&FF,&FF,&F5
        DB      &FF,&FF,&D5,&D5,&FF,&FF,&F5
        DB      &FF,&FF,&56,&F6,&7F,&FF,&F5
        DB      &FF,&FF,&55,&D6,&7F,&FF,&F5
        DB      &FF,&FF,&56,&F6,&7F,&FF,&F5
        DB      &FF,&FF,&55,&D6,&7F,&FF,&F5
        DB      &FF,&FD,&56,&F5,&9F,&FF,&F5
        DB      &FF,&FD,&56,&F5,&9F,&FF,&F5
        DB      &FF,&FD,&55,&D5,&9F,&FF,&F5
        DB      &FF,&FD,&56,&F5,&9F,&FF,&F5
        DB      &FF,&FD,&59,&F5,&5F,&FF,&F5
        DB      &FF,&FD,&59,&FE,&5F,&FF,&F5
        DB      &FF,&FD,&59,&BE,&5F,&FF,&F5
        DB      &FF,&FD,&59,&BE,&5F,&FF,&F5
        DB      &F5,&FD,&65,&6F,&9F,&D7,&F5
        DB      &F5,&7D,&65,&6F,&9F,&57,&F5
        DB      &F9,&7D,&65,&5B,&9F,&5B,&F5
        DB      &F9,&7D,&95,&5B,&EF,&5B,&F5
        DB      &FA,&5D,&95,&5B,&ED,&6F,&F5
        DB      &FA,&5D,&95,&5B,&ED,&6F,&F5
        DB      &FA,&5D,&95,&5B,&FD,&6F,&F5
        DB      &FA,&56,&55,&5B,&FD,&6F,&F5
        DB      &FE,&96,&55,&5B,&F5,&BF,&F5
        DB      &FE,&96,&55,&5B,&F5,&BF,&F5
        DB      &FE,&96,&55,&5B,&F5,&BF,&F5
        DB      &FE,&96,&55,&56,&F5,&BF,&F5
        DB      &FE,&96,&55,&56,&F5,&BF,&F5
        DB      &FE,&96,&55,&56,&75,&BF,&F5
        DB      &FE,&96,&55,&56,&75,&BF,&F5
        DB      &FE,&95,&95,&55,&D5,&BF,&F5
        DB      &FE,&95,&95,&55,&D5,&BF,&F5
        DB      &FE,&BD,&95,&55,&DF,&7F,&F5
        DB      &FE,&E9,&7F,&FF,&5B,&7F,&F5
        DB      &FD,&E9,&D5,&55,&DA,&DF,&F5
        DB      &FD,&E9,&7F,&FF,&5A,&DF,&F5
        DB      &FD,&E9,&7F,&FF,&5A,&DF,&F5
        DB      &FD,&E9,&FF,&FF,&DA,&DF,&F5
        DB      &FD,&E9,&DF,&FD,&DA,&DF,&F5
        DB      &FD,&79,&DF,&FD,&DB,&6F,&F5
        DB      &FA,&7A,&77,&F7,&6B,&6F,&F5
        DB      &FA,&7A,&75,&57,&6B,&6F,&F5
        DB      &E9,&7A,&75,&57,&6B,&6B,&F5
        DB      &E9,&5E,&7D,&5F,&AD,&5B,&F5
        DB      &A5,&5E,&9F,&FD,&AD,&5A,&F5
        DB      &A5,&5E,&9F,&F9,&AD,&56,&F5
        DB      &95,&57,&95,&55,&B5,&56,&B5
        DB      &95,&57,&95,&56,&B5,&55,&B5
        DB      &95,&55,&A5,&5A,&95,&55,&A5


Just do this:
open the Assembler, load this file in, and assemble it.
Then open the GFX viewer, set it's address to &9920 (without &) and set: width to 7, height to 52 and zoom to 1.

The sprites are linear!
WinAPE's GFXviewer can show these sprites, too...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:04, 12 November 10
no full release yet!
But here's another new beta:
http://cpc-live.com/data/download.php?type=-beta&fichier=2010_11_12_JavaCPC_Desktop_BETA.zip (http://cpc-live.com/data/download.php?type=-beta&fichier=2010_11_12_JavaCPC_Desktop_BETA.zip)

New: Multiface 2 emulation.

(To enable check system-settings)
(http://cpc-live.com/mf2.png)

Demo:
http://cpc-live.com/mf2 (http://cpc-live.com/mf2)

Have fun!

Btw.: "HOME" or "POS 1" is the multiface button!
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 23:06, 12 November 10
Great work!!!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:10, 04 January 11
Working on CPC-plus image conversion in JavaCPC-Paint:
  (http://cpc-live.com/plus_source.png)
  (http://cpc-live.com/plus_result.png)

So you will be able to edit / create SCR files for the CPC+.
Also, when JavaCPC cannot emulate the + ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 00:06, 05 January 11
One more: (http://cpc-live.com/overscanpaint_plus.png)

The screens are also saveable as .SCR and fully ConvImgCPC compatible...

They also load well in WinAPE :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:05, 27 January 11
Thanks to Kevin, I added "Stack" info to JavaCPC's debugger:
(http://cpc-live.com/debugger.png)

So I think the debugger is almost complete...

Or should I add more features?
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 20:46, 27 January 11
That looks quite well done! ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:21, 27 January 11
JavaCPC's next release becomes "Donationware".
This means:
The emulator is full freeware.
You can register, if you want. (This is also absolutely free)
And you can donate a fee for my work. (via Paypal, Button is shown in register form and about dialog)

Why?
Simple:
I spend much time in adding things, improving features etc...

When I get enough donations, I also of course will share the money with all project helpers, co-developers etc...!

Also your name will appear in future releases in the donors list!

You can download the newest beta from today here:
http://cpc-live.com/data/list.php?dir=-beta (http://cpc-live.com/data/list.php?dir=-beta)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 15:02, 05 February 11
Small workaround for Windows users with a fast PC and Win XP with SP3....

Perhaps JavaCPC runs slow on your system.
(FPS are around 30 fps but emulation seem to work ok)

I figured out something:
When you have DXDIAG.EXE running in background, the emulator has full 50 fps!

How?
Click START -> RUN
Enter dxdiag.exe and press return.
When dialog is opened completely (loaded all drivers etc) you should have ~50 FPS in JavaCPC!

Please keep me informed if you can confirm this!

(Perhaps there is a way to preload Direct-Draw DLL's from Java?)
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 22:25, 05 February 11
I can confirm that, so long as dxdiag is run first.  Not sure if it really improves performance or not though, 30-40fps doesn't seem to be much different than 50fps.  But I do remember it being slow before, though.  Weird.
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 01:54, 06 February 11
Quote from: mahlemiut on 22:25, 05 February 11
I can confirm that, so long as dxdiag is run first.  Not sure if it really improves performance or not though, 30-40fps doesn't seem to be much different than 50fps.  But I do remember it being slow before, though.  Weird.

Well, 50 fps means smooth scrolling ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:04, 08 February 11
New features:
- CPC-speaker emulation (Let's squeak on 1 channel! 1w 5cm speaker power!!! Can you boost it? I really like nostalgia thats why I coded it!)
- Low pass audio filter (perhaps some people like it)

Selectable in Audio-settings...
(http://cpc-live.com/filtertest/FirstFrame.png)

You'll find the download (http://cpc-live.com/data/download.php?type=-beta&fichier=2011_02_08_JavaCPC_Desktop_BETA.zip) <<<<< here! :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 23:06, 08 February 11
Quote from: Devilmarkus on 23:04, 08 February 11
New features:
- CPC-speaker emulation (Let's squeak on 1 channel! 1w 5cm speaker power!!! Can you boost it? I really like nostalgia thats why I coded it!)

That must be perfect for Orion Primes ESX sound system, which is specially made for the internal speaker ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:07, 08 February 11
Quote from: TFM/FS on 23:06, 08 February 11

That must be perfect for Orion Primes ESX sound system, which is specially made for the internal speaker ;D

I don't know, but I'm sure, you'll report soon how it sounds ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 23:13, 08 February 11
Quote from: Devilmarkus on 23:07, 08 February 11
I don't know, but I'm sure, you'll report soon how it sounds ;)

Damn! How can you be that quick in posting... the JavaCPC still boots ,-)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:15, 08 February 11
Quote from: TFM/FS on 23:13, 08 February 11

Damn! How can you be that quick in posting... the JavaCPC still boots ,-)

I don't know, which JavaCPC boots for you, but the one I uploaded today has 0 downloads yet... :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 23:17, 08 February 11
Quote from: Devilmarkus on 23:15, 08 February 11
I don't know, which JavaCPC boots for you, but the one I uploaded today has 0 downloads yet... :P

Well, you may should provide a link... sorry, but you got toooo much homepages ;-)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:17, 08 February 11
Quote from: TFM/FS on 23:17, 08 February 11

Well, you may should provide a link... sorry, but you got toooo much homepages ;-)

Here is the direct download link:
http://cpcwiki.eu/forum/index.php/topic,484.msg19303.html#msg19303
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 23:35, 08 February 11
Quote from: Devilmarkus on 23:17, 08 February 11
Here is the direct download link:
http://cpcwiki.eu/forum/index.php/topic,484.msg19303.html#msg19303 (http://cpcwiki.eu/forum/index.php/topic,484.msg19303.html#msg19303)

Ah, thanks, now I found it. Hard to see under that giant picture...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:40, 10 February 11
Working on new Debugger-UI:
(http://cpc-live.com/debugger1.png)

(http://cpc-live.com/debugger2.png)

Any ideas, which infos to add, too?
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 19:28, 10 February 11
Are you sure, that the PPI registers are shown correct. I doubt the values of A and B. But C and control seem to be ok. Have to check that in more detail.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:58, 11 February 11
Quote from: TFM/FS on 19:28, 10 February 11
Are you sure, that the PPI registers are shown correct. I doubt the values of A and B. But C and control seem to be ok. Have to check that in more detail.

Fixed the panel...
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 22:13, 11 February 11
Quote from: Devilmarkus on 09:58, 11 February 11
Fixed the panel...

Great! Keep us posted when you release the next beta  :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 12:02, 13 February 11
Does JavaCPC run at all under Linux, or did I just imagine reading that?  It just waits forever while loading for me.  Runs fine under WinXP, but that crusty old PC isn't all that fast... ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:14, 14 February 11
I don't think, it runs under Linux...  :-[
In next "beta" I will disable internal Java-console by default so we could check which errors are caused on startup.
But I really don't give it a chance that it works with Linux.
(We tried it on Mac, too, and there it worked...)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 12:01, 14 February 11
Quote from: Devilmarkus on 10:14, 14 February 11
I don't think, it runs under Linux...  :-[

I'm sure I had JEMU working on Linux at some stage. Will try it on my FC12 box later this week (when I get back from Melbourne).
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:51, 14 February 11
Quote from: Executioner on 12:01, 14 February 11
I'm sure I had JEMU working on Linux at some stage. Will try it on my FC12 box later this week (when I get back from Melbourne).

Much luck! ;) (JEMU I think works well under linux, except of bad performance because Linux's bad sound implementation)

My other "small" Emu (Based on JEMU, too) should work fine under Linux:
http://cpcwiki.eu/forum/index.php/topic,1871.0.html (http://cpcwiki.eu/forum/index.php/topic,1871.0.html)

But JavaCPC I think is quite too complex and sure has some bad written routines, which fail on Linux systems...
(It also copies windows resources like CPCXFS, SamDisk etc...) into C:\Documents & Settings\Username\JavaCPC or different path for Win Vista/7 which logically work only with Windows OS.)

Also it's strongly recommended that you run JavaCPC with full administrator rights!!!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:04, 14 February 11
Perhaps you remember that I wanted to use some Java styles which need a license.

I now implemented these styles, too, but they only work, when you have the libraries needed.
(JavaCPC detects if you got them or not)
They use my private license but I will never distribute the licensed .JAR libs which you need.
(You can license them for free when you use them on your private PC, then you get a DL-Link and you can download them and add them to JavaCPC's install_dir\libs)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:43, 14 February 11
B'coz it's Valentine's day I compiled the actual state and offer it for download:
(X-tra large because TFM's little eyes)
Download (http://cpc-live.com/data/download.php?type=-beta&fichier=2011_02_14_JavaCPC_Desktop_BETA.zip)

No synthetica files or license included!
To get them, visit: http://www.jyloo.com/synthetica/ (http://www.jyloo.com/synthetica/)
JavaCPC asks you for license name and key, when you select a synthetica style.
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 20:56, 14 February 11
Thanks baby! ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 21:49, 14 February 11
Quote from: Devilmarkus on 12:51, 14 February 11
But JavaCPC I think is quite too complex and sure has some bad written routines, which fail on Linux systems...
(It also copies windows resources like CPCXFS, SamDisk etc...) into C:\Documents & Settings\Username\JavaCPC or different path for Win Vista/7 which logically work only with Windows OS.)
This bit works (the copying, at least), they are copied to ~/JavaCPC (~ = the user's home folder, Documents and Settings\User is the Windows equivalent to that).  Does it attempt to run any of the Windows apps while loading?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:03, 14 February 11
No... The Win apps are only called when you need them.
(DiskUtil, Wav2CDT, etc...)

Please edit javacpc.ini and change this entry:
console=true change to:
console=false

Then, please run JavaCPC.jar from a command line.
java -Xmx512m -jar JavaCPC.jar

Please send me the console output as mail if possible (or in MSN).
(webmaster[at]cpc-live.com)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:24, 18 February 11
just a dirty little preview:
http://cpc-live.com/topsecret/ (http://cpc-live.com/topsecret/)

Don't expect too much!
Actually it's the only game which works  :laugh:

Perhaps I will finish the rest in 10 or 20 years  :police:
Title: Re: JavaCPC Desktop available as BETA!
Post by: norecess on 00:41, 19 February 11
I guess you just started ASIC implementation ?
Great thing... good luck !!  :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 16:51, 19 February 11
Looks promising :-)))
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 09:32, 22 February 11
Oooohhh... ahhhhhH!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:54, 22 February 11
Well so far:
  (http://cpc-live.com/plus/plus1.png)
  (http://cpc-live.com/plus/plus2.png)
  (http://cpc-live.com/plus/plus3.png)
  (http://cpc-live.com/plus/plus4.png)
  (http://cpc-live.com/plus/plus5.png)
  (http://cpc-live.com/plus/plus6.png)

Only working games are:
Barbarian 2,
Tin Tin on the moon
and Mystical.

Need to add much more (DMA, plus raster interrupts, etc....)

There also seem to be a bug in memory itself... Still working on it...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:09, 24 February 11
Working on it......
(Just want to keep you updated)
(http://cpc-live.com/spritetest2.png)
Menu is crap but the game plays OK....

(http://cpc-live.com/spritetest.png)

Call &BD'N'OEUF works nice now...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:49, 26 February 11
A small oversight of what is working and what not:
http://cpc-live.com/crapandworking/index.html

Much more emulation is needed to get the other things working, too...
And I still have this memory leaking issue  :'(
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 19:27, 27 February 11
Mate, are you aiming at a 100% working Plus emu or is it a side-project? :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:17, 27 February 11
Quote from: Gryzor on 19:27, 27 February 11
Mate, are you aiming at a 100% working Plus emu or is it a side-project? :)

First...
Why not JavaCPC with + emulation?
But I'm still far far away from something releasable....
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 21:59, 27 February 11
Oh no! I didn't say you shouldn't - of course you should!!! It's just that, IIRC, you had once said it wasn't going to happen... :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:56, 02 May 11
Actually I am working on CRT phosphor matrix emulation...
(http://cpc-live.com/rgb_mask3.png)

I need to improve the framerate (It's still 50fps internally but when the blur-filter is active, the image flickers when here is any motion)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 15:53, 02 May 11
Well, I agree, technical improvements are wonderfull, but without 50 fps pretty needless.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:51, 03 May 11
Looking very cool, though I think that a little more transparency on the matrix would be better? I also like the screen glare :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:25, 03 May 11
Also working on a Eagle-like filter like Mame has:

Without filter:
(http://cpc-live.com/eagle0.png)

With filter:
(http://cpc-live.com/eagle1.png)
(http://cpc-live.com/eagle2.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Nich on 20:16, 04 May 11
Quote from: Devilmarkus on 10:25, 03 May 11
Also working on a Eagle-like filter like Mame has:

[screenshots removed]

Which Spanish adventure game do the first two screenshots come from? I don't recognise it. ???
Title: Re: JavaCPC Desktop available as BETA!
Post by: MiguelSky on 22:25, 04 May 11
Nich, it is Leyend :) http://amstrad.es/juegosamstrad/zonadeaventura/aventuras/leyend.php (http://amstrad.es/juegosamstrad/zonadeaventura/aventuras/leyend.php)
I want send to you in the next package of games :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:30, 07 May 11
On FaceBook I uploaded a little overview for the upcoming video filters of JavaCPC.
http://www.facebook.com/media/set/?set=oa.129199530488265
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:24, 15 May 11
Small update with great new feature:
Today I uploaded my latest build which contains a "Favourite-Browser".
This is to be used as little internal application which can store up to 1000 files in a desktop-style window.
You can simply add the actual DSK from JavaCPC's drive 0 or 1 to it, or also select a file from a filechooser.
You can also drag & drop 1 or more files together into the browser window.
(http://cpc-live.com/favbrowser.png)

The point is that you now don't need to search your most used media on your PC.
Each icon is stored in a config file and you quickly can open each file by double click on it.
On DSK files you can select the drive by right clicking on it and choose to load it to DF0 or DF1.

A few more screens:
(http://cpc-live.com/favbrowser1.png)
Here you can add your files or cleanup the window by rightclick into empty area of the browser.

(http://cpc-live.com/favbrowser2.png)
Typical right-click menu for a DSK file.

You can try the actual beta here:
Download JavaCPC (http://cpc-live.com/data/download.php?type=-beta&fichier=2011_05_15_JavaCPC_Desktop_BETA.zip)

Actually the fav.-browser is only reachable when desktop is choosen.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 17:19, 16 May 11
Played with a few video effects today:
RGB2x filter, scanlines, fullscreen, SuperPAL filter and Monitor mask painted:
http://cpc-live.com/javacpc_rgbfilter.png (http://cpc-live.com/javacpc_rgbfilter.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: remax on 18:10, 16 May 11
I love what you do with your emulator.


I long for the day i'll have the beast that will allows me to run at full FPS with every option turned on :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:22, 16 May 11
Quote from: remax on 18:10, 16 May 11
I love what you do with your emulator.


I long for the day i'll have the beast that will allows me to run at full FPS with every option turned on :D

Well I have a simple dual core CPU @ 2,8 ghz.
64Bit Windows 7 BUT 32 bit Java!
(I quote somebody well known here: 'javax.sound API sucks') ;)


Worked on the favourite browser: You can add/remove user defined icons now:
(http://cpc-live.com/usericons.png)

(My fav.-browser actually contains 480 files just for a test)
When you add new icons and you already have so many, it takes some seconds, but once defined it works fast enough ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:45, 17 May 11
New display routines come cuter...
http://cpc-live.com/desktop2.png (http://cpc-live.com/desktop2.png)

I like this way of display painting... ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 12:00, 17 May 11
Looks nice, although the play key on the cassette looks like it is broken.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:04, 17 May 11
Well it's state is "pressed" so it appears darker than the others ;)
All tape keys which you "press" (click) appear darker then to see which button is pressed down...
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 21:40, 17 May 11
No, when you press a key on a real CPC tape deck, the key goes down at an angle whereas your key goes straight down as if it were not connected by a metal bar to the rest of the tape drive.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:48, 17 May 11
Quote from: steve on 21:40, 17 May 11
No, when you press a key on a real CPC tape deck, the key goes down at an angle whereas your key goes straight down as if it were not connected by a metal bar to the rest of the tape drive.

In a real tape deck I also don't load a CDT or TZX or CSW or WAV or MP3 :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 21:55, 17 May 11
I suppose it does not matter whether it looks right or not.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:08, 17 May 11
Well, Steve, everything has it's limitations. Also Java and designing GUIs.
But I tried my best to keep it as detailled as possible.
And: Dear Steve, only for your eyes:
A little virtual-tape-drive-mechanics-demonstration:
http://cpc-live.com/steve_demonstration (http://cpc-live.com/steve_demonstration)

Don't worry, when the sound fu**s up... I enabled the drive turbo somewhere.
Also my recorder is not the best with Win 7 ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 22:23, 17 May 11
As I said, It looks nice.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:28, 17 May 11
I quickly updated the beta download...

Download (http://cpc-live.com/data/download.php?type=-beta&fichier=2011_05_17_JavaCPC_Desktop_BETA.zip)

Fixed a few bugs.
- Major bugfix in paint
- Major bugfix in GateArray emulation and display routines
- A few minor bugfixes
- Replaced monitor mask 1 by a new one (nicier style)
- Fixed Advanced Mame 2x and Eagle 2x display filters (not MODE 0 optimized (yet))
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:21, 18 May 11
Looks fantastic... Thumbs up! :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:54, 27 May 11
Still working on + emulation like a geek!  8)

Missing:
- Still a bug somewhere in memory!  :'(
- Split screen (by ASIC)
- DMA - Sound
- Who knows?!?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:29, 27 May 11
JavaCPC - CPC+ emulation (Work in progress) (http://www.youtube.com/watch?v=7rWHtJWMMoU#)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:40, 28 May 11
Live-test for you:
http://retropower.eu/CPCInAJar/cpcplus.php?large=true (http://retropower.eu/CPCInAJar/cpcplus.php?large=true)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Panza.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Panza.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=CrazyCars.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=CrazyCars.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Enforcer.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Enforcer.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Operation.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Operation.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Robocop.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Robocop.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=NavySeals.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=NavySeals.zip)

Keys: Numberpad 1-9 = F-keys (F0 does not work because I use it for local usage)
Joystick is mapped to:
HOME     = Up
END       = Down
DEL        = Left
PG DWN = Right
INSERT  = Fire 1
PG UP    = Fire 2

And don't expect something very special! It's still in a very early progress...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 09:30, 29 May 11
Ooh yeah! Plus is the new black ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 15:23, 29 May 11
A few more:
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=NoExit.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=NoExit.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=WildStreets.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=WildStreets.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Tintin.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Tintin.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Switchblade.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Switchblade.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=ProTennis.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=ProTennis.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Plotting.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Plotting.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Mystical.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Mystical.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=FireForget.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=FireForget.zip)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Batman.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Batman.zip)

And, as a joke:

http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=JukeBox.zip (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=JukeBox.zip)
Not working... (yet)

Sadly (because bugs in memory emulation) I can only present you a very few disc-games:
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=CallBD10noeuf.zip&cpr=Plus.zip&boot=disc (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=CallBD10noeuf.zip&cpr=Plus.zip&boot=disc)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Fluff.zip&cpr=Plus.zip&boot=fluff (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Fluff.zip&cpr=Plus.zip&boot=fluff)
A few gfx bugs but playable:
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Frogger.zip&cpr=Plus.zip&boot=frogger (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Frogger.zip&cpr=Plus.zip&boot=frogger)

2 simple demos:
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Redbox.zip&cpr=Plus.zip&boot=blob (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Redbox.zip&cpr=Plus.zip&boot=blob)
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Xmas2010.zip&cpr=Plus.zip&boot=xmas2010 (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=Xmas2010.zip&cpr=Plus.zip&boot=xmas2010)

Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 12:18, 30 May 11
Quote from: Devilmarkus on 15:23, 29 May 11
2 simple demos:


Yay! Cool to see them working in your emu  :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:39, 30 May 11
Quote from: redbox on 12:18, 30 May 11
Yay! Cool to see them working in your emu  :)

:D :)

Well, in fact, getting the correct sprite coordinates (Especially the values between FF00 and FFFF) is the pure horror!!!
But I hope I got it now working properly.

This demo almost broke my brain:
http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=stb.zip&cpr=Plus.zip&boot=-stb (http://retropower.eu/CPCInAJar/cpcplus.php?large=true&dsk=stb.zip&cpr=Plus.zip&boot=-stb)
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 19:59, 30 May 11
Quote from: Devilmarkus on 19:39, 30 May 11
Well, in fact, getting the correct sprite coordinates (Especially the values between FF00 and FFFF) is the pure horror!!!


Tell me about it...


I thought to myself it would be a nice idea to use the hardware sprites for a scroller as I could keep the 16x16 MODE 1 resolution over a MODE 0 background.  But then I had a tough time because I wanted to make them to move in a sinus, and because the sprite on the left is recycled to be the sprite on the right I had to calculate where it should be in the sinus wave when it reappeared...


In the end I cheated and made the whole sinus a multiple of 4 (I think) because I ran out of time to release it before Xmas, and that's why the scroller is much more rough and jumpy than I had wanted it to be.


But you're emu does a great job of showing off my poor and rushed coding in it's full glory!  ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:23, 30 May 11
Well I took my infos from this piece of website:
http://www.cpctech.org.uk/docs/cpcplus.html (http://www.cpctech.org.uk/docs/cpcplus.html)

Sad:
Missing emulation:
- DMA sound
- Accurate!!! + interrupts
- hardware + rasters
- repeating of sprites linewise
- hardware scrolling
And much more...
Working:
- Sprites (very simple routine, may not be accurate)
- Line splitting
- + interrupts (perhaps inaccurate but ok for many games)
- Accurate CPR reading

Known bugs:
- A bug in memory emulation, mapping is not correct
- crap code (for all + features)
- ASIC maybe is incomplete, some CPR don't even boot up, but this maybe is because mem.-bug

No CRTC 3 emulation done yet... (I am using CRTC 0 with some patches)
Title: Re: JavaCPC Desktop available as BETA!
Post by: MaV on 21:34, 30 May 11
Quote from: Devilmarkus on 20:23, 30 May 11
Well I took my infos from this piece of website:
http://www.cpctech.org.uk/docs/cpcplus.html (http://www.cpctech.org.uk/docs/cpcplus.html)

Good work so far!!

Keep in mind: Kevin's infos are very condensed with almost no redundancy. That's ok for someone who has a working knowledge of the CPCs, but hardly a learner's guide to the hardware.

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:36, 01 June 11
Here's the world's first Amstrad Cartridge Demonstrator online:
http://cpc-live.com/jukebox/index.php?large=true&dsk=jukebox.zip (http://cpc-live.com/jukebox/index.php?large=true&dsk=jukebox.zip)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:18, 25 June 11
And today I added the next useful internal application to JavaCPC:
I asked McKlain, what could be a useful tool.
His reply: "A way to transfer files from DSK directly to CDT"
Well, I coded this little app. quickly and it works fine.
You just can select the files from DSK in drive 0 in the order you need and write them directly into a CDT file.
Example:
http://cpc-live.com/dsk2cdt/ (http://cpc-live.com/dsk2cdt/)  Don't worry because crap sound. I used tape turbo and I recoded a screen area of 1920x1040 pixels!

(No release yet... Still coding...)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 05:08, 27 June 11
Do you have a way to transfer from CDT to DSK too? That would be far more useful!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:45, 13 July 11
Quote from: TFM/FS on 05:08, 27 June 11
Do you have a way to transfer from CDT to DSK too? That would be far more useful!

No... Until I can't extract the files from a CDT its not possible ;)
But one day I'll find a solution :D


Working on JavaCPC Paint GUI + features:
- Adding real Zoom-functionality:
http://cpc-live.com/painttest/ (http://cpc-live.com/painttest/)

When Paint is finished, and also a bug in Z80 assembler is removed, I'll roll out a new official release!
(Without + Emulation then! Because it's still too buggy)
Title: Re: JavaCPC Desktop available as BETA!
Post by: norecess on 02:58, 14 July 11
Congratulations ! There is lots of work involved here.  8)
Title: Re: JavaCPC Desktop available as BETA!
Post by: chrd on 19:55, 22 July 11
I've been testing JavaCPC (6.7) lately on Mac OSX (Snow Leopard), works quite well. It has shown an extremely nice - and feature packed - emulator so far.


I guess the only reason the readme.txt mentions 'Windows PC' in the requirements it the two .exe files in the tools folder? Is the jar on SourceForge current?


I did have some smaller freezes / lockups when loading a tape directly from a .WAV which got generated and regenerated from another program (I'm currently doing a Python port of the TZX2Wav C++ utility, a bit like the CDT2WAV Java version).
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:55, 22 July 11
Thanks for your feedback, chrd.

Version 6.7 is already very old & outdated.
Since I applied a complete desktop system and many new features, the emulator is not longer hosted on Sourceforge.

Also the actual version is meant to be used on Windows systems only, because it uses a few command line based Windows-Tools.
(It could work also on Mac OS when you start the .jar file! but will not support the features like DSKUtil, CDT/DSK transfer tools etc...)
You should also make sure, that you launch it with -xms set.
e.g. java -Xms768m -jar javacpc.jar

You can download and test the actual beta here:
Download 2011-07-14 beta (http://cpc-live.com/data/download.php?type=-beta&fichier=2011_07_14_JavaCPC_Desktop_BETA.zip)
Title: Re: JavaCPC Desktop available as BETA!
Post by: chrd on 23:36, 22 July 11
Quote from: Devilmarkus on 21:55, 22 July 11
Thanks for your feedback, chrd.

Version 6.7 is already very old & outdated.
Since I applied a complete desktop system and many new features, the emulator is not longer hosted on Sourceforge.

Also the actual version is meant to be used on Windows systems only, because it uses a few command line based Windows-Tools.
(It could work also on Mac OS when you start the .jar file! but will not support the features like DSKUtil, CDT/DSK transfer tools etc...)
You should also make sure, that you launch it with -xms set.
e.g. java -Xms768m -jar javacpc.jar

You can download and test the actual beta here:
Download 2011-07-14 beta (http://cpc-live.com/data/download.php?type=-beta&fichier=2011_07_14_JavaCPC_Desktop_BETA.zip)

Thanks!
I can confirm that this JavaCPC version is working perfectly fine (apart from the missing features) on OS X 10.6.8.
java -version:

java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07-334-10M3326)
Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02-334, mixed mode)
Title: Re: JavaCPC Desktop available as BETA!
Post by: MiguelSky on 01:19, 23 July 11
Quote from: Devilmarkus on 20:45, 13 July 11
No... Until I can't extract the files from a CDT its not possible ;)
Some applications as Spectrum Taper can do it. Perhaps you could start to seek there ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:39, 23 July 11
Quote from: MiguelSky on 01:19, 23 July 11
Some applications as Spectrum Taper can do it. Perhaps you could start to seek there ;)

I already searched there.
But no tool is good for my requirements...
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 02:08, 06 August 11
Update on running Java CPC under Linux...

Uninstalled Pulseaudio, now it will run at 51(?) FPS.  But only if it is to 44100Hz.  Any other setting goes back to 5FPS.  Also, there is no AY output.  Drive noises, SP0256 output, and so on do work well.

When running slow, either with or without Pulseaudio, the console output shows constant "resync: start = 0" messages.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:26, 20 August 11
A few people have shown me a link to an emulator, which has a "screen lens effect" (Forgot the link, sorry...)
Well I tried to code that, too, but with only 1-2fps it's not really fun!
(http://cpc-live.com/Screen_Effect.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 14:49, 20 August 11
Mmmm...not very realistic I'm afraid... Maybe the lack of scanlines?
Title: Re: JavaCPC Desktop available as BETA!
Post by: MaV on 16:35, 20 August 11
You lack the border, and the screen lens effect is not as big on a monitor as shown in your example.

I also don't think that such an effect is justified as it adds little value to the retro quality of the CPC image, especially since such algorithms are quite costly on the java platform. The OS X terminal emulation in the other thread is compiled natively for sure.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 17:34, 20 August 11
Well, give him a break, it was a first effort :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:24, 20 August 11
Don't need a break because I already abandoned this crap...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:02, 20 August 11
But the CTM-phosphor emulation I like:
(http://cpc-live.com/CTM-emulation.png)

Of course it's not the closest result but it's coded in pure java without any accelerators!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 23:04, 20 August 11
Yes, good phosphor emulation is definitely more important. By default the CPC screen has such wide borders that the curvature effect is fairly minimal anyway.


And I suspect Cathode uses a textured OpenGL surface for the curved screen, so of course its frame rate is much better--the "screen bending" effect is not done by the CPU but the GPU. And yet the program is still a total CPU hog according to the YouTube comments.



Title: Re: JavaCPC Desktop available as BETA!
Post by: MaV on 23:16, 20 August 11
Quote from: Morn on 23:04, 20 August 11
And I suspect Cathode uses a textured OpenGL surface for the curved screen, so of course its frame rate is much better--the "screen bending" effect is not done by the CPU but the GPU. And yet the program is still a total CPU hog according to the YouTube comments.

I can imagine that. It expects a better graphics chip in the Mac, so the Intel-chips and even some better ones won't work.

The effect looks very nice, but I need a responsive system.
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 23:54, 20 August 11
You could try fiddling with the HLSL effects in MESS, you can get some nice output from that, provided you have a reasonably powerful video card (Pixel Shaders 3.0 or later recommended, Windows only, but runs well under Wine).
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 16:37, 21 August 11
Those HLSL-based CRT effects look pretty nice indeed! Here's an example with MAME, not MESS. Could really have fooled me into thinking this was filmed off an arcade CRT.


This is also good news for arcade enthusiasts, because finding replacement CRTs is becoming more and more problematic for them apparently.




Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:01, 21 August 11
The biggest problem to realize such effects is:
The emulated systems have a screen resolution of 320x240 (or so) so it's easy to resize this screen to a triple size.
There you can add easily new rendered dots, lines etc...
But the CPC uses at least 768x272 pixels.
There it's much harder to add additional pixels.
I am doing the same method as its used in DosBox.
I also use just 384x272 pixels, and stretch them to double (768x544)
So I can re-render each pixel to a new 2x2 dot.
{R}{G}
{B}{L}

This demonstrates a single CPC dot in MODE 1.

I split this pixel into R,G, B and also L (RGB as its by default)

Thus, a MODE 2 screen looks more weird of course.I also can't use any hardware accelerators (jogl, or similar) to improve the speed, so really just some tricky algorithms can do the effects I made in JavaCPC.

WinApe for example:

I am sure, the PAL effect is done with usage of Direct-X accelerated routines...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 20:05, 21 August 11
Unfortunately that MAME filter doesn't come near the real stuff... I hope my arcade cab's CRT lasts for many years to come!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:48, 02 September 11
Thanks to Antonio Villena, JavaCPC will be able soon, to playback a modified .TAP format as tape image:



I will also add a converter which can convert CDT images to .TAP format.
Sadly the .TAP work only with unprotected CDTs...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 10:52, 02 September 11
Quote from: Devilmarkus© on 10:48, 02 September 11
Thanks to Antonio Villena, JavaCPC will be able soon, to playback a modified .TAP format as tape image:



I will also add a converter which can convert CDT images to .TAP format.
Sadly the .TAP work only with unprotected CDTs...


Maybe a silly question and maybe it's been answered before (did a short search), but: how were tapes protected? It *was* just sound after all... No damaged sectors, no weird layouts, no strange disk formats...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:55, 02 September 11
They can be protected by binary routines.
Speedlock for example resets your CPC when the tape speed it a few µS too slow or too fast.

But there are several protection methods...

Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 10:56, 02 September 11
So, for instance, if you got a really hi-end double-decker you can copy a Speedlock protection theoretically?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:59, 02 September 11
Sure, why not?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 11:06, 02 September 11
Ok, I see. I realised MacDeath has put together a nice category (http://cpcwiki.eu/index.php/Category:Copy_Protection (http://cpcwiki.eu/index.php/Category:Copy_Protection)) but there's not much info... maybe an interesting topic!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 04:24, 05 September 11
Quote from: Devilmarkus© on 18:01, 21 August 11
WinApe for example:

I am sure, the PAL effect is done with usage of Direct-X accelerated routines...

Nah, just RGB averaging with alternate half-bright for scan lines.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:58, 05 September 11
Quote from: Executioner on 04:24, 05 September 11
Nah, just RGB averaging with alternate half-bright for scan lines.

Humm yes...
It's a quite fast rendering method.
Thanks to demoniak, who told me how this can be done, I adapted it:
Title: Re: JavaCPC Desktop available as BETA!
Post by: McKlain on 22:27, 05 September 11
Quote from: Gryzor on 10:56, 02 September 11
So, for instance, if you got a really hi-end double-decker you can copy a Speedlock protection theoretically?

I did it all the time  :laugh:
Title: Re: JavaCPC Desktop available as BETA!
Post by: Executioner on 02:35, 07 September 11
Quote from: Devilmarkus on 20:58, 05 September 11
Humm yes...
It's a quite fast rendering method.
Thanks to demoniak, who told me how this can be done, I adapted it:

Yeah, that's the idea.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:19, 07 September 11
Is more realism with a few lines of code possible?
Spoiler: ShowHide

(http://cpc-live.com/ultra_realistic_pal.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 01:48, 08 September 11
Quote from: Devilmarkus on 22:19, 07 September 11
Is more realism with a few lines of code possible?
Spoiler: ShowHide

(http://cpc-live.com/ultra_realistic_pal.png)

This looks quite GREAT :-)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 11:46, 08 September 11
Added TV-snow distortion (adjustable in intensity)

(http://cpc-live.com/pal_snowy.png)
(High intensity)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:09, 08 September 11
Another screenshot:

Spoiler: ShowHide
(http://cpc-live.com/ultra_realistic_pal2.png)

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:35, 08 September 11
(http://cpc-live.com/pal_snow.gif)
Medium snow intensity + PAL emulation ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 17:44, 08 September 11
What's that? My CTM never showed such a bad pic! :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:59, 08 September 11
Quote from: TFM/FS on 17:44, 08 September 11
What's that? My CTM never showed such a bad pic! :P

But a TV with MP2 surely does...
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 23:04, 08 September 11
Now you need to simulate failed tape loads with realistic loading times! :laugh:
Title: Re: JavaCPC Desktop available as BETA!
Post by: remax on 18:40, 09 September 11
Quote from: Devilmarkus on 21:59, 08 September 11
But a TV with MP2 surely does...

Don't forget to add emulation of a broken TV that doesn't even switch on  :D

Joking apart, i really like your filter but i suspect i won't be able to use it soon as even with no effects, your emu runs barely at full speed on my computer
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:44, 09 September 11
Well, the PAL-Filter itself shouldnt slow down the speed too much I think.
The Blur-Filter and also the chooseable RGB2x, Adv. Mame 2x and Eagle2x filters would slow-down it more I think.
But if you like, I can send you a compiled .jar (You then can replace it in your JavaCPC-Folder)
You can find me in Skype or MSN ;)
(Just ask me for account)

Tell me more about your system-specs.

Quote from: steve on 23:04, 08 September 11
Now you need to simulate failed tape loads with realistic loading times! :laugh:
Well, the broken tapes you can produce simply! Just damage a .WAV file ;)
The loading speed for CDT is the same than for a real tape.
Title: Re: JavaCPC Desktop available as BETA!
Post by: remax on 18:50, 09 September 11
Quote from: Devilmarkus on 18:44, 09 September 11
Well, the PAL-Filter itself shouldnt slow down the speed too much I think.
The Blur-Filter and also the chooseable RGB2x, Adv. Mame 2x and Eagle2x filters would slow-down it more I think.
But if you like, I can send you a compiled .jar (You then can replace it in your JavaCPC-Folder)
You can find me in Skype or MSN ;)
(Just ask me for account)

Tell me more about your system-specs.

Fine :)

I'll do it that week end
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 19:17, 09 September 11
Quote from: Devilmarkus on 18:44, 09 September 11
Well, the broken tapes you can produce simply! Just damage a .WAV file ;)
The loading speed for CDT is the same than for a real tape.

But the user will know that a program is not going to load successfully, you need to introduce a random element to the load function so the user does not know when a load will fail.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:19, 09 September 11
Quote from: steve on 19:17, 09 September 11
But the user will know that a program is not going to load successfully, you need to introduce a random element to the load function so the user does not know when a load will fail.

You mean something like a virtual tape-head adjustment? Which de-adjusts itself after a while?  :laugh: :laugh: :laugh:
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 19:23, 09 September 11
Excellent idea, you could add a tape head alignment program for users to use to get the load function working again.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:26, 09 September 11
Quote from: steve on 19:23, 09 September 11
Excellent idea, you could add a tape head alignment program for users to use to get the load function working again.

Well, I'm afraid, but I think only 1 user would like this then... His nick is "steve" ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 19:28, 09 September 11
 :laugh: :laugh: :laugh: :laugh: :laugh:
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:35, 09 September 11
TODO-list for steve's CPC emulator:
- tape head alignment (tape head must de-align itself)
- floppy belt weakness after ~200DSK images (You need to change the virtual belt with a virtual screwdriver... Don't forget the virtual write-protection-pin must fall out, and you need to find it using a virtual lens)
- Explosive capacitators in monitor-emulation and also a weak flyback emulation which produces flashes, smoke and thunder
- breaking virtual plastic case which makes it hard to build-in virtual reset switches, or other virtual crap
- broken tapedoor which does open automatically when you press Enter
- overheating high-power-transistor in monitor emulation, which burns, produces smoke and causes also a high-voltage-flush into the emulated CPC
- crackling noise, when you change the CPC's volume (Best: just turn on the audio-output @ 3 fixed positions for the volume slider!)

Well, what else?
Title: Re: JavaCPC Desktop available as BETA!
Post by: steve on 19:49, 09 September 11
If you do implement all these "features" in your emulator then I will use a real CPC as it gives me a lot less trouble ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 19:50, 09 September 11
Once a while I wish to have just a very fast emulator...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Bryce on 23:09, 09 September 11
Could you add a tape counter that is completely non-linear and randomly resets itself too? That would be great :) But I think the read-error should be completely random and even happen on known good wav files, like the real CPC likes to do. Knowing that the wav is corrupt takes the "fun" out of it.

Oh, and a sticky Enter key would really make me feel like it's a real CPC :)

Bryce.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 17:46, 10 September 11
Never seen a self-resetting counter, does this happen for reals?

I'd love a virtual srewdriver to align the deck with. I have fond memories of doing that, actually (for some masochistic reason), with that classic tape with the chopper test game...
Title: Re: JavaCPC Desktop available as BETA!
Post by: robcfg on 20:12, 10 September 11
I like the virtual screwdriver, care to make it work with the Wii Remote via bluetooth?


Just for the authentic taste  ;D ;D ;D ;D ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:00, 19 October 11
Working and experimenting with emulating the screen-curvature!

Using Java3D here... And the result already has 50fps!
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:03, 19 October 11
Quote from: Devilmarkus on 18:00, 19 October 11
Working and experimenting with emulating the screen-curvature!

Using Java3D here... And the result already has 50fps!

Nice Helloween effect, also good for a demo effect - short before the CRT explodes. ...

But honestly... have you ever seen a real CPC screen?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:09, 19 October 11
I wrote that I am experimenting ;)
This is not the final result!
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:15, 19 October 11
Never mind :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 18:37, 19 October 11
I think the outer curve is very pronounced, but the screen itself looks about right :)

But why 3D?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:44, 19 October 11
Java 2d is too slow...
So I create a 3d sphere, and set the CPC display as texture...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:48, 19 October 11
Few more shots:

Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 22:38, 19 October 11
Markus, IMHO you should make your emulator faster instead of wasting time with surealistic experiments. That's just IMHO and you can kick my butt if you feel better then. But that's my 9 Cents ;-)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:46, 20 October 11
Well, for me it's fast enough ;)

Perhaps you can reduce the texturesize from 1024x1024 to 512x512 later, when I release this...
(3D Display will be optional then!)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 17:29, 20 October 11
I think my curvature is almost accurate!
Let's compare...
(thanks to SyX for this nice screenshot!)
(http://www.cpcwiki.eu/forum/index.php?action=dlattach;topic=2821.0;attach=2453;image)
(http://cpc-live.com/javacpc_curvature.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: SyX on 17:59, 20 October 11
You are welcome Markus :)

I have my CPC attached to a 14" Samsung TV by scart and my TV has "heavy round corners"  ;D

Notice that in this configuration, my CPC show 2 scanlines more, 272 instead 270, it's very clear in the TotO signature ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:12, 20 October 11
Yes I know about the 272 lines ;)
JavaCPC hides them because the monitor mask... Will pixel a new mask (just rounding the edges) for the 3d panel, soon.
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:19, 20 October 11
Quote from: Devilmarkus on 13:46, 20 October 11
Well, for me it's fast enough ;)

Ok, if my one year old $4000 Laptop with 3.6 GHz has serious problems to hold 50fps and drops more often down to 20fps (for reasons I still can't understand) then it's not fast enough for me. But if you are lucky with it then it's all good :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 18:22, 20 October 11
I have no speed issues on my Intel Quad Core. I like the way Java CPC focuses on different things to other emulators - means you have a choice instead of them all being the same!
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:23, 20 October 11
Quote from: redbox on 18:22, 20 October 11
I have no speed issues on my Intel Quad Core. I like the way Java CPC focuses on different things to other emulators - means you have a choice instead of them all being the same!

You miss the point here.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:36, 20 October 11
Quote from: TFM/FS on 18:19, 20 October 11

Ok, if my one year old $4000 Laptop with 3.6 GHz has serious problems to hold 50fps and drops more often down to 20fps (for reasons I still can't understand) then it's not fast enough for me. But if you are lucky with it then it's all good :)

Quote from: TFM/FS on 22:46, 18 October 11
Since the update it's all good!!!! Thanks!

Hmmmmm!?!?!? :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:39, 20 October 11
Well anyway...
I pixeled a new mask and now the result looks more realistic:
http://cpc-live.com/screen_curvature (http://cpc-live.com/screen_curvature)

Sadly the display sometimes flickers... need to check out, why....
With half texture size it's stable!
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:44, 20 October 11
Markus, nimm das jetzt bitte mal nicht ernst, ich sag's mit einem lächelnden Auge: Langsam wird mir klar wie ich die Leute mit meinen andauernden Kommentaren über FutureOS genervt haben könnte. Manchmal ist weniger eben mehr  ;) :laugh:
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:45, 20 October 11
Och Du nervst net ;) Ich weiss ja, von wems kommt :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:46, 20 October 11
Quote from: Devilmarkus on 18:45, 20 October 11
Och Du nervst net ;) Ich weiss ja, von wems kommt :P

Da spricht wahre Weisheit aus Dir  8)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TotO on 19:26, 20 October 11

Quote from: Devilmarkus on 18:39, 20 October 11I pixeled a new mask and now the result looks more realistic
Nice job. The mask size allow to use it in full screen ? (1280x960 4/3 ratio ?)
Also, I think your mask is a bit too much blurry compared to a real CTM.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:30, 20 October 11
Well the mask is not blurry ;) It's the enabled PAL effect but can be disabled.

Later the screen will be with the correct aspect ratio also on widescreen monitors (I'm also using 1920x1080 pixels here)

Actually I'm fiddling out, why JavaCPC denies it's work on TFM's PC ;)
Seems that he has 64 bit Java installed.

Please make sure you use 32 bit Java!
http://javadl.sun.com/webapps/download/AutoDL?BundleId=56697 (http://javadl.sun.com/webapps/download/AutoDL?BundleId=56697)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TotO on 19:34, 20 October 11
Quote from: DevilmarkusWell the mask is not blurry ;) It's the enabled PAL effect but can be disabled.
PAL effect is nonsense. In 50Hz the picture is not blurred, but the lines are more closed than 60Hz display. That all.
Nobody using a "PAL" CPC get that ?  :P


Quote from: DevilmarkusLater the screen will be with the correct aspect ratio also on widescreen monitors (I'm also using 1920x1080 pixels here)
Great !  :-*
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:37, 20 October 11
without PAL effect it's much clearer!
Let's compare the screens: (Too less FPS actually because I'm still rendering both the same time: 2d and 3d display, will change that soon...
Title: Re: JavaCPC Desktop available as BETA!
Post by: TotO on 19:56, 20 October 11
OK, so the "problem" is not the PAL filter, but the scanline mode with too much space between lines. (unlike on NTSC)
So, if you use both effects, you got a blurry NTSC and not a fake PAL screen.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 13:30, 24 October 11
This looks wonderful, Markus! I actually like the slight blurriness. If anything, on-screen characters in emulators always look unrealistically crisp. And dithered graphics in games were meant to be seen a little blurred. That's also the main reason for emulating arcade monitors in MAME I think.


Quote from: Devilmarkus on 18:39, 20 October 11
Well anyway...
I pixeled a new mask and now the result looks more realistic:
http://cpc-live.com/screen_curvature (http://cpc-live.com/screen_curvature)

Sadly the display sometimes flickers... need to check out, why....
With half texture size it's stable!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 21:05, 30 October 11
Quote from: Morn on 13:30, 24 October 11
That's also the main reason for emulating arcade monitors in MAME I think.

You mean the filters they have incorporated to it?

Yeah, nothing beats my Hantarex...

Title: Re: JavaCPC Desktop available as BETA!
Post by: Morn on 21:33, 30 October 11
Quote from: Gryzor on 21:05, 30 October 11
You mean the filters they have incorporated to it?

Are those deliberate filters? I always thought this was just some unavoidable analog blurriness in those monitors. But it does look rather nice for games. As does the 1084 Amiga monitor.

It's also really sad how low color saturation on LCDs is, compared to those old CRTs. I think this is especially true for orange-red hues—just terrible gamut on LCDs for those warmer hues.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 21:35, 30 October 11
Nonono, I was talking about MAME. Old machines didn't have any filters, of course, devs worked with the equipment limitations to do nice stuff...

Speaking of gamuts, back in 2005 I saw the technical data for Sony's TVs. Lots of nice charts. I went for a CRT :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 07:30, 17 December 11
Does registration work? I've now registered several times, but those extras (like Pacman) that require registration still don't work...
Also, some video options (filters, size...) seem stuck no matter what I check/uncheck... how can I enforce changes?
Cheers
G
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 10:39, 17 December 11
1) Perhaps your firewall blocks access for JavaCPC to the internet. Use the Offline-registration.

2) Dunno?!? Perhaps you have bad/beta graphics drivers installed?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 10:51, 17 December 11
1. I have tried offline registration too. No firewall. The funny thing is registration appears to work in the registration dialog (the key is filled in), but no extra features are enabled...
2. I don't think so... the thing is, I can turn the options on, and they work, but turning them off and on again is very erratic. It's not like the options don't work due to a bad driver, it's just that I can't disable them most of the time. I just ran it again and seems to be working now, whereas it didn't work an hour ago :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:36, 17 December 11
Perhaps you are running Windows in an absolutely non-admin mode?
Launch JavaCPC.exe with admin rights and retry...
(Should also work without but just try)

Another tipp:
When the console is openend (The DOS-Box like command console) enter "bug" without "" and fill out the form.
So I can perhaps check what happens...

Edit:
Or click "Save" in the console.
Then store it's output as .txt file and email it to me...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 12:39, 17 December 11
I did try running it as admin, but will also try the debug output and let you know. Thanks :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 12:42, 17 December 11
You can also zip & send me these files:
C:\Users\XXXXX\JavaCPC\javacpc.ini
C:\Users\XXXXX\JavaCPC\desktopsettings.xml
C:\Users\XXXXX\JavaCPC\romsettings.xml

(Where XXXXX is your username)

Edit:
javacpc.ini should contain the reg. info like this:
usercode=xxxx-xxxx-xxxx-xxxx
usermail=webmaster@cpc-live.com
username=Markus Hohmann
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:19, 21 August 13
Because SyX told me, I'm fiddling on the GFX-Ripper:

I'm adding a "Skip bytes" feature to the sprite viewer... This makes it possible to easier edit sprites for games like Army Moves...

Screenshot:
[attach=2]
Title: Re: JavaCPC Desktop available as BETA!
Post by: SyX on 16:22, 21 August 13
Well done Markus!!! :D :D :D

I love this new feature :)  A lot of games have an extra few bytes after each sprite/tile (size, attributes or similar things), and it was superboring and super annoying going from one to one for making graphics hacks :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 17:22, 21 August 13



Quote from: Devilmarkus on 16:19, 21 August 13
Because SyX told me, I'm fiddling on the GFX-Ripper:


Fiddling? You get a golden fiddle if you (or somebody else) is capable of hacking a sprite from Cyber Huhn with such a tool.[nb]Hacking sprites from screen doesn't count here. However it's usually the most easy way [/nb]

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:10, 21 August 13
No time to check CH now...
Working on a game map viewer:

[attach=2]
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:51, 21 August 13
Few maps I exported on the fly:

Builderland:
[attach=2]

Vixen, Level 1:
[attach=3]

Vixen, Level 2:
[attach=4]

Vixen, Level 3:
[attach=5]
Title: Re: JavaCPC Desktop available as BETA!
Post by: SyX on 20:13, 21 August 13
AMAZING WORK MARKUS!!! :D :D :D

Bruno is going to love this feature for filling CPC-Power with maps without need to save screen to screen :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: remax on 21:08, 21 August 13
that's what i was going to say!  :D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:58, 21 August 13
Another test:

Level 1, The Last V8

Info:
start tiles:
&3200
width:
2
height:
8

map:
start address:
&4600
map width:
128
map height:
60
Reverse X:
selected

Result:
[attach=2]
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:08, 21 August 13
How i got this map:

I started the game and stopped it with the debugger.

Then I opened the GFX-ripper.

There I found out the position of the tiles, their width and height:

[attach=2]

I made sure, that the first tile is at first position and clicked it once with left mouse button.

Then I marked the last tile with the right mousebutton thus I got a range of tiles:

[attach=3]

Last, I clicked "Generate Map", and the map window pops out.

There I guessed the width (128) and played with address and height.

Result:

[attach=4]
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:35, 21 August 13
The Stormlord I maps:

[attach=2]

[attach=3]

[attach=4]

[attach=5]

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 00:40, 22 August 13
Into the Eagles nest:
[attach=2]
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 00:49, 22 August 13
WoW!!! Unbelievable, that it works with so much games!!! Great work!!!
Title: Re: JavaCPC Desktop available as BETA!
Post by: SyX on 07:49, 22 August 13
Markus, you know how to have fun ;)

The people is going to love tinkering when it's available :)

PD: In case you don't know, Eagle's Nest has a few floors (using the elevator)... but you need to leave maps to explore by us, jajaja.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 09:52, 22 August 13
I know, SyX ;)

Also The Last V8 has 2 levels...

:P

Will add the feature to export map info:
tiles start address, tile width, tile height, # of total tiles, address of map in ram, map raster x and y...

(Just to annoy SyX):
Spoiler: ShowHide

Last V8 level 2:

[attach=2]

Prohibition:

[attach=3]
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 16:25, 22 August 13
What a great tool, good work  :)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 16:39, 22 August 13
Markus: Now I got a harder task for you: Get the Giana Sisters Maps... 8) Why?  :o  You will need to explore Expansion RAM in addition.  ;)

A question can you tell us how these maps are usually constructed? I mean the games like Prohibition f.e. Is it a simple map or more complex?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:08, 22 August 13
It's quite simple:

That is, what my tool actually does:

First you find the tiles, and mark them. (Important: First tile needs to be in the upper left corner of the GFXViewer)

If you don't mark them, 256 tiles are used.

Then, when you start the "Map Generation", the tool copies all tiles as single bitmaps into an array.

tile[0], tile[1],.....tile[255]

256 tiles are max. possible. (8bit)

Now the GameMap Ripper opens and you can play around with the start address, width and height of the map you search.

It then simply does a for-next loop through X and Y and draws the tiles to a large bitmap.
Pseudo-Code:
address=&4600
maxtile=256
width=128
height=60
offset=0
for x=0 to width:for y=0 to height
drawTile(x,y,tile[PEEK(address+offset) % maxtile])
offset=offset+1
next y: next x
Title: Re: JavaCPC Desktop available as BETA!
Post by: McKlain on 18:28, 22 August 13
This is fucking magic  ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:51, 22 August 13
Now: To make things round like a circle (don't expect me to tell you some sense here), like a dog that bites his tail - only one thing is left.... An export function for for Tiles and Maps to the CPC format (ManageDSK can put them to a DSK then, or maybe JavaCPC can do it already :-))




BTW: For developing Maps on the CPC you can use this one (German only):
[/color]http://futureos.cpc-live.com/files/GSEd_German_Release.zip
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 18:58, 22 August 13
You can export the selected tile range in GFXViewer as raw binary.

It's stored then in JavaCPC's folder with startaddress and length in filename.
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:08, 22 August 13
I took a short video of how I ripped the map for "Into the eagles nest"

Erstellt von Camtasia Studio 8 (http://cpc-live.com/gamemapripper/)

(I already searched the tiles in the GFXViewer, they are easy to find)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 19:10, 22 August 13
He found the MATRIX!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:44, 22 August 13
Little contest:
Who will be the first posting a ripped game map here?

Tip: Rip the game "Street Machine"...

Info:
TileAddress= &7D40
TilesNumber= 148
TilesWidth = 4
TilesHeight= 16
MapAddress = &3880
MapWidth   = 160
MapHeight  = 110
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:52, 23 August 13
Working on new features:
- 16bit encoded maps
- Skippable lines for games like Cybernoid (Cybernoid has collision data between the lines)
- Mapper (To create gamemaps for games like Cybernoid)

Screenshot and video:

[attach=2]

Erstellt von Camtasia Studio 8 (http://cpc-live.com/maptest/)
Title: Re: JavaCPC Desktop available as BETA!
Post by: arnoldemu on 15:06, 23 August 13
I'll be copying this map export feature in the future ;)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 15:21, 23 August 13
Quote from: arnoldemu on 15:06, 23 August 13
I'll be copying this map export feature in the future ;)

In future? Wait ... these are my words! ;-) :-D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:21, 23 August 13
Good idea to copy it ;)

Here a few more maps:

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 16:39, 23 August 13
@arnoldemu: Your first step should be an import function for such textfiles:

Example for Cybernoid 1:
TileAddress= &8323
TilesNumber= 170
TilesWidth = 4
TilesHeight= 16
MapAddress = &BA80
MapWidth   = 16
MapHeight  = 10
ScreenMode = 0
ModeLinear = 0
16BitMap   = 1
SkipLines  = 1


It feeds my GFXViewer and GameMap Ripper with required informations.

Of course the infos for the GFXViewer are compatible to WinApe's GFXViewer: (TileAddress, TileWidth and TileHeight)
Title: Re: JavaCPC Desktop available as BETA!
Post by: redbox on 17:50, 23 August 13
Quote from: Devilmarkus on 16:39, 23 August 13
Of course the infos for the GFXViewer are compatible to WinApe's GFXViewer: (TileAddress, TileWidth and TileHeight)

This also tells me that a lot of good programmers didn't use exactly fast tile printing routines (back in the day).

Otherwise the tiles would have their lines in a different order...
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:18, 23 August 13
That would work for certain screen ( x * y ) modes only anyway.


The most time consuming part is always to move sprites and not that much shifting tiles in from the side.


Further if a game has no scrolling, the difference remains in the ms region, so the user wouldn't mind.

Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 18:19, 23 August 13
OK, who is the first to patch a level in such a game?
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 19:50, 23 August 13
You can't edit such a map (yet)
I did not implement writing tile indexes into ram.
Title: Re: JavaCPC Desktop available as BETA!
Post by: TotO on 20:07, 23 August 13
Where are the R-Type (128K) maps!!!  ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:28, 23 August 13
Quote from: TotO on 20:07, 23 August 13
Where are the R-Type (128K) maps!!!  ;D

Inside R-Type? :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 21:37, 23 August 13
Added keyboard relocation from CPC window to GameMapper window.
So now you can create gamemaps on the fly, while playing:
CTRL + Arrow keys: Append new map screen to game map (at choosen direction)
Just arrow keys: move position marker around in game map
Space: Put actual screen to choosen position in game map
Delete: Erase actual choosen position in game map

Erstellt von Camtasia Studio 8 (http://cpc-live.com/gamemapper/)
Title: Re: JavaCPC Desktop available as BETA!
Post by: TFM on 21:58, 23 August 13
Quote from: Devilmarkus on 19:50, 23 August 13
You can't edit such a map (yet)
I did not implement writing tile indexes into ram.


That all can be done by hand. JavaCPC shows all needed addresses.

Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 22:51, 23 August 13
Quote from: TFM on 21:58, 23 August 13

That all can be done by hand. JavaCPC shows all needed addresses.

Thats true...

Well at least when you get the maps directly from ram.

Actually working on off-screen mapping...
(Capture gamemaps from CPC screen)

You can select an area on the CPC screen which will be the "Capture Area".

Then you can create a gamemap directly from screen in the same way, as the regular ram mapper already works.

Example: (No, I did not play the whole game! Just a quick & dirty test)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Kukulcan on 10:53, 24 August 13
Hi Markus,


Very impressive  :D .


Now no excuse from user to sending map from game to cpc-power  ;D


But if you work on game not mapped by me it's more interesting LOL


Kukulcan
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 14:06, 24 August 13
It's simple to find maps in ram...

I just finished coding the ScreenMapper (Capture game maps directly from CPC screen)

With this feature even every noob can create game maps.

Video:
JavaCPC GameMapper (Screen capturing) (http://cpc-live.com/screenmapper/)

The ScreenMapper is directly accessible from JavaCPC menu and does not need the GFXViewer or the RAM-mapper active.

Just start it, define a rectangle on CPC screen, and start mapping.

Define screen area is key controlled in CPC display:
- Arrow up -> move rectangle up about 1 pixel
- Arrow down -> move rect. down about 1 pixel
- Arrow left/right -> move rect. left/right about 1 pixel
+ SHIFT:
move rectangle about 8 pixels
- CTRL + Arrows: change rectangle width/height about 1 pixel
+ SHIFT:
change rectangle width/height about 8 pixels

Mapping is key controlled in CPC display:
- CTRL + arrow keys: Append actual screen at choosen direction
- SPACE: Put actual screen to actual position
- DELETE: Remove screen from actual position
- Just arrow keys: Change position
Title: Re: JavaCPC Desktop available as BETA!
Post by: Axelay on 14:38, 24 August 13
Quote from: redbox on 17:50, 23 August 13
This also tells me that a lot of good programmers didn't use exactly fast tile printing routines (back in the day).

Otherwise the tiles would have their lines in a different order...


Well I tend to think a lot of good programmers back in the day were good spectrum programmers, first and foremost.  ;)


But in this case, I can see that a number of the tiles (loot drops, missiles & the green guardians between pillars) all need to move vertically in pixel steps, so optimising tile line order to the screen characters perhaps wouldnt be practical without having an even greater number of printing routines than it already does.

Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 20:31, 08 September 13
Can't help thinking these would make awesome posters!
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 03:29, 31 December 13
As you know, I like useless stuff:

Thanks to McKlain, who had the idea:

Make animated GIFs from sprites in RAM:

(http://cpc-live.com/gfxviewer_gif.png)

(http://cpc-live.com/gifmaker.png)

(http://cpc-live.com/testoutput.gif)

Will finish it tomorrow and release :P
Title: Re: JavaCPC Desktop available as BETA!
Post by: McKlain on 09:56, 31 December 13
Hohoho...  ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 13:27, 31 December 13
Few more:

(http://cpc-live.com/hag1.gif)   (http://cpc-live.com/hag2.gif)   (http://cpc-live.com/hag3.gif)   (http://cpc-live.com/hag4.gif)   (http://cpc-live.com/skull.gif)   
Title: Re: JavaCPC Desktop available as BETA!
Post by: TotO on 15:25, 31 December 13
If your emu can understand the Barbarian GFx scheme, it will be nice to convert it from 2bit to 4bit and improve the warriors too.  ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 15:41, 31 December 13
That's not an emulator problem.
I can make the player sprites visible, but you'd need much code to make them 4bit...

Can someone tell me when the Push'N'Pop music stream will be back online?

In the next release of JavaCPC Desktop I replaced the Push'N'Pop player with an icon for the GFXViewer...

(http://cpc-live.com/javacpc_desktop_2013t.png) (http://cpc-live.com/javacpc_desktop_2013.png)
Title: Re: JavaCPC Desktop available as BETA!
Post by: Gryzor on 19:56, 31 December 13
Oh my, this is an excellent feature! I see a deluge of new avatars coming on :D


I think we should open a new thread to share sprites we make...
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 20:04, 31 December 13
And it's very simple to use, if you know, how WinApe's GFXViewer works, you will also be able to use the GFXViewer in JavaCPC...

Quick guide to create GIFs:

- Make sure, first sprite is in upper left corner in GFXViewer
- Left click on it once
- Right click on last sprite to select a range (The Sprites inside the range are grayed out then)
- Click "Create GIF"

In theory that's all you need to know.
Oh and the sprites you select must be in a range... Would be too much work now to select single sprites only...
The GIFMaker should be self explaining.

To change transparent color, just click on a color in the GFXViewer window's palette.
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 22:52, 31 December 13
Quote from: Devilmarkus on 15:41, 31 December 13(http://cpc-live.com/javacpc_desktop_2013t.png) (http://cpc-live.com/javacpc_desktop_2013.png)

Love the backdrop...  ;D
Title: Re: JavaCPC Desktop available as BETA!
Post by: Devilmarkus on 23:05, 31 December 13
Quote from: mahlemiut on 22:52, 31 December 13
Love the backdrop...  ;D

Here you go:
http://cpc-live.com/232104.jpg (http://cpc-live.com/232104.jpg)
Title: Re: JavaCPC Desktop available as BETA!
Post by: mahlemiut on 01:25, 01 January 14
Quote from: Devilmarkus on 23:05, 31 December 13
Here you go:
http://cpc-live.com/232104.jpg (http://cpc-live.com/232104.jpg)
Awesome, thanks! :D
Powered by SMFPacks Menu Editor Mod