• Please review our updated Terms and Rules here

Cromemco dazzler replica project

Little update on the Dazzler, as presumed, the hardware is capable for tweaking (to some extent). Here are two examples:

1. Hight resolution color mode

1718102451884.png

You have to look closely, I am sorry that the evironment is currently too bright to give a better impression. What we see here are all available colors in the 4x4 hires mode. Simply achieved by switching the foreground color on the fly on every new pixel line (using the flags delivered by the 0EH input port).

2. 225 colors mode


Again, not easy to show. The Dazzler here uses a color image for the even pixel lines in color mode, and switches to a greyscale image in greyscale mode for the odd pixel lines. Again utilizing the flags from the 0EH input port. The effect is some kind of eye-averaging across the two interlaced images changing with 31 Hz frequency, which can give the illusion of up to 15 colors with 15 shades (=225 max). To be honest, there are probably less colors, since color intensity in the color mode and intensity in greyscale mode overlap. Unfortunately impossible to record, also my mobile phone unfortunately is not capable exposing photographs across two interlaced frames, but the short video gives an idea how it looks like.

Creating the correct two separations from a single photograph, however, is a challenge. Mainly because we have two intensities in the color mode. It is probably easier to use the bright colors only, but we will loose contrast.

Small correction: The two images are changed with every field, so the change frequency should be 62 Hz, not 31 Hz.
 
Last edited:
Start here: https://www.jedec.org/

Some enterprising companies have obtained (and published on the web) some of the reports. But I could not comment on that...

Dave

Well, you could comment on it, but I suspect that as in the old James Bond movies; "If I tell you I'd have to kill you"

But to cross the Atlantic and throw in some American humor, from the TV series Monk, he said: "If you want to kill me that is ok, I just need to know"

It is almost impossible to believe that anything related to a 74 series TTL IC's could be top secret, but I have seen stranger things happen.

Back in about 1974 when I was a teenager, I knew a girl who had joined the Army. She was doing an electronics course. One night she phoned me up and asked if I could help her. She had an exam the following day and was worried about it because she was struggling with some of the material. I said ok, I'd try to help. But she said, its all top secret. I said ok no worries I won't say anything, just try to help.

I was pretty intrigued by the whole thing. Anyway when I got to look at the coursework I was stunned, it was about vacuum tube problems that were at least 30 years old. Luckily I had an interest in these because I had been making tube stereo amplifiers and tube guitar amps, so I knew all about it and helped with the questions, but it made me wonder about things that were "Top Secret"

Many years later I was reading a story about the 1st Gulf War. There was some sort of ammunition factory in Iraq that the Americans wanted to bomb. They had the "secret" GPS coordinates in their classified intel files. They bombed it, but it was the wrong address. They accidentally bombed the Chinese emabassy on the opposite side of the road. But, the ironic thing was, that the address that they wanted to bomb was listed in the local telephone directory.

These sorts of lessons taught me that when things get too "secret", only chaos comes of it.
 
Last edited:
I used to watch Monk over in the UK!

Dave
I guessed you would be a Monk fan.

One of my daughters really liked Monk.

One day after going into a room she came out and said: There is a problem with the light in the room.

I said, what do you mean ? She went on to explain that the lamp fitting in the ceiling had been placed off center and it just didn't look right. (the kind of thing that would have driven Monk crazy)

So I checked it with a ruler and it was about 5 inches off center. I had never noticed it.

As Monk pointed out; " If you paid attention you'd be worried too"
 
Last edited:
Hi,

Has anybody here modified an old XBox game controller to work as a Cromemco DAZZLER JoyStick?

.
 
Hi,

Has anybody here modified an old XBox game controller to work as a Cromemco DAZZLER JoyStick?

.
In case you missed it, there is an entire recent discussion here on the topic of building a replica of the Cromemco DAZZLER joystick:

The XBox game controller design is in no way compatible with the design of the Cromemco DAZZLER joystick. The only component you might be able to use is the joystick assembly itself (ie the gimbal and potentiometers) along with the circuit board described in the above discussion to build a Cromemco joystick replica.
 
Hi,

Okay, so some people have DAZZLER boards ... I have a DAZZLER II board in my Altair 8800c computer and want more interesting and maybe even useful things to do with it, such as:

An Etch-A-Sketch program that uses the keyboard "J = Step Left", "I = Step UP", "K = Step Down", and "L = Step Right" keys, then press the "SPACEBAR", enter a color number and hit <ENTER> to place a color DOT in that position. The program could also use a JoyStick, but that may not work as well as the keyboard entries.

Another program idea is a 3D Escape from the Zombies game ... Black & White for the higher resolution. The idea is again using the navigation keys the FPS user steps on each keystroke, IF a Zombie pops into view the user uses the "SPACEBAR" to stun the Zombie so they can try and run past or go down a different hallway. One hallway will be labeled "EXIT" which will exit the game, all others will just transport the user to a new part of the maze.

