flat assembler
Message board for the users of flat assembler.

Index > Projects and Ideas > ROM extension

Goto page 1, 2  Next
Author
Thread Post new topic Reply to topic
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
here is another my experiment Wink

it's not uefi, but works Wink


Description: on real hardware
Filesize: 32.18 KB
Viewed: 19711 Time(s)

hi_ext_rom.jpg


Description: code
Download
Filename: ext_rom.0.0.14.1.zip
Filesize: 2.58 KB
Downloaded: 663 Time(s)

Description: usefull tool
Download
Filename: bios_sum.0.0.24.2.zip
Filesize: 7.44 KB
Downloaded: 632 Time(s)


_________________
UNICODE forever!
Post 06 Sep 2008, 17:31
View user's profile Send private message Visit poster's website Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
This would replace your tool:
Code:
sum = 0
store byte 0 at $$+5
repeat $
  load a byte from $$ + % - 1
  sum = sum + a
end repeat
store byte (-sum) and $FF at $$+5    


Could you post some instructive about how to test this on our homes? Smile

[edit]Changed "store byte -sum and $FF at $$+5" to "store byte (-sum) and $FF at $$+5"


Last edited by LocoDelAssembly on 06 Sep 2008, 20:09; edited 1 time in total
Post 06 Sep 2008, 19:16
View user's profile Send private message Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
thanks, your calculation can be useful. i've been thinking about this, but supposed it can be executed too long for, say, 64kb.

i made a board of an old ISA netcard. i made it "universal" - to support ROM from 2716 to 27512 (but have test only with 2716 yet)

Image


Image

i think, it is possible to use any netcard with ROM socket, just you need to know what kind of ROM they support (i met 2764). also once i met multycard with ROM socket (a combined ISA card with IDE, Floppy, LPT etc.), but only once... if you wish to use an old motherboard as "embedded" system - rom on any vga card can be replaced with your

of course, you have to have appropriate EPROM and tool to burn program into it!

well... it's a wide field for hobby Wink

regards!

_________________
UNICODE forever!
Post 06 Sep 2008, 19:49
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 16882
Location: In your JS exploiting you and your system
revolution
Oh cool, the old ISA connector. I never thought I would be seeing one of those again.

BTW: Very neat work with the wiring, good job.
Post 06 Sep 2008, 19:53
View user's profile Send private message Visit poster's website Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
I've just tried with a 127.5 KB binary and the speed was below the measurable threshold (no time was given by FASMW). BTW, you'll have to change "store byte -sum and $FF at $$+5" to "store byte (-sum) and $FF at $$+5" because the former is interpreted as "store byte -(sum and $FF) at $$+5" (not sure if this behavior is backed by the documentation or not). I realised this because when I've tried the 127.5 KB ROM a "value out of range" error was triggered at that line.

I have a S3 Virge PCI with socketed Diamond ROM (if I remove it the card still works but a different ROM message is shown and the brand Diamond is not found anywhere), I suppose I can use it too? I'm not sure how to figure out the type of EEPROM I have to buy and I also have the problem that I don't have an EEPROM writer Sad

Thanks for posting the instructive, I have some of these cards and an old motherboard with an AMD 368 embedded so I can test on that too (after solving the problem commented above of course).

[edit2]Chanced time to type on second paragraph


Last edited by LocoDelAssembly on 06 Sep 2008, 20:27; edited 2 times in total
Post 06 Sep 2008, 20:03
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4224
Location: 2018
edfed
i like it.

then if i do it, i can lanch any code from a 27C512?
cool.

i have all the tools to do so, just maybe a lack of machine as the old ones gave up. Sad


have you got the shematics of your modified board please? just to try to do it industrially.


Last edited by edfed on 06 Sep 2008, 20:10; edited 1 time in total
Post 06 Sep 2008, 20:06
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
@Loko
where you tried? i still use P-24 100MHz at mine garage Razz (btw, this utility was exactly written at it Wink )

yes, this board was made not to write stupid messages before boot. it let to use an old motherboard as diskless system, possibly also video-less - just program and IO ports - own-made or standart LPT


Last edited by shoorick on 06 Sep 2008, 20:10; edited 1 time in total
Post 06 Sep 2008, 20:07
View user's profile Send private message Visit poster's website Reply with quote
revolution
When all else fails, read the source


Joined: 24 Aug 2004
Posts: 16882
Location: In your JS exploiting you and your system
revolution
LocoDelAssembly wrote:
(not sure if this behavior is backed by the documentation or not).
Binary "-" is stated as lower precedence than "and" but unary "-" is left without definition in fasm.pdf. So it looks like your test show us that unary "-" is also lower precedence than "and".
Post 06 Sep 2008, 20:08
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
Post 06 Sep 2008, 20:14
View user's profile Send private message Visit poster's website Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
My post was incomplete Razz I pressed Send instead of Preview, two paragraphs were added on the edition.

