Re: [Ql-Users] QL-SD Card Interface

2014-01-11 Thread Miguel Angel Rodriguez Jodar

El 11/01/2014 15:08, Adrian Ives escribió:

Sorry, Miguel. This has all been my fault. I was really too busy to

> take on porting the drivers at the time, then when I tried to kick the
> project off I had one hardware problem after the other. Possibly my QLs
> have had a good 30 years and need to be retired. I will return the card to

you. I assume the address is the same as on the packet?


Yes, it is.

Don't worry about the drivers. I completely understand your position :) In fact, 
now that the drivers are available in source code (are they?) I can try porting 
them. I haven't got much experience with 68K assembly, but even so, if the heavy 
part (dealing with QDOS and the filesystem) is already done and all that is 
needed is to provide a low level layer for basic functions, I think I can deal 
with it :)


Anyway, thank you very much!

--
Miguel Angel
@zxprojects | www.zxprojects.com
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Re: [Ql-Users] QL-SD Card Interface

2014-01-11 Thread Miguel Angel Rodriguez Jodar

El 09/01/2014 20:35, Rich Mellor (RWAP) escribió:

The first QL-SD Card Interface based on Peter Graf's design, and with drivers
written in part by Adrian Ives is now available on SellMyRetro -

http://www.sellmyretro.com/offer/details/QL-SD-internal-SDHC-Card-Interface-for-QL-3596


May I guess that Adrian won't work in the drivers for the QLSD interface I sent 
to him last year? I've had no news from both of you since then.


--
Miguel Angel
@zxprojects | www.zxprojects.com
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] QL-SD What is it?

2013-12-09 Thread Miguel Angel Rodriguez Jodar

I have no idea about the zxprojects device on youtube.


It's a device that is plugged into the expansion ROM connector. It offers a SD 
inteface and a 16K ROM with firmware. It is able to perform fast reads by using 
MOVE.L instruction that can read 4 bytes from the SD card in one instruction.


I designed the hardware and ran some tests, which is what you have seen on 
Youtube (Family Guy opening and so on)


For the firmware, Rich Mellor contacted me and told me that Adrian Ives was 
going to write / adapt a suitable firmware. I sent the prototype I built to 
Adrian, plus some documentation and the core routines for low level access, so I 
assume he's working with the interface right now.


--
Miguel Angel
@zxprojects | www.zxprojects.com
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Withdrawing from the QL Market

2012-06-14 Thread Miguel Angel Rodriguez Jodar

Unfortunately yes. There is no abstraction layer between hardware and
file system.


Well... that's not necessarily bad news. That means that I can implement FAT and 
thus, easing file sharing between PC and QL :)

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Withdrawing from the QL Market

2012-06-14 Thread Miguel Angel Rodriguez Jodar

Interestingly it looks as though the driver is only 4K !!
Well. That is not the driver. That is a simple proof-of-concept program to 
demonstrate the speed achieved with MOVE.L reads from the card. More details 
(spanish, but Google traslate is your friend) here:

http://www.speccy.org/foro/viewtopic.php?f=15&t=2281&start=30#p23561

A proper QDOS driver is still needed. That remainds me of a thing I'd like to 
know and it's not very clear in the documentation I've read: for a directory 
device driver, I see that I have to implement high level file routines (OPEN, 
CLOSE, READ, WRITE, FORMAT, etc). Does it mean that I have to implement the 
filesystem as well? If that's the case, I might choose FAT16 or FAT32 as 
filesystem and then, transplarently use the SD card both in PC and QL environments.

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Raspberry Pi - starts

2012-04-19 Thread Miguel Angel Rodriguez Jodar

El 19/04/2012 12:00, Bryan Horstmann escribió:

I've had a look at Python too, Malcolm, and found "Python Languages & Syntax
Cheat Sheet". Under basic arithmetic it says "i=a%b e.g. 11%3 > 2" I cannot make
sense of that.


That's the modulus operator, as in C language. The binary operator a%b returns 
the remainder of the integer division between "a" and "b". It's equivalent to 
the MOD function in SBASIC.


For example, 11%3 returns 2 because 11 divided by 3 gives 3 and remainder 2.

It's a very powerfull operator to perform modular aritmethic. For example, 
imagine that you want to calculate fast sine functions, and to to that, you have 
set up a table with 360 numbers, indexed from 0 to 359. Element with index "i" 
will contain the sine of "i" (with "i" expressed in degrees).


