OSDK 1.5

Questions, bug reports, features requests, ... about the Oric Software Development Kit. Please indicate clearly in the title the related element (OSDK for generic questions, PictConv, FilePack, XA, Euphoric, etc...) to make it easy to locate messages.

User avatar
Dbug
Site Admin
Posts: 2325
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

OSDK 1.5

Post by Dbug » Sat Feb 14, 2015 9:55 pm

The version 1.5 of the OSDK is now available, with the following changes:

- PictConv was updated to version 0.21, providing native support for AIC pictures and also support for alpha channel.

What it means in practice is that you can draw pictures on a PC alternating the colors like you would do it with HIDE on a real Oric, and PictConv will take care of automatically switching between the two sets of colors, using inverted video mode where required.

The Alpha Channel support is limited to the monochrome and AIC mode: Basically if a bloc of 6 pixels happens to be transparent, then this bloc will be saved with the value ZERO, making it possible to skip over it when displaying the bitmap data (ie: You can make sprites with holes and transparent outline automatically)

As usual, the OSDK is available on the download page at http://osdk.defence-force.org/index?page=download

User avatar
Hialmar
Flight Lieutenant
Posts: 318
Joined: Tue Mar 04, 2014 11:25 am
Location: Toulouse, France
Contact:

Re: OSDK 1.5

Post by Hialmar » Sat Feb 14, 2015 10:02 pm

Will get it ASAP.

Thanks a lot for the hard work.
Hialmar
CEO and Silicium member.

User avatar
Dbug
Site Admin
Posts: 2325
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OSDK 1.5

Post by Dbug » Sat Feb 14, 2015 10:04 pm

One important detail: I used by default the palettes from Twilighte which are:
- Even lines: Black Paper and Cyan Ink (inverted to White Paper and Red Ink)
- Odd lines: Black Paper and Yellow Ink (Inverted to White Paper and Blue Ink)

I will probably provide a way to specify custom colors, but I did not have the time :)

User avatar
iss
Flight Lieutenant
Posts: 471
Joined: Sat Apr 03, 2010 5:43 pm
Location: Bulgaria
Contact:

Re: OSDK 1.5

Post by iss » Sat Feb 14, 2015 11:48 pm

OSDK 1.5 works for me. Sprites with holes and transparent outline sounds very intriguing indeed.
Thanks for update!

User avatar
coco.oric
Flight Lieutenant
Posts: 412
Joined: Tue Aug 11, 2009 9:50 am
Location: North of France
Contact:

Re: OSDK 1.5

Post by coco.oric » Tue Feb 17, 2015 5:29 am

Thanks for this marvelous update
AIC mode is too good
coco.oric as DidierV, CEO Member
Image Image

User avatar
Chema
Game master
Posts: 1974
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OSDK 1.5

Post by Chema » Thu Feb 19, 2015 10:57 pm

Just tried and it works perfectly. At least it compiled Oricium with no issues. Thanks for the update Dbug!!

One question: have you abandoned the DskTool? I see you are still using tap2dsk and I think it is not supporting the -i and -n options to set the INIST and Disk name.

I am also quite sure I detected some errors in PictConv (at least two options were swapped in the way they worked). I think I posted about that. Did you remember to update that too?

User avatar
Dbug
Site Admin
Posts: 2325
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OSDK 1.5

Post by Dbug » Fri Feb 20, 2015 6:56 pm

Chema wrote:Just tried and it works perfectly. At least it compiled Oricium with no issues. Thanks for the update Dbug!!

One question: have you abandoned the DskTool? I see you are still using tap2dsk and I think it is not supporting the -i and -n options to set the INIST and Disk name.

I am also quite sure I detected some errors in PictConv (at least two options were swapped in the way they worked). I think I posted about that. Did you remember to update that too?
As a general rule, if there's nothing in the history, nothing was done.
I guess I need an issue tracker to follow these things, could just be a text file in the main SVN depot.

Could you find what the problem was for PictConv?

Regarding DskTool/Tap2Dsk, it's not so much as I abandoned it that I myself totally stopped using the default way to build disk, I now almost exclusively use the FlopppyBuilder way.

What I would suggest, is to have people using these tools actually modify/update them, and correctly document in the commit messages what they did, eventually fix the example code or add new sample code to show how to use them, then in the next official build that would be integrated.

Hialmar, mmu_man and jylam have done such changes, and actually Hialmar is the last person to have made changes to tap2dsk:
May 2014
Now tap2dsk adds automatic names to unnamed basic tapes (from the tap file name).
It also allows to color (paper and ink) the name of the disk.
I wanted originally to make DskTool to avoid having Tap2Dsk, and Raw2Mfm, etc... but since I did not use it myself and Fabrice on the other hand kept updating his own versions of tools, it's probably not smart to maintain DskTool.

Feedback is welcome :)

User avatar
Hialmar
Flight Lieutenant
Posts: 318
Joined: Tue Mar 04, 2014 11:25 am
Location: Toulouse, France
Contact:

Re: OSDK 1.5

Post by Hialmar » Fri Feb 20, 2015 7:09 pm

I can add the INIST and Diskname options but the biggest problem is that tap2dsk creates bogus dsk files. I have no idea why but if you copy files, edit files and the like you end up with corrupted files on the .dsk.