shoorick, an Athlon 64 2.0 GHz Embarassed But does it really take too much time even on hardware like 486SX 33 MHz?
Post 06 Sep 2008, 20:14
View user's profile Send private message Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4224
Location: 2018
edfed
Quote:
I'm not sure how to figure out the time of EEPROM I have to buy and I also have the problem that I don't have an EEPROM writer

you can buy it for tens of dollars only ( billions of $ZBW), or make it for less.

i can mail you a programmed UVPROM if you want.
Post 06 Sep 2008, 20:14
View user's profile Send private message Visit poster's website Reply with quote
LocoDelAssembly
Your code has a bug


Joined: 06 May 2005
Posts: 4633
Location: Argentina
LocoDelAssembly
Jesus! time?? I wanted to say "the type" not "the time" Razz

Actually if I remember right the ROM that came with the card already was an UVPROM because when I removed the tag there was a glass that I covered immediately. The card still works as a "Diamond Stealth" so the short and weak exposure to the UV rays wasn't enough to erase. I removed the tag around five years ago some I may in err (and the fact that there was a glass that allowed me to see inside the chip is enough to proof that the chip is an UVPROM?).

Thanks edfed, but the mail service is one of the services that I trust the less and there is no money return for the loss. A certificated latter is more likely that will reach my hands but are so expensive that I think that better I buy the equipment myself here.
Post 06 Sep 2008, 20:25
View user's profile Send private message Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
LocoDelAssembly wrote:
My post was incomplete Razz I pressed Send instead of Preview, two paragraphs were added on the edition.

shoorick, an Athlon 64 2.0 GHz Embarassed But does it really take too much time even on hardware like 486SX 33 MHz?


sure, it is not a matter how many seconds it will compile for real project Smile but i noticed, that bios_sum in first version, when it was read file byte-by-byte, time was noticable on P 100MHz, thus i made it 512 byte block-by-block reading. and it is win32 application, last time i have run win95 on 486dx40 was at 2002 Smile under dos it can be faster possible Wink winasm is loading 60 seconds on P100, but i'm waiting, as it will save me time while i'm working Very Happy


Description: my P100
Filesize: 16.91 KB
Viewed: 19634 Time(s)

p100.jpg



_________________
UNICODE forever!
Post 06 Sep 2008, 20:27
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
edfed wrote:
have you got the shematics of your modified board please? just to try to do it industrially.


here is schematic and mask for PROM used as selector. sure, it even can be simplified (replace 7404 element with spare element from 7400). A16-A19 selector selects "D" hex value, so, used range starts at 0D0000h. other range selected by PROM selector depending on selected EPROM type.


Description:
Filesize: 20.78 KB
Viewed: 19623 Time(s)

extrom_board.gif


Description:
Filesize: 26.48 KB
Viewed: 19625 Time(s)

extrom_mask.gif



_________________
UNICODE forever!
Post 06 Sep 2008, 23:04
View user's profile Send private message Visit poster's website Reply with quote
edfed



Joined: 20 Feb 2006
Posts: 4224
Location: 2018
edfed
ok!
thank you.
maybe a set of eproms can be selected using the selector.
hem, great!
Post 07 Sep 2008, 19:34
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
forgot to mention: OE is connected to ISA MEMR pin
Post 08 Sep 2008, 05:03
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
btw, if FLASH ROM will be used, it can be more convenient, as it is possible to provide in-system programming, and FLASH ROM persistent for much more cycles instead old UV EPROMs.
Post 09 Sep 2008, 04:53
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
minimizing soldering
here is examples of usage single obvious chip 74LS138 as ROM selector:

Image

it is applicable for 27512, 27256 and 27128 types, for roms of less size additional chip will be needed.

but in general, it is possible to use any of these schemes for rom chips of size below 32kb, just it is necesary to know, that image will be "duplicated" some times in selected range. to avoid many loads of same image it is possible to prevent it programmatically, say, like this:
Code:
    db 55h,0AAh
    db blocks
    mov ax,cs
    and ax,0FFFh
    jz  start
    retf    

-----------------------------------------
hope, nobody has build this yet Very Happy
swap A16 and A18 lines at diagram!
Post 09 Sep 2008, 14:09
View user's profile Send private message Visit poster's website Reply with quote
shoorick



Joined: 25 Feb 2005
Posts: 1605
Location: Ukraine
shoorick
i have made another card - more simple. you can see it here with high resolution images

regards!

_________________
UNICODE forever!


Last edited by shoorick on 30 Dec 2009, 07:19; edited 1 time in total
Post 11 Sep 2008, 06:46
View user's profile Send private message Visit poster's website Reply with quote
Madis731



Joined: 25 Sep 2003
Posts: 2145
Location: Estonia
Madis731
I'm just wondering if its easier to draw and scan an image or is it better to draw it in MS Paint Smile

But the project itself is worth noting and I sometimes love myself getting to the nuts and bolts of things.
Post 11 Sep 2008, 10:24
View user's profile Send private message Visit poster's website Yahoo Messenger MSN Messenger Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  
Goto page 1, 2  Next

< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2019, Tomasz Grysztar.

Powered by rwasa.