Then, for an arbitrary (positive integer) angle, you can do something like:

sineofi = sinetable[i%360];

The index expression inside the brackets will wrap around 360, giving you 
0,1,2,...,358,359,0,1,

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Which is the last issue of Quanta Magazine?

2011-05-22 Thread Miguel Angel Rodriguez Jodar

El 22/05/2011 16:24, Dilwyn Jones escribió:

Volume 28, Issue 2, March 2011.

Another issue is in preparation at the moment.

Dilwyn Jones


Thanks! How can I know if my suscription is ended, and how can I order previous 
issues?

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


[Ql-Users] Which is the last issue of Quanta Magazine?

2011-05-22 Thread Miguel Angel Rodriguez Jodar
As I haven't received any new issues from February, I can't remember if my 
suscription just ended, or it's just that there haven't been any new issues 
since then.


The last issue I have is VOLUME 28, ISSUE 1, FEBRUARY 2011.

The Quanta website shows it's in maintenance mode, so I cannot check this there.

Thanks!
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Hello, anybody home?

2011-05-21 Thread Miguel Angel Rodriguez Jodar

El 21/05/2011 17:15, Tobias Fröschle escribió:


- How is the communication designed (especially, how did you implement
write access) to the ROM port?


It's a very old trick: I use 256 memory mapped ports: from $FE00 to $FEFF. When 
i want to write byte XX to the SPI interface, I make a read to the port $FEXX 
and discard the result.



- You seem to be planning to use a larger CPLD, could you add some
select lines to implement more than one device on SPI?


It's in my plans to make the SPI interface available to be used for other 
purposes. Not now, because all my tests are being carried with the current 
interface hardware, whose CPLD has no free pins.

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Re: [Ql-Users] Hello, anybody home?

2011-05-21 Thread Miguel Angel Rodriguez Jodar

El 20/05/2011 19:37, Urs Koenig (QL) escribió:


@Miguel (Angel Rodriguez Jodar): Any news?


Hi! I've made some improvements to the SPI code, so it works very reliable for 
all SD cards (not SD-HC) I've got at home. Currently I'm studing the inners of 
QDOS and learning how to write a directory device driver (I'm new to the 
QDOS/SMSQ world).


Using the Retro-X software ans dome custom C code, I've been able to make longer 
"QL movies". Some days ago I copied a whole Big Bang Theory episode into an SD 
card and replayed from my QL :)


In the meantime, I've received a batch of more than 50 small flash EPROM chips 
(PLCC32). Half the size of a regular DIP EPROM, flash, not UV, and 128K size. 
Being flash means that I can offer an option to let the user burn a new firmware 
version. As they are 128K insize (eight times the size I really need), I can 
have a "fail safe" option, suitable for recover from broken firmware.


My roadmap is:
- To have a design that let me operate a SD/MMC card from the ROM port (done!)
- To have a reliable and consistent set of low level routines for SPI operations 
(done!)
- Write a small device driver (not a directory device driver) to train myself. 
This device driver will use the SD card as a charactger device (in progress).
- Continue learning about QDOS/SMSQ and directory device drivers (I have the 
source code of QUBIDE driver to assist me, and a book recomended by Rich Melchor)

- Hopefully, have a firmware that let me use the SD card as drive MMC1, MMC2, 
etc.
- Improve the design to acommodate a flash EPROM. Add the necesary logic into 
the CPLD to let the user burn new firmware inside this flash.
- As this will mean I have to use a bigger CPLD (the current one is a 
XC9572XL-PLCC44, with all pins used), I probably add logic into it to control 
the SPI clock speed, so the initialization sequence will be consistent to the SD 
specification. I'm thinking of connecting the rest of the SD pins so it would be 
possible in a future to use the SD native mode transfer (4x faster) and support 
SD-HC cards. Currently, the speed obtained is fast enough to serve data to a 
MC68008 at its maximum speed (is there anything faster than 128 instructions 
move.l (a1),(a0)+ to copy 512 bytes from the SD card to memory? )

- Betatesting phase.
- Available to the public

There's an open discussion thread (spanish) about the inner workings of the 
interface (including some logic analyzer screenshots) here:

http://www.speccy.org/foro/viewtopic.php?f=15&t=2281
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] screen detection

2011-05-09 Thread Miguel Angel Rodriguez Jodar