What I do is mount them along with the Sedoric 3 original disk found on Fabrice's website and then copy the files from the .dsk generated by tap2dsk to the good disk.
Hialmar
CEO and Silicium member.

User avatar
peacer
Flight Lieutenant
Posts: 349
Joined: Wed Jun 09, 2010 9:23 pm
Location: Turkey
Contact:

Re: OSDK 1.5

Post by peacer » Sat Feb 21, 2015 1:59 am

Can someone PLEASE create a gui for using pictconv? Or, is there a project to develop / upgrade the LIBPIPI project ?

http://caca.zoy.org/wiki/libpipi/oric

User avatar
Hialmar
Flight Lieutenant
Posts: 318
Joined: Tue Mar 04, 2014 11:25 am
Location: Toulouse, France
Contact:

Re: OSDK 1.5

Post by Hialmar » Sat Feb 21, 2015 9:10 am

I will add this to the list of things that I have to do.
Hialmar
CEO and Silicium member.

User avatar
Dbug
Site Admin
Posts: 2325
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OSDK 1.5

Post by Dbug » Sat Feb 21, 2015 10:13 am

peacer wrote:Can someone PLEASE create a gui for using pictconv? Or, is there a project to develop / upgrade the LIBPIPI project ?
http://caca.zoy.org/wiki/libpipi/oric
Anyone could make a gui for pictconv, I'm pretty sure there was some people who started some projects for that.

It will not be me, because I would not use it, and I don't work on adding features I don't use (except adding trivial options or settings) simply because for a feature to be good it has to be be something you want to do and use :)

What I would suggest, is that you start a thread about that, with a mockup UI screenshot showing what you would like it to be, and explain what it should do and how.

User avatar
peacer
Flight Lieutenant
Posts: 349
Joined: Wed Jun 09, 2010 9:23 pm
Location: Turkey
Contact:

Re: OSDK 1.5

Post by peacer » Sat Feb 21, 2015 10:57 am

Hmm.. Ok. I will do that :)

User avatar
Chema
Game master
Posts: 1974
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OSDK 1.5

Post by Chema » Mon Feb 23, 2015 10:02 am

@Dbug I think I recall that the option of generating a tap with the loader (-o0) and with the BASIC program that first switches to HIRES then loads (-o1) were swapped, but I'd need to double check.

No problem with using or not DskTool. I understand what you say. It is just that I had my own version of tap2dsk which supported the -i and -n options (did I add them, or Fabrice added them for me?), which was great for generating disks which auto run the games and for testing. I will have a look at my sources.

In fact I think I had to dump the first sectors of a sedoric disk because a sedoric.h file was missing or something like that.


@Hialmar I never noticed anything wrong with the generated dsk images, but I also never played renaming files... This is quite interesting and something that indeed should be fixed.

Cheers!

User avatar
Dbug
Site Admin
Posts: 2325
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: OSDK 1.5

Post by Dbug » Mon Feb 23, 2015 6:15 pm

Chema wrote:@Dbug I think I recall that the option of generating a tap with the loader (-o0) and with the BASIC program that first switches to HIRES then loads (-o1) were swapped, but I'd need to double check.
Ok, I can make it so it will be in the next version.
Chema wrote:No problem with using or not DskTool. I understand what you say. It is just that I had my own version of tap2dsk which supported the -i and -n options (did I add them, or Fabrice added them for me?), which was great for generating disks which auto run the games and for testing. I will have a look at my sources.
The OSDK is in SVN, you can take a look at the version that is in the depot, and eventually modify it - check with Hialmar that the changes are fine for both of you.
If you can agree with a change, I can make a new version of the SDK with the change as well.

User avatar
Chema
Game master
Posts: 1974
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: OSDK 1.5

Post by Chema » Tue Feb 24, 2015 10:01 am

I am pretty sure it was not me who patched the -i and -n options, but who knows... I trend to forget these things...

My local sources have this in the main function:

Code: Select all

printf("Tap2dsk V2.1\n");

	if (argc<2) {
		fprintf(stderr,"Usage: tap2dsk [-n<disk_label>] [-i<init_string>] <tape_image1> ...<tape_imageN> <old_disk_image>\n");
		exit(1);
	}

	for (i=1; i<argc; i++) {
		if (argv[i][0]=='-') {
			switch (argv[i][1]) {
			case 'i': case 'I':
				if (strlen(argv[i]) - 2 > 60) {
					fprintf(stderr,"Init string too long\n");
					exit(3);
				}
				memcpy(system_sect+0x1E,argv[i]+2,strlen(argv[i])-2);
				break;
			case 'n': case 'N':
				memset(system_sect+9,' ',21);
				if (strlen(argv[i]) - 2 > 21) {
					fprintf(stderr,"Disk label too long\n");
					exit(3);
				}
				memcpy(system_sect+9,argv[i]+2,strlen(argv[i])-2);
				break;
			default: fprintf(stderr,"Bad option : %c\n",argv[i][1]);
				exit(2);
			}
		}
	}
So it is quite easy to add these options...

I remember the problems I had for compiling this as there was a file missing (sedoric.h). I attach here the sources I have, in case Hialmar wants to have a look. Sorry but I just don't remember if I touched anything else, or Fabrice sent me these...
chema_tap2dsk.zip
(32.65 KiB) Downloaded 112 times
In any case I agree with Dbug that we should bump the version number to avoid confusion.

Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests