Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - wte

#51
Nigel is much too fast for me. I haven't had the chance to read all articles of the last issue.

Nevertheless, I was very surprised to read about Michael Kircher and his VIC20 Graphic Tool. I meet Michael years ago in Dortmund (at the Hobby & Electronic fair) and revived his (last?) 1581 disk with C128 software. He also has written a C128 40 column graphic extension [=> http://www.c128.net/download/toolbasic.htm ] and this disk was the last resource of the program. (There also has been an experimental but working virus at the disk. Scary! But the Graphic Tool is not infected!)

Regards WTE
#52
Quote from: airship on April 08, 2010, 05:20 AMI stayed just long enough to learn the most important phrase in German: Ein Bier! :)

You are a lonesome boy if you need the phrase "Ein Bier"  ;)
Next time in Germany you should try: "Freibier für alle". You will have a lot of friends immediately. And please, don't forget to give me a call  ;D ...

Regards from Germany
WTE
#53
Q:
Quote from: MIRKOSOFT on April 03, 2010, 04:23 AMwhich location is used for MC-mode on C128?

A:
The C128 uses RAM $D800-$DBE7 (Color-RAM)!
This RAM area is available twice ;)

Regards WTE
#54
128 programmers / Re: VIC register mystery
March 27, 2010, 09:52 AM
...you obviously haven't turned off the C128's own screen handlingroutine
correct!

the C128 will store to $d018 every raster interrupt. When youswitch graphics modes in line 3, the C128 probably sets up a new value(i.e. 121) to be written to $d018 every raster interrupt.
so far so good (that's what I understand after my experiment)

But where does this 121 come from? I couldn't find the related code in the "screen handler". And why crashed the C128 after "poking" 121 to the mirror register of $d018 (and - I forgot to say - pressing RETURN several times)?

Regards WTE
#55
128 programmers / VIC register mystery
March 23, 2010, 08:40 AM
During the developement of a new game [Original Link (DE): http://blog.c128.net/archives/442 ; (bad) translation (EN): http://translate.google.de/translate?u=http%3A%2F%2Fblog.c128.net%2Farchives%2F442&sl=de&tl=en&hl=&ie=UTF-8 ] I found a mystery as I tried to activate my own 40 column charset with hires graphic on. The result of manipulating the VIC directly (read $d018, select bits, write $d018) was a total desaster. The C128 crashed (the VICE emulator didn't do that). Manipulation of the "zeropage" mirror register of the VIC however works fine.

The following code shows the problem:
1 printpeek(dec("d018"))
2 printpeek(dec("d018"))
3 graphic1,0
4 printpeek(dec("d018"))
5 printpeek(dec("d018"))
6 printpeek(dec("d018"))
7 graphic0

run
21
21
21
121
121

ready.


My question, why crashed* the (original) C128?
And what the f*** is the origin of the "121"?

Regards
WTE

* the crash takes place after reading the ("wrong" value) 121, manipulation of some bits and storing a ("wrong") 121 (instead of 25) to $d018 and the mirror byte!
#56
I think he has cheated.
#57
Do you have any scources of the HD DOS? It would be fine to implement some code to softswitch the SCSI-ID with an utility command ...

regards WTE
#58
Herdware / Re: CMD HD drive replacement
March 01, 2010, 09:04 AM
HD DOS ist not on a chip. It's pure soft.

As far as I know the older HD ROMs will only see 2 GIG but works with bigger drives (but I didn't test this).

To use big native partitions with an older HD ROM you have to take the maximumsize-1 as limit (there is a bug in the older ROM soft that gives some problems if the full size is used).

There are ROM images available in the internet. Maybe someone can burn it for you (I can't)

Regards WTE
#59
Herdware / Re: CMD HD drive replacement
February 28, 2010, 06:18 AM
The connector is ok, but for a used (old) drive it is much to expensive.

Don't forget that you need the newes HD-ROM v. 2.80 if you want to use max size native partitions and a 4 Gig HD.

I'm working on an other solution (ok, much more expensive ;)). I've bought a SCSI/IDE adapter (not really cheap) and an IDE/SD adapter (a little bit cheaper than the other adapter). Now I only have to cut a little slit on the back of the unit. Hopefully I'll get next week my HD-ROM v 2.80 and than all data will be stored on SD cards. Backup images can be made on a PC. No risk of total data loss. Wonderful!

Regards WTE
#60
Clock-Calendar 128 / Re: CLOCK-CALENDAR 128 SUPPORT
February 27, 2010, 09:28 AM
Quote from: airship on February 26, 2010, 07:41 AMI am now on disability (as of Jan 4th of this year) and with new medication and lots of rest I am feeling much better. Unfortunately, I've suffered a series of small strokes. I now walk with a cane and my hands shake a bit.
That are really bad news. I hope you will regain your health.

Regards WTE
#61
Brilliant!

first iny than sta

That makes the code 2 bytes shorter (in relation to my solution). Not easier to understand but really smart!

Brilliant!

Regards WTE
#62
Quote from: Hydrophilic on February 22, 2010, 03:09 PM
Of course I guess it is possible one of the other codes I wrote was Off By 1.  That has never happened before... ever... I promise  ::)   Just let me know which one.

As I wrote: "I made some test with the last code ..."
First two lines ==>
;copy RAM from Bank 1 to Bank 0
;this works in VICE, but does NOT work on a real C128


The original program was ok, I know.

Regards WTE

Could be a good subject of a magazin article or a c128 codebase.
#63
Brainwork done. The stack has to be initialized with $ff that's all.

I also added some code to solve the common area problem and made it "flexible" [start the routine with sys (adr),a,x,y]. The following code should work in bank 0 (!) also on a real C128 (but I didn't check it so far [works fine in VICE]).

; --- copy data from bank 1 to bank 0
; syntax: bank15:sys copy,a,x,y
;         a: target high
;         x: source high
;         y: # of pages
;
copy:
sei
sta $fd     ;target high
stx $fa     ;save source high
sty $fe     ;# of pages
;
lda $ff00   ;save pcr
pha
lda #$3e    ;ram 0 + i/o
sta $ff00
lda $d506   ;ram config. register
pha         ;save rcr (common area)
and #$f3    ;common area off
sta $d506
;
lda #$00
sta $fc     ;target low
tsx
stx $ff     ;save org stack pointer
tay         ;zero
tax
dex
txs         ;$ff
inx
inx         ;$01
stx $d50a   ;set stack bank 1
ldx $d509   ;save page pointer
lda $fa     ;source high
sta $d509
;
;page and byte loop
;
copyloop:
pla         ;read bank 1
sta ($fc),y ;write bank 0
iny
bne copyloop;next byte
;
inc $d509   ;next page (bank 1)
inc $fd     ;next page (bank 0)
dec $fe     ;count #pages
bne copyloop;next page
;
sty $d50a   ;zero stack bank
stx $d509   ;restore page pointer
ldx $ff     ;get stack pointer
txs
pla
sta $d506   ;restore rcr
pla
sta $ff00   ;restore pcr
cli
rts


Regards WTE
#64
I made some test with the last code (in VICE) and got:

source (bank 1)
byte1 byte2 byte3 ... byte256

target (bank 0)
byte2 byte3 ... byte256 byte1

Hmmm, needs some brainwork ....

Regads WTE
#65
Thank you very much Hydrophilic!

That is what I need. I'm sure I've seen something like this in the "intertubes" ;) long time ago. Unfortunately the code has to run in bank 1. But it should also work in the common area (*g*) so I have to copy the code to $0200 (there should be enough space).

Quote from: Hydrophilic on February 18, 2010, 07:14 PM
When transfering from bank 0 to bank 1 (opposite of what wte requested), there is a potential problem ...
I think in this case you use PLA instead of PHA and STA,Y instead of LDA,Y. Than it should work too.

Reagrds WTE
#66
128 programmers / copy from bank1 to bank0 via stack
February 18, 2010, 10:04 AM
Maybe someone remembers ...

It is possible to use the "relacation of the stack"-trick to copy data from bank1 to bank0. This is much quicker than bank switching (of course). I know that I've read an article or forum message about this but can't find it anymore.

Any idea how to find this information in the world wide swamp?

Regards WTE
#67
Herdware / Re: Graphics Booster 128
December 30, 2009, 06:43 AM
Quote from: RobertB on December 26, 2009, 05:33 PM
Quote from: wte on December 26, 2009, 10:06 AM
There IS a EPROM available! (I don't have it) This EPROM supports higher resolution for standard functions and features a BASIC editor with 50 lines etc.
Can you tell us where the EPROM is found available?
I've never seen one in real live. And I could never get a rom dump :(

Regards WTE
#68
Herdware / Re: Graphics Booster 128
December 26, 2009, 10:06 AM
Ha, ha, nice discussion.

First of all: There is no need for any other hardware on a C128DCR!
The GB hardware is only a 64KB extension for the VDC (only needed for the flat C128).
What you really need is the (SCPU patched) software available on my homepage ;)
And I strongly recommend a 1901 Monitor a 1084 is a "weak replacement".
There IS a EPROM available! (I don't have it) This EPROM supports higher resolution for standard functions and features a BASIC editor with 50 lines etc. You don't need it for HiRes-Graphics.

You have 16 colors! 16 foreground and 16 background colours! There is no magic!
You can "mix" colors if you use 2 pixel lines => 16*16 = 256. That's it.
[There are some demo programms on my homepage to show this effect.]
To get 256 of 3000 colours the authors used their fantasy: There is a "shade" command / function. This function shifts the whole colour-space by adjusting (mis-adjusting) the position of the first visible dot (I forgot the related VDC register number). This does not work on each monitor and is monitor specific. Therefore it is worthless.

Regards WTE
#69
I have a question about the so-called Fast Print or Killer Poke for early PET / CBM Computers.

Info: http://6502.org/users/andre/petindex/poke.html

POKE 59458,PEEK(59458)OR 32

This poke speeds up early PETs (old boards) but is a problem for machines with a CRTC (newer boards).

As I want to write a little multi platform BASIC programm I need a peek to distinguish between old and new boards. So that I'm able to poke or not to poke. I've read that there had been a solution for this problem long time ago in an US computer magazine. Is there anyone who can remember this?

Regards WTE
#70
Commodore Trivia Competitions / Re: A new one..
March 11, 2009, 08:29 AM
Quote from: airship on November 18, 2008, 05:48 AM
This is from the Commodore Languages List. Only two compilers for the C64 specifically mention 'integer', though it could be an option for others. Unfortunately, there are no integer compilers listed that support the C128.
BASIC 128 (Data Becker or Abacus in US) has the option to handle all variables as integer. This improves the speed a lot. Also you can define (with special compiler codes) "normal" FP variables as intergers. That speeds up loops like FOR I = 1 TO 10...

Regards WTE
#71
Gaming / Re: Fun Pack 128
October 19, 2008, 09:10 AM
Great, this is really new for me!  :D

The 40 column games doesn't work on Vice 2.0 (don't know why they always crash) but the 80 column games are working fine.
Especially Death Quadrant is a really nice game (after you understand how to control the star ship).
I'll try it on a real machine too ...

Regards WTE
#72
General chat / Re: There is no life after twins!!!
October 07, 2008, 08:16 AM
That's life.

WTE
#73
General chat / Re: There is no life after twins!!!
October 06, 2008, 09:40 AM
Quote from: Mark Smith on July 01, 2008, 10:32 AM
Anyone want to buy one ?  Or swap for a SuperCPU128 ? ;-)

Be careful with statements like this. In Germany they nearly locked up someone who tried to "sell" his kid on ebay. It was obviously a joke but the authority is humorless!

My kids are 1 and 3 and I won't swap them for whatever but spare time? what the f..  is spare time?

WTE

[Yes, I'm alive but don't have time to enter this forum regularly]
#74
Herdware / Re: Commodore 128D Luma output
March 09, 2008, 07:21 AM
I'm not shure (you should show us a picture of the screen) but I think:
Unfortunately you did it well...  (There is no need for a capacitor in the cable.)
The VIC III isn't really perfect and you will see vertical lines on the screen (brightness differs) all 8 pixels.
Play with brightness, colour and contrast to optimize the screen output.

Regards WTE
#75
I don't have ONE (I have two) ;)

Regards WTE