El 09/05/2011 22:12, Lee Privett escribió:

I think I asked this question earlier this year but after dropping my laptop
and losing everything of the hard drive I have lost the emails, can anyone
tell me if there is a way of detecting the colour of a single pixel on the
QL screen?


For MODE 4, it could be something like:

1000 DEF FN getpixel(x,y)
1010 bitpos = x MOD 8
1020 bitmask = (2^bitpos)
1030 pixel = PEEK_W(131072+y*128+(x/8)
1040 pixelmasked1 = pixel && (bitmask+bitmask*256)
1050 pixelmasked2 = pixelmasked1
1060 colour = pixelmasked1/bitmask || pixelmasked2/(bitmask*128)
1070 RETURN colour
1080 END DEF

Assumning that pixel (0,0) is located at the top left corner (in the normally 
not visible area)

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] QLSD (WIP): ROM board featuring a SD socket to allow the QL to use SD/MMC cards

2011-04-28 Thread Miguel Angel Rodriguez Jodar

El 28/04/2011 19:29, Petri Pellinen escribió:

That is very, very impressive. Was that QL running a GoldCard?
Thanks! No. It's the plain good old 68008. The only expansion it has (not 
necessary for the interface to work) is a tiny internal 512KB RAM board i made 
for it some months ago.



Is Minerva a requirement or will this thing support QDOS?
No, it's not. And yes, will support (hopefully, when I learn how to write 
directory drivers) QDOS. The demo uses raw accesses to the SD card, there's not 
a filesystem in it yet.

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


[Ql-Users] QLSD (WIP): ROM board featuring a SD socket to allow the QL to use SD/MMC cards

2011-04-28 Thread Miguel Angel Rodriguez Jodar
Hi! I've working on it the last two weeks. The hardware is almost finished (I 
may be switching to another, more capable, CPLD if the current one doesn't fit 
all my needs).


It's an external ROM board, with EPROM for firmware (to be written), CPLD 
configured to act as an SPI interface, and a SD/MMC socket. Miscellaneous 
electronics include an integrated oscillator (50MHz at present), and a 3.3V LDO 
regulator.


I'm finishing low-level routines so once they are well tested, I will move on to 
the next software level (filesystem, driver access, etc).


Until now, I present to you a demo of the read speed achieved with a white-brand 
SD card, and a 640KB (should work on an unexpanded too) QL with Minerva 1.98 .


http://www.youtube.com/watch?v=78xtsEKW4Lw

This video is the last one uploaded to Youtube up to now. Previously I have 
uploaded two more videos showing basic read tests using different speeds, and 
comparing the results with the one obtained using a regular floppy drive.


http://www.youtube.com/watch?v=t0XvKy8wb-g


--
McLeod_IdeaFix (www.zxprojects.com)
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Android

2011-01-29 Thread Miguel Angel Rodriguez Jodar

El 30/01/2011 1:27, Timothy Swenson escribió:

A little Google searching and it looks like the answer is No. No X windows, no
standard GNU libraries, etc. Looks like most of the apps are java-based.


But if it has a hackable kernel, and you can use (or add) console frame buffer 
support, you might be able to build and run a static executable app, so no need 
for GNU libs.

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Ethernet adapter for QL ?

2010-09-28 Thread Miguel Angel Rodriguez Jodar

El 26/09/2010 17:42, Petri Pellinen escribió:

Hello,

am studying if it would be feasible to use the EPROM slot and create a
module with something like Microchip ENC28J60 Ethernet controller and


Maybe you want to take a look at the Spectranet project: an Ethernet 
controller for the ZX Spectrum, by Dylan Smith. Dylan uses an integrated 
ethernet controller, the WIZnet W5100, which offers a high level 
socket-oriented interface to the host.

http://spectrum.alioth.net/doc/index.php/Main_Page
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Ethernet adapter for QL ?

2010-09-26 Thread Miguel Angel Rodriguez Jodar

El 26/09/2010 19:40, Petri Pellinen escribió:

Hi Dilwyn,

on the ROM connector. My initial assumption was that a manner of
memory mapped I/O would be possible through the slot.


Of course, but you mast take into account that:
- The ROMOEH signal goes active only with read bus cycles, not write cycles.
- There's no R/W signal on the ROM expansion connector (although it would be 
possible to wire that signal on one of the unused pads).


If you would decide to forget about the ROMOEH to perform true writes, you would 
find that there's no AS or DS signals available too, so you would only rely on 
the value of address lines to know when your device is being addressed. Besides, 
there's no way to signal the end of the bus cycle, as DTACK is not available too.


So there's no way (AFAIK) a card plugged into the ROM expansion would know when 
a write bus cycle is about to happen. This is because odd techniques must be 
applied to perform a write using reads.


One of them is, as explained, to reserve a region of the ROM address space 
(0C000-0) which will hold your device hardware registers. That region cannot 
be the last 512 bytes, i.e. 0FE00 - 0, because that region will be reserved 
for our write scheme. Let's assume you will need at most 256 hardware registers 
for your device (surely you will need far less than this).


Let's say you want to put a value "dd" (8 bits) into the register numbered "aa" 
(8 bits). You first make a read bus cycle from address FEaa (and discard the 
result). Your device captures the LSB of that address from the CPU address lines 
and store it in an internal 8 bit "address" latch. Then, you make a read from 
address FFdd (and again, discard the result). Your device will take the LSB of 
the CPU address (actually the data you're going to write) and will write it into 
the device register pointed by the "address" register.


Something like (not sure if this is correct assembly for 68000):

move.l #$FEaa,a0  ; Where "aa" is the register number we want to write into.
move.b (a0),d0; Discard the result in D0.
move.l #$FFdd,a0  ; Where "dd" is the 8-bit value we want to write
move.b (a0),d0; Discard the result in D0.
  ; Value "dd" has been writeen into register "aa".

For normal reads, we'd just use a standard approach. Let's say your hardware 
registers are mapped into addresses 0FD00-0FDFF . So, this will do the job:


move.l #$FDaa,a0  ; We are going to read from register "aa"
move.b (a0),d0; Read it and store the result in D0.


If someone has any h/w designs lying around I would be happy to
colllaborate and pitch in on the dreaded driver side of things. I can


I've some ideas but I lack experience on writting 68k assembler and writting 
directory drivers. I've just bought the "Advanced QL User Guide", and hope to 
have enough time to read it carefully and start making experiments.



but, bitten by the retrocomputing bug, I would love to implement
something on the original hardware.


I have three original QL's, and no "modern" QL's, so if I do something, it will 
be for the original hardware.

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Connecting a QL to a VGA Monitor

2010-09-16 Thread Miguel Angel Rodriguez Jodar

El 16/09/2010 9:49, Peter escribió:

Hi Miguel,

Thank you. It seems that part of the screen is cut off :-(

This is because the PS/1 monitor doesn't have hor/ver adjustment pots.


Also the picture seems noisy. By the way, that's why Thierry's statement
And this is because the signal comes from the composite video output 
from the QL, not the RGB output. I said this is not the test I did with 
my RGB-to-VGA converter. This was another test I did, and it happened 
that I had the pictures I made for this test with me at the time I wrote 
the post. I have to take pictures of the QL with the RGB-to-VGA adapter.

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Connecting a QL to a VGA Monitor

2010-09-15 Thread Miguel Angel Rodriguez Jodar

El 15/09/2010 14:17, Peter escribió:


On the other way, I've managed to work it out using a RGB-to-VGA
converter, as used for connecting JAMMA boards to VGA monitors.


Did you have to use the QL in TV mode or did full 512x256 work?
Which QL did you use?


I've just rememebered I did another test using an old video-to-VGA 
converter. It uses the composite video output on the QL, so the video 
quality is not the best you can achieve. The monitor used was a PS/1 VGA 
one, and I did take a photo (phone camera) of the thing connected to a 
standard QL running in MODE 4. This is what I saw:

http://www.atc.us.es/~rodriguj/ql_composite_to_vga.jpg
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Connecting a QL to a VGA Monitor

2010-09-15 Thread Miguel Angel Rodriguez Jodar

El 15/09/2010 14:17, Peter escribió:


Miguel Angel Rodriguez Jodar wrote:


On the other way, I've managed to work it out using a RGB-to-VGA
converter, as used for connecting JAMMA boards to VGA monitors.


Did you have to use the QL in TV mode or did full 512x256 work?

Mmmm... I cannot remember... will try again this weekend, and will tell you.


Which QL did you use?

A standard QL, english keyboard, Minerva 1.98.
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] 512KB memory upgrade and thanks for the information about writting a directory device for the QL

2010-09-10 Thread Miguel Angel Rodriguez Jodar

El 10/09/2010 15:48, Urs Koenig (QL) escribió:

Well done! Congratulations!


Thanks! :)


