Question about how host menu software works

HxC Floppy emulator support for all others computers...
Post Reply
TheRogue
Posts: 14
Joined: Tue Mar 06, 2012 1:28 am

Question about how host menu software works

Post by TheRogue »

I have a question, and I'm sorry if this has been answered elsewhere but I couldn't find it. I am thinking about making host menu software for a few classic computers, but I need to know how exactly it works, how it is accomplished before I can begin. The machines I am thinking of doing it for are: Fujitsu FM-77AV40SX, Sharp X1 TurboZ, Sharp MZ-2500, Sharp X68000, Sinclair ZX Spectrum 3+, and MSX TurboR for now. Is there any particular requirement for a system to be able to work in that mode? How is reading of the SD card and selecting of images accomplished over the floppy interface? If I can get these questions answered, perhaps I will be able to accomplish this. Thanks so much for your help.

Jeff
Site Admin
Posts: 8092
Joined: Fri Oct 20, 2006 12:12 am
Location: Paris
Contact:

Re: Question about how host menu software works

Post by Jeff »

TheRogue wrote:I have a question, and I'm sorry if this has been answered elsewhere but I couldn't find it. I am thinking about making host menu software for a few classic computers, but I need to know how exactly it works, how it is accomplished before I can begin. The machines I am thinking of doing it for are: Fujitsu FM-77AV40SX, Sharp X1 TurboZ, Sharp MZ-2500, Sharp X68000, Sinclair ZX Spectrum 3+, and MSX TurboR for now. Is there any particular requirement for a system to be able to work in that mode? How is reading of the SD card and selecting of images accomplished over the floppy interface? If I can get these questions answered, perhaps I will be able to accomplish this. Thanks so much for your help.
All is there :

https://hxc2001.com/floppy_drive_emulat ... s_mode.pdf
https://hxc2001.com/floppy_drive_emulat ... G_file.pdf

http://hxcfloppyemu.svn.sourceforge.net ... yEmulator/
http://hxcfloppyemu.svn.sourceforge.net ... _selector/

pulkomandy
Posts: 132
Joined: Sun Mar 20, 2011 6:55 pm

Re: Question about how host menu software works

Post by pulkomandy »

For 8bit computers with low RAM my version of the HxC host software might be easier to port.
http://pulkomandy.tk/projects/thomson/b ... /C/HxCHost

It's not ready yet, but I plan to work on it this week end during the Forever XIII party.

To port it, you just need :
* A function to read keyboard input
* A function to print a char on screen
* A function to read a floppy sector
* A function to write a floppy sector
* A C compiler
No C standard lib is involved : no memcpy, no printf, no strcmp.

There may be some changes needed to the code, mainly hardcoded keycodes and escape sequences to set colors on screen. Nothing that some #defines can't solve.

The limitations are (because of the FAT driver I use) :
* No long file name support
* It is not possible to create/delete/resize files (so you can't create a new blank disk or so)

The current code needs about 8K of memory (code+data).

pulkomandy
Posts: 132
Joined: Sun Mar 20, 2011 6:55 pm

Re: Question about how host menu software works

Post by pulkomandy »

Ok, weekend is over, and software is mostly ready now.

I think I still have a bug with getting the cluster for a file in a format that the HxC likes.

There are other problems but they are mostly :
* Only related to the thomson platform (making it a bootable disk and such)
* Or, optimizations (not displaying the whole menu each time, and so on)

So, if you want to start porting it, should be ok now.

telengard
Posts: 57
Joined: Sun Jul 15, 2007 9:30 pm

Re: Question about how host menu software works

Post by telengard »

I'm thinking about tackling this for the Coco (and maybe others), thanks for the links to the subversion repo!

~telengard

pulkomandy
Posts: 132
Joined: Sun Mar 20, 2011 6:55 pm

Re: Question about how host menu software works

Post by pulkomandy »

Oh, nice, there's even more code to share with my version then, Thomson computers and CoCo have the same CPU :)

Post Reply