1723395798343.png



I have some other fun and I think useful program ideas that makes using the DAZZLERs more fun than just running KSCOPE.

Something that might make the games even more fun is if a 2nd user could dial-IN by modem. I have a PMMI modem in each of my two computers, but I also have a few other RS-232 modems. It would be fun to have some simple games for dial-up users to compete.

I am not a programmer, but now I am trying to learn: https://forum.vcfed.org/index.php?t...anguage-listings-for-simple-programs.1249310/

I would love to work with somebody for testing and program development while I learn the more basic assembly programming myself.


.
 
I have been asked for the source code for my DTEST program.

Here it is, along with a HEX dump of the executable and a corresponding listing file.

Here are the instructions from post #512:

On startup a message will be displayed.

I am going to use the 'H' key to set port 0Eh to 0FFh and the 'L' key to set port 0Eh to 80h. This is called for at various points in the troubleshooting procedure. A message will be output to state when this has been done as feedback.

The other keys (the numeric keys '0' to '7') will toggle the associated data bit in port 0Fh. The current bit pattern will be displayed to the user.

The test program will be loaded at address 1000h so it is well away from the Dazzler screen memory starting at address 0000h.

The test program will have its own stack and will take over the machine. This means the memory from 80h to FFh is free for our use rather than fighting RDOS.

Enjoy.

Dave
 

Attachments

I am having fun commenting my disassembled Dazzler graphics library.

There is some quite good character generator data compression going on internally...

Dave
 
I am having fun commenting my disassembled Dazzler graphics library.

There is some quite good character generator data compression going on internally...

Dave
Oh how far have you made it? Have you started building your boards yet? How can you stand it, not having something to test your code on?
 
@nullvalue I for my side am working mostly with an emulator in combination with cross compilers for development, although my replica is nicely working. In most cases it is more convenient during the development process since you can quickly apply changes and have more options for debugging. However, there are limitations, which often require verification with the real hardware:
  • the emulator in general has slightly different timings, especially with the emulation of the CRT
  • the visual impression of a real CRT is different (scanlines, interlacing, colors etc.)
  • emulations are in general incomplete in terms of functionality and/or restricted on certain types of boards
Concerning the last aspect, for instance there is no emulation for the D+7A audio function yet. At least I didn't find one. So I am working right now on an audio extension for the z80pack emulator.
 
>>> Oh how far have you made it? Have you started building your boards yet? How can you stand it, not having something to test your code on?

I have started to build my boards - but it is a slow process. I have bought all of the IC sockets and got those installed.

Then... work hit...

I can work on my laptop in the hotel. I can't really take my boards and a soldering iron with me... Well, I could, but...

Besides which, I can use your system... remotely :)!

Dave
 
I have been commenting the PAUSE subroutine this morning.

The code does not look correct to me...

It seems to implement an internal 'variable' delay; not a 'fixed' delay of N * 0.1 seconds (where N is the value of the accumulator 'A' when called).

It seems to check the mode of the dazzler when called, to see whether the dazzler is ON or OFF - and then does something weird...

I will check the hex dump of the library when I get home to see if my disassembly is correct.

I can see how it 'should' work... I assume the delay should be bypassed if the dazzler is OFF, and implement the delay if it is ON. That is my guess at any rate.

I can fix it...

Dave
 
Here is what I have disassembled so far of the Cromemco Dazzler Graphics Library.

I still have a lot of comments to add (some of which I have scribbled in my notebook).

Enjoy.

Dave
 

Attachments

Here is what I have disassembled so far of the Cromemco Dazzler Graphics Library.

I still have a lot of comments to add (some of which I have scribbled in my notebook).

Enjoy.

Dave
Great work, well done!

Actually, I have re-written many of the graphics routines on my own for the Dazzler, because I didn't have the library. Obviously I could have saved time :). I did it all with Intel assembler, for the sake of compatibility (because not everyone owns a Z80 based system with 4MHz+). I didn't yet implement the (complex) text functions and the area fill. Nice to check how Cromemco did it.

The PAUSE algorithm is actually using the vertical sync as a time base. The wait loop with the B register as counter is probably there to let the CPU wait until another Dazzler port access makes sense. Otherwise, the CPU would poll continuously on the Dazzler port, which then would block any other port access which might be performed by another bus master. It should work with any system clock, though.

Correction: the time base seems to be the memory DMA cycle (=odd/even line flag change), not the vertical sync, which gives a better resolution.
 
Last edited:
P.S. got my first D+7A stereo sound in the emulator. I guess the most difficult work ist done (bridging the stereo samples from the D+7A ports to the audio subsystem in real time). It uses the PortAudio library, which is available on most platforms. The Z80pack emulator, however, is restricted to POSIX environments, which also includes Cygwin. So with a proper configuration, it also works on Windows.
 
Back
Top