BTW: What is the WINBOND Chip in one of the ROM sockets and the
small PCB in the other ROM socket? Is the WINBOND a PROM and
the small PCB a switch for two or more OS?


It's a simple way of having Minerva and Toolkit MKII in one chip. The Winbond 
chip is a 64Kx8 EEPROM, placed in one of the original ROM sockets. Some pins are 
bended out and wired to a small decoder built on the small PCB, that uses the 
original signals to generate proper enable signals to the EEPROM.


The jumper you see closed enables the Toolkit MKII. If you want to use the 
external ROM expansion, open that jumper and you will able to plug another 
expansion ROM.


This is a modification of a Minerva replacement PCB designed and built by Jose 
Leandro Novellon.

http://trastero.speccy.org/cosas/JL/ROM-EPROM_QL/ROM-EPROM-QL.html

His design needs low profile sockets, more pins, and does not offer the ability 
to use the remaining 16K memory offered by a 64K device. On the other hand, it's 
a plug'n'play option.


My option is a bit rough, with wires coming from one place to another, but the 
PCB is far easier to do, and there's no need for low profile sockets, as long as 
you don't mind soldering the 74LS00 directly to the PCB.


You can read a full description of this design here (spanish). You can even 
built it with a breadboard PCB, as you can see in the first post of the thread. 
A few posts later, you will find the updated design, as you have seen.

http://www.speccy.org/foro/viewtopic.php?f=15&t=2000
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Merge Sort

2010-09-05 Thread Miguel Angel Rodriguez Jodar

El 05/09/2010 18:31, Dilwyn Jones escribió:

(This is a Quanta helpline query!)

Does anyone have a handy little merge sort routine (in s*basic), to
merge two sorted lists (plain text word lists), maintaining the sorted
order in the output file.

That is, merge file A and file B (both already sorted) and output as
file C (also sorted, containing both files A and B merged).


It's a very common routine. This is not SuperBASIC, but it may help you:

Open file A input
Open file B input
Open file C output

Read line from A into L1
Read line from B into L2

Repeat
  If L1http://www.q-v-d.demon.co.uk/smsqe.htm


Re: [Ql-Users] Connecting a QL to a VGA Monitor

2010-09-04 Thread Miguel Angel Rodriguez Jodar

El 04/09/2010 9:51, Rich Mellor escribió:


Does anyone have any thoughts as to whether this would work - and could it be
used to connect to a more modern SVGA?



I'm afraid it won't work at all. It's a real pity modern SVGA's don't do 
multisync as in the good old days :(


On the other way, I've managed to work it out using a RGB-to-VGA converter, as 
used for connecting JAMMA boards to VGA monitors. I wrote a review (spanish, but 
with a lot of pictures, so even without translation you'll get an idea) about it 
here:

http://www.zonadepruebas.com/modules/smartsection/item.php?itemid=1225
___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


[Ql-Users] 512KB memory upgrade and thanks for the information about writting a directory device for the QL

2010-08-31 Thread Miguel Angel Rodriguez Jodar
Hi! This is to inform you that I've just finished a little DIY about internally 
upgrading the QL memory to the official maximum of 640KB.


The thread where I explain the details (spanish):
http://www.speccy.org/foro/viewtopic.php?f=15&t=2056

The quick and dirty Google translation into english (very dirty, but enough to 
"catch the essence")

http://translate.google.es/translate?u=http%3A%2F%2Fwww.speccy.org%2Fforo%2Fviewtopic.php%3Ff%3D15%26t%3D2056&sl=es&tl=en&hl=&ie=UTF-8

On the other hand, I've just received the book "QL Advanced user guide" as some 
of you told me. It's a very interesting reading! Thanks for all your information!

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm


[Ql-Users] Writting a directoy device driver

2010-08-17 Thread Miguel Angel Rodriguez Jodar
Hi! For a interface I'm developing, I need to write a directory device driver. 
The only piece of information I have found about this, is the QL Technical 
Guide, but I feel there are a lot of things to be considered when writting such 
programs. Are any source code example available to study? (or better yet, a QL 
version of the book "Linux Device Drivers" :D )  Thanks!

___
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm